@webex/plugin-meetings 3.0.0-beta.34 → 3.0.0-beta.340

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 (392) hide show
  1. package/README.md +46 -8
  2. package/dist/annotation/annotation.types.js +7 -0
  3. package/dist/annotation/annotation.types.js.map +1 -0
  4. package/dist/annotation/constants.js +49 -0
  5. package/dist/annotation/constants.js.map +1 -0
  6. package/dist/annotation/index.js +342 -0
  7. package/dist/annotation/index.js.map +1 -0
  8. package/dist/breakouts/breakout.js +94 -15
  9. package/dist/breakouts/breakout.js.map +1 -1
  10. package/dist/breakouts/edit-lock-error.js +52 -0
  11. package/dist/breakouts/edit-lock-error.js.map +1 -0
  12. package/dist/breakouts/events.js +45 -0
  13. package/dist/breakouts/events.js.map +1 -0
  14. package/dist/breakouts/index.js +709 -35
  15. package/dist/breakouts/index.js.map +1 -1
  16. package/dist/breakouts/utils.js +45 -1
  17. package/dist/breakouts/utils.js.map +1 -1
  18. package/dist/common/errors/no-meeting-info.js +51 -0
  19. package/dist/common/errors/no-meeting-info.js.map +1 -0
  20. package/dist/common/errors/reclaim-host-role-errors.js +158 -0
  21. package/dist/common/errors/reclaim-host-role-errors.js.map +1 -0
  22. package/dist/common/errors/webex-errors.js +48 -7
  23. package/dist/common/errors/webex-errors.js.map +1 -1
  24. package/dist/common/logs/logger-proxy.js +1 -1
  25. package/dist/common/logs/logger-proxy.js.map +1 -1
  26. package/dist/common/logs/request.js +5 -1
  27. package/dist/common/logs/request.js.map +1 -1
  28. package/dist/common/queue.js +24 -9
  29. package/dist/common/queue.js.map +1 -1
  30. package/dist/config.js +5 -10
  31. package/dist/config.js.map +1 -1
  32. package/dist/constants.js +233 -29
  33. package/dist/constants.js.map +1 -1
  34. package/dist/controls-options-manager/enums.js +14 -2
  35. package/dist/controls-options-manager/enums.js.map +1 -1
  36. package/dist/controls-options-manager/index.js +109 -15
  37. package/dist/controls-options-manager/index.js.map +1 -1
  38. package/dist/controls-options-manager/types.js +7 -0
  39. package/dist/controls-options-manager/types.js.map +1 -0
  40. package/dist/controls-options-manager/util.js +309 -18
  41. package/dist/controls-options-manager/util.js.map +1 -1
  42. package/dist/index.js +112 -1
  43. package/dist/index.js.map +1 -1
  44. package/dist/interpretation/collection.js +23 -0
  45. package/dist/interpretation/collection.js.map +1 -0
  46. package/dist/interpretation/index.js +366 -0
  47. package/dist/interpretation/index.js.map +1 -0
  48. package/dist/interpretation/siLanguage.js +25 -0
  49. package/dist/interpretation/siLanguage.js.map +1 -0
  50. package/dist/locus-info/controlsUtils.js +91 -2
  51. package/dist/locus-info/controlsUtils.js.map +1 -1
  52. package/dist/locus-info/index.js +383 -62
  53. package/dist/locus-info/index.js.map +1 -1
  54. package/dist/locus-info/infoUtils.js +7 -1
  55. package/dist/locus-info/infoUtils.js.map +1 -1
  56. package/dist/locus-info/mediaSharesUtils.js +57 -1
  57. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  58. package/dist/locus-info/parser.js +249 -72
  59. package/dist/locus-info/parser.js.map +1 -1
  60. package/dist/locus-info/selfUtils.js +89 -14
  61. package/dist/locus-info/selfUtils.js.map +1 -1
  62. package/dist/media/index.js +62 -116
  63. package/dist/media/index.js.map +1 -1
  64. package/dist/media/properties.js +73 -124
  65. package/dist/media/properties.js.map +1 -1
  66. package/dist/mediaQualityMetrics/config.js +1 -204
  67. package/dist/mediaQualityMetrics/config.js.map +1 -1
  68. package/dist/meeting/in-meeting-actions.js +86 -2
  69. package/dist/meeting/in-meeting-actions.js.map +1 -1
  70. package/dist/meeting/index.js +3927 -2960
  71. package/dist/meeting/index.js.map +1 -1
  72. package/dist/meeting/locusMediaRequest.js +292 -0
  73. package/dist/meeting/locusMediaRequest.js.map +1 -0
  74. package/dist/meeting/muteState.js +224 -131
  75. package/dist/meeting/muteState.js.map +1 -1
  76. package/dist/meeting/request.js +260 -196
  77. package/dist/meeting/request.js.map +1 -1
  78. package/dist/meeting/util.js +601 -417
  79. package/dist/meeting/util.js.map +1 -1
  80. package/dist/meeting-info/index.js +73 -7
  81. package/dist/meeting-info/index.js.map +1 -1
  82. package/dist/meeting-info/meeting-info-v2.js +192 -51
  83. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  84. package/dist/meeting-info/util.js +1 -1
  85. package/dist/meeting-info/util.js.map +1 -1
  86. package/dist/meeting-info/utilv2.js +36 -36
  87. package/dist/meeting-info/utilv2.js.map +1 -1
  88. package/dist/meetings/collection.js +39 -0
  89. package/dist/meetings/collection.js.map +1 -1
  90. package/dist/meetings/index.js +424 -116
  91. package/dist/meetings/index.js.map +1 -1
  92. package/dist/meetings/meetings.types.js +7 -0
  93. package/dist/meetings/meetings.types.js.map +1 -0
  94. package/dist/meetings/request.js +2 -0
  95. package/dist/meetings/request.js.map +1 -1
  96. package/dist/meetings/util.js +72 -6
  97. package/dist/meetings/util.js.map +1 -1
  98. package/dist/member/index.js +58 -0
  99. package/dist/member/index.js.map +1 -1
  100. package/dist/member/types.js +25 -0
  101. package/dist/member/types.js.map +1 -0
  102. package/dist/member/util.js +132 -25
  103. package/dist/member/util.js.map +1 -1
  104. package/dist/members/collection.js +10 -0
  105. package/dist/members/collection.js.map +1 -1
  106. package/dist/members/index.js +102 -6
  107. package/dist/members/index.js.map +1 -1
  108. package/dist/members/request.js +106 -38
  109. package/dist/members/request.js.map +1 -1
  110. package/dist/members/types.js +15 -0
  111. package/dist/members/types.js.map +1 -0
  112. package/dist/members/util.js +326 -232
  113. package/dist/members/util.js.map +1 -1
  114. package/dist/metrics/constants.js +16 -5
  115. package/dist/metrics/constants.js.map +1 -1
  116. package/dist/metrics/index.js +1 -446
  117. package/dist/metrics/index.js.map +1 -1
  118. package/dist/multistream/mediaRequestManager.js +228 -58
  119. package/dist/multistream/mediaRequestManager.js.map +1 -1
  120. package/dist/multistream/receiveSlot.js +29 -16
  121. package/dist/multistream/receiveSlot.js.map +1 -1
  122. package/dist/multistream/receiveSlotManager.js +39 -36
  123. package/dist/multistream/receiveSlotManager.js.map +1 -1
  124. package/dist/multistream/remoteMedia.js +44 -18
  125. package/dist/multistream/remoteMedia.js.map +1 -1
  126. package/dist/multistream/remoteMediaGroup.js +60 -3
  127. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  128. package/dist/multistream/remoteMediaManager.js +209 -59
  129. package/dist/multistream/remoteMediaManager.js.map +1 -1
  130. package/dist/multistream/sendSlotManager.js +233 -0
  131. package/dist/multistream/sendSlotManager.js.map +1 -0
  132. package/dist/reachability/clusterReachability.js +356 -0
  133. package/dist/reachability/clusterReachability.js.map +1 -0
  134. package/dist/reachability/index.js +273 -391
  135. package/dist/reachability/index.js.map +1 -1
  136. package/dist/reachability/request.js +17 -8
  137. package/dist/reachability/request.js.map +1 -1
  138. package/dist/reachability/util.js +29 -0
  139. package/dist/reachability/util.js.map +1 -0
  140. package/dist/reconnection-manager/index.js +214 -170
  141. package/dist/reconnection-manager/index.js.map +1 -1
  142. package/dist/recording-controller/index.js +21 -2
  143. package/dist/recording-controller/index.js.map +1 -1
  144. package/dist/recording-controller/util.js +9 -8
  145. package/dist/recording-controller/util.js.map +1 -1
  146. package/dist/roap/index.js +62 -35
  147. package/dist/roap/index.js.map +1 -1
  148. package/dist/roap/request.js +112 -97
  149. package/dist/roap/request.js.map +1 -1
  150. package/dist/roap/turnDiscovery.js +95 -38
  151. package/dist/roap/turnDiscovery.js.map +1 -1
  152. package/dist/rtcMetrics/constants.js +12 -0
  153. package/dist/rtcMetrics/constants.js.map +1 -0
  154. package/dist/rtcMetrics/index.js +142 -0
  155. package/dist/rtcMetrics/index.js.map +1 -0
  156. package/dist/statsAnalyzer/index.js +181 -214
  157. package/dist/statsAnalyzer/index.js.map +1 -1
  158. package/dist/statsAnalyzer/mqaUtil.js +22 -18
  159. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  160. package/dist/types/annotation/annotation.types.d.ts +42 -0
  161. package/dist/types/annotation/constants.d.ts +31 -0
  162. package/dist/types/annotation/index.d.ts +117 -0
  163. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  164. package/dist/types/breakouts/events.d.ts +8 -0
  165. package/dist/types/breakouts/utils.d.ts +14 -0
  166. package/dist/types/common/errors/no-meeting-info.d.ts +14 -0
  167. package/dist/types/common/errors/reclaim-host-role-errors.d.ts +60 -0
  168. package/dist/types/common/errors/webex-errors.d.ts +25 -1
  169. package/dist/types/common/logs/request.d.ts +2 -0
  170. package/dist/types/common/queue.d.ts +9 -7
  171. package/dist/types/config.d.ts +2 -7
  172. package/dist/types/constants.d.ts +201 -30
  173. package/dist/types/controls-options-manager/enums.d.ts +11 -1
  174. package/dist/types/controls-options-manager/index.d.ts +17 -1
  175. package/dist/types/controls-options-manager/types.d.ts +43 -0
  176. package/dist/types/controls-options-manager/util.d.ts +1 -7
  177. package/dist/types/index.d.ts +6 -4
  178. package/dist/types/interpretation/collection.d.ts +5 -0
  179. package/dist/types/interpretation/index.d.ts +5 -0
  180. package/dist/types/interpretation/siLanguage.d.ts +5 -0
  181. package/dist/types/locus-info/index.d.ts +57 -4
  182. package/dist/types/locus-info/parser.d.ts +66 -6
  183. package/dist/types/media/index.d.ts +2 -0
  184. package/dist/types/media/properties.d.ts +34 -48
  185. package/dist/types/mediaQualityMetrics/config.d.ts +0 -128
  186. package/dist/types/meeting/in-meeting-actions.d.ts +86 -2
  187. package/dist/types/meeting/index.d.ts +506 -512
  188. package/dist/types/meeting/locusMediaRequest.d.ts +74 -0
  189. package/dist/types/meeting/muteState.d.ts +93 -25
  190. package/dist/types/meeting/request.d.ts +72 -43
  191. package/dist/types/meeting/util.d.ts +101 -1
  192. package/dist/types/meeting-info/index.d.ts +13 -1
  193. package/dist/types/meeting-info/meeting-info-v2.d.ts +31 -1
  194. package/dist/types/meetings/collection.d.ts +17 -0
  195. package/dist/types/meetings/index.d.ts +91 -21
  196. package/dist/types/meetings/meetings.types.d.ts +4 -0
  197. package/dist/types/member/index.d.ts +14 -0
  198. package/dist/types/member/types.d.ts +32 -0
  199. package/dist/types/members/collection.d.ts +5 -0
  200. package/dist/types/members/index.d.ts +35 -2
  201. package/dist/types/members/request.d.ts +73 -9
  202. package/dist/types/members/types.d.ts +25 -0
  203. package/dist/types/members/util.d.ts +214 -1
  204. package/dist/types/metrics/constants.d.ts +15 -4
  205. package/dist/types/metrics/index.d.ts +4 -111
  206. package/dist/types/multistream/mediaRequestManager.d.ts +72 -5
  207. package/dist/types/multistream/receiveSlot.d.ts +13 -11
  208. package/dist/types/multistream/receiveSlotManager.d.ts +14 -4
  209. package/dist/types/multistream/remoteMedia.d.ts +8 -29
  210. package/dist/types/multistream/remoteMediaGroup.d.ts +0 -9
  211. package/dist/types/multistream/remoteMediaManager.d.ts +46 -2
  212. package/dist/types/multistream/sendSlotManager.d.ts +61 -0
  213. package/dist/types/reachability/clusterReachability.d.ts +109 -0
  214. package/dist/types/reachability/index.d.ts +60 -95
  215. package/dist/types/reachability/request.d.ts +7 -3
  216. package/dist/types/reachability/util.d.ts +8 -0
  217. package/dist/types/reconnection-manager/index.d.ts +19 -0
  218. package/dist/types/recording-controller/index.d.ts +15 -1
  219. package/dist/types/recording-controller/util.d.ts +5 -4
  220. package/dist/types/roap/index.d.ts +2 -1
  221. package/dist/types/roap/request.d.ts +15 -11
  222. package/dist/types/roap/turnDiscovery.d.ts +21 -3
  223. package/dist/types/rtcMetrics/constants.d.ts +4 -0
  224. package/dist/types/rtcMetrics/index.d.ts +54 -0
  225. package/dist/types/statsAnalyzer/index.d.ts +29 -11
  226. package/dist/types/webinar/collection.d.ts +16 -0
  227. package/dist/types/webinar/index.d.ts +5 -0
  228. package/dist/webinar/collection.js +44 -0
  229. package/dist/webinar/collection.js.map +1 -0
  230. package/dist/webinar/index.js +69 -0
  231. package/dist/webinar/index.js.map +1 -0
  232. package/package.json +22 -19
  233. package/src/annotation/annotation.types.ts +50 -0
  234. package/src/annotation/constants.ts +36 -0
  235. package/src/annotation/index.ts +328 -0
  236. package/src/breakouts/README.md +42 -12
  237. package/src/breakouts/breakout.ts +67 -9
  238. package/src/breakouts/edit-lock-error.ts +25 -0
  239. package/src/breakouts/events.ts +56 -0
  240. package/src/breakouts/index.ts +592 -20
  241. package/src/breakouts/utils.ts +42 -0
  242. package/src/common/errors/no-meeting-info.ts +24 -0
  243. package/src/common/errors/reclaim-host-role-errors.ts +134 -0
  244. package/src/common/errors/webex-errors.ts +44 -2
  245. package/src/common/logs/logger-proxy.ts +1 -1
  246. package/src/common/logs/request.ts +5 -1
  247. package/src/common/queue.ts +22 -8
  248. package/src/config.ts +4 -9
  249. package/src/constants.ts +224 -20
  250. package/src/controls-options-manager/enums.ts +12 -0
  251. package/src/controls-options-manager/index.ts +116 -21
  252. package/src/controls-options-manager/types.ts +59 -0
  253. package/src/controls-options-manager/util.ts +294 -14
  254. package/src/index.ts +40 -0
  255. package/src/interpretation/README.md +60 -0
  256. package/src/interpretation/collection.ts +19 -0
  257. package/src/interpretation/index.ts +332 -0
  258. package/src/interpretation/siLanguage.ts +18 -0
  259. package/src/locus-info/controlsUtils.ts +108 -0
  260. package/src/locus-info/index.ts +413 -59
  261. package/src/locus-info/infoUtils.ts +10 -2
  262. package/src/locus-info/mediaSharesUtils.ts +64 -0
  263. package/src/locus-info/parser.ts +258 -47
  264. package/src/locus-info/selfUtils.ts +81 -5
  265. package/src/media/index.ts +102 -122
  266. package/src/media/properties.ts +87 -110
  267. package/src/mediaQualityMetrics/config.ts +0 -135
  268. package/src/meeting/in-meeting-actions.ts +171 -3
  269. package/src/meeting/index.ts +3276 -2555
  270. package/src/meeting/locusMediaRequest.ts +313 -0
  271. package/src/meeting/muteState.ts +223 -136
  272. package/src/meeting/request.ts +177 -121
  273. package/src/meeting/util.ts +588 -394
  274. package/src/meeting-info/index.ts +81 -8
  275. package/src/meeting-info/meeting-info-v2.ts +170 -14
  276. package/src/meeting-info/util.ts +1 -1
  277. package/src/meeting-info/utilv2.ts +23 -23
  278. package/src/meetings/collection.ts +33 -0
  279. package/src/meetings/index.ts +454 -125
  280. package/src/meetings/meetings.types.ts +12 -0
  281. package/src/meetings/request.ts +2 -0
  282. package/src/meetings/util.ts +80 -11
  283. package/src/member/index.ts +58 -0
  284. package/src/member/types.ts +38 -0
  285. package/src/member/util.ts +141 -25
  286. package/src/members/collection.ts +8 -0
  287. package/src/members/index.ts +134 -8
  288. package/src/members/request.ts +97 -17
  289. package/src/members/types.ts +29 -0
  290. package/src/members/util.ts +333 -240
  291. package/src/metrics/constants.ts +15 -4
  292. package/src/metrics/index.ts +1 -469
  293. package/src/multistream/mediaRequestManager.ts +277 -82
  294. package/src/multistream/receiveSlot.ts +31 -17
  295. package/src/multistream/receiveSlotManager.ts +34 -24
  296. package/src/multistream/remoteMedia.ts +27 -2
  297. package/src/multistream/remoteMediaGroup.ts +59 -0
  298. package/src/multistream/remoteMediaManager.ts +148 -30
  299. package/src/multistream/sendSlotManager.ts +170 -0
  300. package/src/reachability/clusterReachability.ts +320 -0
  301. package/src/reachability/index.ts +236 -342
  302. package/src/reachability/request.ts +17 -8
  303. package/src/reachability/util.ts +24 -0
  304. package/src/reconnection-manager/index.ts +128 -106
  305. package/src/recording-controller/index.ts +20 -3
  306. package/src/recording-controller/util.ts +26 -9
  307. package/src/roap/index.ts +63 -32
  308. package/src/roap/request.ts +100 -104
  309. package/src/roap/turnDiscovery.ts +48 -26
  310. package/src/rtcMetrics/constants.ts +3 -0
  311. package/src/rtcMetrics/index.ts +124 -0
  312. package/src/statsAnalyzer/index.ts +218 -289
  313. package/src/statsAnalyzer/mqaUtil.ts +28 -30
  314. package/src/webinar/collection.ts +31 -0
  315. package/src/webinar/index.ts +62 -0
  316. package/test/integration/spec/converged-space-meetings.js +60 -3
  317. package/test/integration/spec/journey.js +320 -261
  318. package/test/integration/spec/space-meeting.js +76 -3
  319. package/test/unit/spec/annotation/index.ts +418 -0
  320. package/test/unit/spec/breakouts/breakout.ts +118 -28
  321. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  322. package/test/unit/spec/breakouts/events.ts +89 -0
  323. package/test/unit/spec/breakouts/index.ts +1395 -69
  324. package/test/unit/spec/breakouts/utils.js +52 -1
  325. package/test/unit/spec/common/queue.js +31 -2
  326. package/test/unit/spec/controls-options-manager/index.js +163 -0
  327. package/test/unit/spec/controls-options-manager/util.js +576 -60
  328. package/test/unit/spec/fixture/locus.js +1 -0
  329. package/test/unit/spec/interpretation/collection.ts +15 -0
  330. package/test/unit/spec/interpretation/index.ts +589 -0
  331. package/test/unit/spec/interpretation/siLanguage.ts +28 -0
  332. package/test/unit/spec/locus-info/controlsUtils.js +316 -43
  333. package/test/unit/spec/locus-info/index.js +1304 -33
  334. package/test/unit/spec/locus-info/infoUtils.js +37 -15
  335. package/test/unit/spec/locus-info/lib/SeqCmp.json +16 -0
  336. package/test/unit/spec/locus-info/mediaSharesUtils.ts +32 -0
  337. package/test/unit/spec/locus-info/parser.js +116 -35
  338. package/test/unit/spec/locus-info/selfConstant.js +27 -4
  339. package/test/unit/spec/locus-info/selfUtils.js +208 -17
  340. package/test/unit/spec/media/index.ts +120 -37
  341. package/test/unit/spec/media/properties.ts +2 -2
  342. package/test/unit/spec/meeting/in-meeting-actions.ts +85 -3
  343. package/test/unit/spec/meeting/index.js +5849 -2014
  344. package/test/unit/spec/meeting/locusMediaRequest.ts +442 -0
  345. package/test/unit/spec/meeting/muteState.js +402 -213
  346. package/test/unit/spec/meeting/request.js +483 -49
  347. package/test/unit/spec/meeting/utils.js +679 -64
  348. package/test/unit/spec/meeting-info/index.js +300 -0
  349. package/test/unit/spec/meeting-info/meetinginfov2.js +526 -5
  350. package/test/unit/spec/meeting-info/utilv2.js +21 -0
  351. package/test/unit/spec/meetings/collection.js +26 -0
  352. package/test/unit/spec/meetings/index.js +1231 -212
  353. package/test/unit/spec/meetings/utils.js +202 -2
  354. package/test/unit/spec/member/index.js +61 -6
  355. package/test/unit/spec/member/util.js +510 -34
  356. package/test/unit/spec/members/index.js +432 -1
  357. package/test/unit/spec/members/request.js +206 -27
  358. package/test/unit/spec/members/utils.js +210 -0
  359. package/test/unit/spec/metrics/index.js +1 -50
  360. package/test/unit/spec/multistream/mediaRequestManager.ts +776 -162
  361. package/test/unit/spec/multistream/receiveSlot.ts +28 -20
  362. package/test/unit/spec/multistream/receiveSlotManager.ts +32 -30
  363. package/test/unit/spec/multistream/remoteMedia.ts +30 -0
  364. package/test/unit/spec/multistream/remoteMediaGroup.ts +266 -0
  365. package/test/unit/spec/multistream/remoteMediaManager.ts +326 -0
  366. package/test/unit/spec/multistream/sendSlotManager.ts +242 -0
  367. package/test/unit/spec/reachability/clusterReachability.ts +279 -0
  368. package/test/unit/spec/reachability/index.ts +486 -13
  369. package/test/unit/spec/reachability/request.js +68 -0
  370. package/test/unit/spec/reachability/util.ts +40 -0
  371. package/test/unit/spec/reconnection-manager/index.js +117 -11
  372. package/test/unit/spec/recording-controller/index.js +294 -218
  373. package/test/unit/spec/recording-controller/util.js +223 -96
  374. package/test/unit/spec/roap/index.ts +174 -63
  375. package/test/unit/spec/roap/request.ts +226 -85
  376. package/test/unit/spec/roap/turnDiscovery.ts +76 -34
  377. package/test/unit/spec/rtcMetrics/index.ts +93 -0
  378. package/test/unit/spec/stats-analyzer/index.js +231 -7
  379. package/test/unit/spec/webinar/collection.ts +13 -0
  380. package/test/unit/spec/webinar/index.ts +60 -0
  381. package/test/utils/integrationTestUtils.js +46 -0
  382. package/test/utils/testUtils.js +0 -52
  383. package/dist/meeting/effectsState.js +0 -262
  384. package/dist/meeting/effectsState.js.map +0 -1
  385. package/dist/metrics/config.js +0 -289
  386. package/dist/metrics/config.js.map +0 -1
  387. package/dist/types/meeting/effectsState.d.ts +0 -42
  388. package/dist/types/metrics/config.d.ts +0 -169
  389. package/src/index.js +0 -16
  390. package/src/meeting/effectsState.ts +0 -211
  391. package/src/metrics/config.ts +0 -485
  392. package/test/unit/spec/meeting/effectsState.js +0 -285
@@ -6,10 +6,14 @@ _Object$defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = void 0;
9
+ var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
9
11
  var _webexCore = require("@webex/webex-core");
12
+ var _uuid = _interopRequireDefault(require("uuid"));
10
13
  var _constants = require("../constants");
11
14
  var _members = _interopRequireDefault(require("../members"));
12
15
  var _request = _interopRequireDefault(require("./request"));
16
+ var _events = _interopRequireDefault(require("./events"));
13
17
  /*!
14
18
  * Copyright (c) 2015-2023 Cisco Systems, Inc. See LICENSE file.
15
19
  */
@@ -38,11 +42,14 @@ var Breakout = _webexCore.WebexPlugin.extend({
38
42
  sessionId: 'string',
39
43
  sessionType: 'string',
40
44
  groupId: 'string',
41
- url: 'string' // where to send requests to
45
+ url: 'string',
46
+ // where to send requests to
47
+ requestedLastModifiedTime: 'string'
42
48
  },
43
-
44
49
  derived: {
45
50
  isMain: {
51
+ cache: false,
52
+ // fix issue: sometimes the derived will not change even if the deps changed
46
53
  deps: ['sessionType'],
47
54
  /**
48
55
  * If the breakout has no name, assume it is the main session
@@ -53,28 +60,66 @@ var Breakout = _webexCore.WebexPlugin.extend({
53
60
  }
54
61
  }
55
62
  },
63
+ /**
64
+ * initializer for the Breakout class
65
+ * @returns {void}
66
+ */
56
67
  initialize: function initialize() {
57
- this.members = new _members.default({}, {
58
- parent: this.webex
59
- });
60
68
  // @ts-ignore
61
69
  this.breakoutRequest = new _request.default({
62
70
  webex: this.webex
63
71
  });
72
+ this.breakoutRosterLocus = null;
64
73
  },
65
74
  /**
66
75
  * Joins the breakout session
67
76
  * @returns {Promise}
68
77
  */
69
78
  join: function join() {
70
- return this.request({
71
- method: _constants.HTTP_VERBS.POST,
72
- uri: "".concat(this.url, "/move"),
73
- body: {
74
- groupId: this.groupId,
75
- sessionId: this.sessionId
76
- }
77
- });
79
+ var _this = this;
80
+ return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
81
+ var breakoutMoveId, deviceUrl, meetingId, meeting, result;
82
+ return _regenerator.default.wrap(function _callee$(_context) {
83
+ while (1) switch (_context.prev = _context.next) {
84
+ case 0:
85
+ breakoutMoveId = _uuid.default.v4();
86
+ deviceUrl = _this.webex.internal.device.url;
87
+ meetingId = _this.collection.parent.meetingId;
88
+ meeting = _this.webex.meetings.getMeetingByType(_constants._ID_, meetingId);
89
+ _events.default.onBreakoutMoveRequest({
90
+ currentSession: _this,
91
+ meeting: meeting,
92
+ breakoutMoveId: breakoutMoveId
93
+ },
94
+ // @ts-ignore
95
+ _this.webex.internal.newMetrics.submitClientEvent.bind(_this.webex.internal.newMetrics));
96
+ _context.next = 7;
97
+ return _this.request({
98
+ method: _constants.HTTP_VERBS.POST,
99
+ uri: "".concat(_this.url, "/move"),
100
+ body: {
101
+ breakoutMoveId: breakoutMoveId,
102
+ deviceUrl: deviceUrl,
103
+ groupId: _this.groupId,
104
+ sessionId: _this.sessionId
105
+ }
106
+ });
107
+ case 7:
108
+ result = _context.sent;
109
+ _events.default.onBreakoutMoveResponse({
110
+ currentSession: _this,
111
+ meeting: meeting,
112
+ breakoutMoveId: breakoutMoveId
113
+ },
114
+ // @ts-ignore
115
+ _this.webex.internal.newMetrics.submitClientEvent.bind(_this.webex.internal.newMetrics));
116
+ return _context.abrupt("return", result);
117
+ case 10:
118
+ case "end":
119
+ return _context.stop();
120
+ }
121
+ }, _callee);
122
+ }))();
78
123
  },
79
124
  /**
80
125
  * Leaves the breakout session to return to the main session
@@ -107,12 +152,46 @@ var Breakout = _webexCore.WebexPlugin.extend({
107
152
  }
108
153
  });
109
154
  },
155
+ /**
156
+ * inits the members object
157
+ * @returns {void}
158
+ */
159
+ initMembers: function initMembers() {
160
+ var meetingId = this.collection.parent.meetingId;
161
+ var meeting = this.webex.meetings.getMeetingByType(_constants._ID_, meetingId);
162
+ this.members = new _members.default({
163
+ meeting: meeting
164
+ }, {
165
+ parent: this.webex
166
+ });
167
+ },
168
+ /**
169
+ * check sequence and determine whether to update the new roster or not
170
+ * @param {Object} locus Locus object
171
+ * @returns {Boolean}
172
+ */
173
+ isNeedHandleRoster: function isNeedHandleRoster(locus) {
174
+ var _this$breakoutRosterL, _this$breakoutRosterL2, _this$breakoutRosterL3, _locus$sequence, _locus$sequence$entri;
175
+ if (!((_this$breakoutRosterL = this.breakoutRosterLocus) !== null && _this$breakoutRosterL !== void 0 && (_this$breakoutRosterL2 = _this$breakoutRosterL.sequence) !== null && _this$breakoutRosterL2 !== void 0 && (_this$breakoutRosterL3 = _this$breakoutRosterL2.entries) !== null && _this$breakoutRosterL3 !== void 0 && _this$breakoutRosterL3.length) || !(locus !== null && locus !== void 0 && (_locus$sequence = locus.sequence) !== null && _locus$sequence !== void 0 && (_locus$sequence$entri = _locus$sequence.entries) !== null && _locus$sequence$entri !== void 0 && _locus$sequence$entri.length)) {
176
+ return true;
177
+ }
178
+ var prevSequence = this.breakoutRosterLocus.sequence.entries[0];
179
+ var currentSequence = locus.sequence.entries[0];
180
+ return currentSequence > prevSequence;
181
+ },
110
182
  /**
111
183
  * Parses the participants from the locus object
112
- * @param locus Locus object
184
+ * @param {Object} locus Locus object
113
185
  * @returns {void}
114
186
  */
115
187
  parseRoster: function parseRoster(locus) {
188
+ if (!this.members) {
189
+ this.initMembers();
190
+ }
191
+ if (!this.isNeedHandleRoster(locus)) {
192
+ return;
193
+ }
194
+ this.breakoutRosterLocus = locus;
116
195
  this.members.locusParticipantsUpdate(locus);
117
196
  },
118
197
  /**
@@ -130,7 +209,7 @@ var Breakout = _webexCore.WebexPlugin.extend({
130
209
  sessionId: this.sessionId
131
210
  });
132
211
  },
133
- version: "3.0.0-beta.34"
212
+ version: "3.0.0-beta.340"
134
213
  });
135
214
  var _default = Breakout;
136
215
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"names":["Breakout","WebexPlugin","extend","idAttribute","namespace","MEETINGS","breakoutRequest","BreakoutRequest","props","active","allowed","assigned","assignedCurrent","requested","current","name","sessionId","sessionType","groupId","url","derived","isMain","deps","fn","initialize","members","Members","parent","webex","join","request","method","HTTP_VERBS","POST","uri","body","leave","Error","mainSession","breakouts","filter","breakout","askForHelp","parseRoster","locus","locusParticipantsUpdate","broadcast","message","options"],"sources":["breakout.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2023 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {WebexPlugin} from '@webex/webex-core';\n\nimport {HTTP_VERBS, MEETINGS} from '../constants';\nimport LocusInfo from '../locus-info';\nimport Members from '../members';\nimport BreakoutRequest from './request';\n\n/**\n * @class\n */\nconst Breakout = WebexPlugin.extend({\n idAttribute: 'sessionId',\n\n namespace: MEETINGS,\n\n breakoutRequest: BreakoutRequest,\n props: {\n active: ['boolean', false, false], // this session is active\n allowed: ['boolean', false, false], // allowed to join this session\n assigned: ['boolean', false, false], // assigned to this session, but not necessarily joined yet\n assignedCurrent: ['boolean', false, false], // assigned AND current session\n requested: ['boolean', false, false], // requested by the host to join this session\n current: ['boolean', false, false], // the current joined session\n name: 'string',\n sessionId: 'string',\n sessionType: 'string',\n groupId: 'string',\n url: 'string', // where to send requests to\n },\n\n derived: {\n isMain: {\n deps: ['sessionType'],\n /**\n * If the breakout has no name, assume it is the main session\n * @returns {boolean}\n */\n fn() {\n return this.sessionType === 'MAIN';\n },\n },\n },\n\n initialize() {\n this.members = new Members({}, {parent: this.webex});\n // @ts-ignore\n this.breakoutRequest = new BreakoutRequest({webex: this.webex});\n },\n\n /**\n * Joins the breakout session\n * @returns {Promise}\n */\n join() {\n return this.request({\n method: HTTP_VERBS.POST,\n uri: `${this.url}/move`,\n body: {\n groupId: this.groupId,\n sessionId: this.sessionId,\n },\n });\n },\n\n /**\n * Leaves the breakout session to return to the main session\n * @returns {Promise}\n * @throws {Error} if an attempt is made to leave the main session or if the main session cannot be found\n */\n leave() {\n if (this.isMain) {\n throw new Error('Cannot leave the main session');\n }\n\n const mainSession = this.parent.breakouts.filter((breakout) => breakout.isMain)[0];\n\n if (!mainSession) {\n throw new Error('Cannot leave, no main session found');\n }\n\n return mainSession.join();\n },\n\n /**\n * Sends a help request for the current breakout\n * @returns {Promise}\n */\n askForHelp() {\n return this.request({\n method: HTTP_VERBS.POST,\n uri: `${this.url}/help`,\n body: {\n groupId: this.groupId,\n sessionId: this.sessionId,\n },\n });\n },\n\n /**\n * Parses the participants from the locus object\n * @param locus Locus object\n * @returns {void}\n */\n\n parseRoster(locus) {\n this.members.locusParticipantsUpdate(locus);\n },\n\n /**\n * Broadcast message to this breakout session's participants\n * @param {String} message\n * @param {Object} options\n * @returns {Promise}\n */\n broadcast(message, options) {\n return this.breakoutRequest.broadcast({\n url: this.url,\n message,\n options,\n groupId: this.groupId,\n sessionId: this.sessionId,\n });\n },\n});\n\nexport default Breakout;\n"],"mappings":"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"}
1
+ {"version":3,"names":["Breakout","WebexPlugin","extend","idAttribute","namespace","MEETINGS","breakoutRequest","BreakoutRequest","props","active","allowed","assigned","assignedCurrent","requested","current","name","sessionId","sessionType","groupId","url","requestedLastModifiedTime","derived","isMain","cache","deps","fn","initialize","webex","breakoutRosterLocus","join","breakoutMoveId","uuid","v4","deviceUrl","internal","device","meetingId","collection","parent","meeting","meetings","getMeetingByType","_ID_","breakoutEvent","onBreakoutMoveRequest","currentSession","newMetrics","submitClientEvent","bind","request","method","HTTP_VERBS","POST","uri","body","result","onBreakoutMoveResponse","leave","Error","mainSession","breakouts","filter","breakout","askForHelp","initMembers","members","Members","isNeedHandleRoster","locus","sequence","entries","length","prevSequence","currentSequence","parseRoster","locusParticipantsUpdate","broadcast","message","options"],"sources":["breakout.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2023 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {WebexPlugin} from '@webex/webex-core';\n\nimport uuid from 'uuid';\nimport {_ID_, HTTP_VERBS, MEETINGS} from '../constants';\nimport Members from '../members';\nimport BreakoutRequest from './request';\nimport breakoutEvent from './events';\n/**\n * @class\n */\nconst Breakout = WebexPlugin.extend({\n idAttribute: 'sessionId',\n\n namespace: MEETINGS,\n\n breakoutRequest: BreakoutRequest,\n props: {\n active: ['boolean', false, false], // this session is active\n allowed: ['boolean', false, false], // allowed to join this session\n assigned: ['boolean', false, false], // assigned to this session, but not necessarily joined yet\n assignedCurrent: ['boolean', false, false], // assigned AND current session\n requested: ['boolean', false, false], // requested by the host to join this session\n current: ['boolean', false, false], // the current joined session\n name: 'string',\n sessionId: 'string',\n sessionType: 'string',\n groupId: 'string',\n url: 'string', // where to send requests to\n requestedLastModifiedTime: 'string',\n },\n\n derived: {\n isMain: {\n cache: false, // fix issue: sometimes the derived will not change even if the deps changed\n deps: ['sessionType'],\n /**\n * If the breakout has no name, assume it is the main session\n * @returns {boolean}\n */\n fn() {\n return this.sessionType === 'MAIN';\n },\n },\n },\n /**\n * initializer for the Breakout class\n * @returns {void}\n */\n initialize() {\n // @ts-ignore\n this.breakoutRequest = new BreakoutRequest({webex: this.webex});\n this.breakoutRosterLocus = null;\n },\n\n /**\n * Joins the breakout session\n * @returns {Promise}\n */\n async join() {\n const breakoutMoveId = uuid.v4();\n const deviceUrl = this.webex.internal.device.url;\n const {meetingId} = this.collection.parent;\n const meeting = this.webex.meetings.getMeetingByType(_ID_, meetingId);\n breakoutEvent.onBreakoutMoveRequest(\n {currentSession: this, meeting, breakoutMoveId},\n // @ts-ignore\n this.webex.internal.newMetrics.submitClientEvent.bind(this.webex.internal.newMetrics)\n );\n const result = await this.request({\n method: HTTP_VERBS.POST,\n uri: `${this.url}/move`,\n body: {\n breakoutMoveId,\n deviceUrl,\n groupId: this.groupId,\n sessionId: this.sessionId,\n },\n });\n breakoutEvent.onBreakoutMoveResponse(\n {currentSession: this, meeting, breakoutMoveId},\n // @ts-ignore\n this.webex.internal.newMetrics.submitClientEvent.bind(this.webex.internal.newMetrics)\n );\n\n return result;\n },\n\n /**\n * Leaves the breakout session to return to the main session\n * @returns {Promise}\n * @throws {Error} if an attempt is made to leave the main session or if the main session cannot be found\n */\n leave() {\n if (this.isMain) {\n throw new Error('Cannot leave the main session');\n }\n\n const mainSession = this.parent.breakouts.filter((breakout) => breakout.isMain)[0];\n\n if (!mainSession) {\n throw new Error('Cannot leave, no main session found');\n }\n\n return mainSession.join();\n },\n\n /**\n * Sends a help request for the current breakout\n * @returns {Promise}\n */\n askForHelp() {\n return this.request({\n method: HTTP_VERBS.POST,\n uri: `${this.url}/help`,\n body: {\n groupId: this.groupId,\n sessionId: this.sessionId,\n },\n });\n },\n\n /**\n * inits the members object\n * @returns {void}\n */\n initMembers() {\n const {meetingId} = this.collection.parent;\n const meeting = this.webex.meetings.getMeetingByType(_ID_, meetingId);\n this.members = new Members(\n {\n meeting,\n },\n {parent: this.webex}\n );\n },\n\n /**\n * check sequence and determine whether to update the new roster or not\n * @param {Object} locus Locus object\n * @returns {Boolean}\n */\n isNeedHandleRoster(locus: any) {\n if (!this.breakoutRosterLocus?.sequence?.entries?.length || !locus?.sequence?.entries?.length) {\n return true;\n }\n const prevSequence = this.breakoutRosterLocus.sequence.entries[0];\n const currentSequence = locus.sequence.entries[0];\n\n return currentSequence > prevSequence;\n },\n /**\n * Parses the participants from the locus object\n * @param {Object} locus Locus object\n * @returns {void}\n */\n parseRoster(locus) {\n if (!this.members) {\n this.initMembers();\n }\n if (!this.isNeedHandleRoster(locus)) {\n return;\n }\n this.breakoutRosterLocus = locus;\n this.members.locusParticipantsUpdate(locus);\n },\n\n /**\n * Broadcast message to this breakout session's participants\n * @param {String} message\n * @param {Object} options\n * @returns {Promise}\n */\n broadcast(message, options) {\n return this.breakoutRequest.broadcast({\n url: this.url,\n message,\n options,\n groupId: this.groupId,\n sessionId: this.sessionId,\n });\n },\n});\n\nexport default Breakout;\n"],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
4
+ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
5
+ var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
6
+ _Object$defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
9
+ exports.default = void 0;
10
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
11
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
12
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
13
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
14
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
15
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
16
+ var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/wrapNativeSuper"));
17
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
18
+ var _constants = require("../constants");
19
+ 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); }; }
20
+ 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; } }
21
+ /**
22
+ * Extended Error object to signify breakout related errors
23
+ */
24
+ var BreakoutEditLockedError = /*#__PURE__*/function (_Error) {
25
+ (0, _inherits2.default)(BreakoutEditLockedError, _Error);
26
+ var _super = _createSuper(BreakoutEditLockedError);
27
+ /**
28
+ *
29
+ * @constructor
30
+ * @param {String} [message]
31
+ * @param {Object} [error]
32
+ */
33
+ function BreakoutEditLockedError() {
34
+ var _this;
35
+ var message = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _constants.ERROR_DICTIONARY.BREAKOUT_EDIT.MESSAGE;
36
+ var error = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
37
+ (0, _classCallCheck2.default)(this, BreakoutEditLockedError);
38
+ _this = _super.call(this, message);
39
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "code", void 0);
40
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "error", void 0);
41
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "sdkMessage", void 0);
42
+ _this.name = _constants.ERROR_DICTIONARY.BREAKOUT_EDIT.NAME;
43
+ _this.sdkMessage = _constants.ERROR_DICTIONARY.BREAKOUT_EDIT.MESSAGE;
44
+ _this.error = error;
45
+ _this.stack = error ? error.stack : new Error().stack;
46
+ _this.code = _constants.ERROR_DICTIONARY.BREAKOUT_EDIT.CODE;
47
+ return _this;
48
+ }
49
+ return (0, _createClass2.default)(BreakoutEditLockedError);
50
+ }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
51
+ exports.default = BreakoutEditLockedError;
52
+ //# sourceMappingURL=edit-lock-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BreakoutEditLockedError","message","ERROR_DICTIONARY","BREAKOUT_EDIT","MESSAGE","error","name","NAME","sdkMessage","stack","Error","code","CODE"],"sources":["edit-lock-error.ts"],"sourcesContent":["import {ERROR_DICTIONARY} from '../constants';\n\n/**\n * Extended Error object to signify breakout related errors\n */\nexport default class BreakoutEditLockedError extends Error {\n code: any;\n error: any;\n sdkMessage: any;\n\n /**\n *\n * @constructor\n * @param {String} [message]\n * @param {Object} [error]\n */\n constructor(message: string = ERROR_DICTIONARY.BREAKOUT_EDIT.MESSAGE, error: any = null) {\n super(message);\n this.name = ERROR_DICTIONARY.BREAKOUT_EDIT.NAME;\n this.sdkMessage = ERROR_DICTIONARY.BREAKOUT_EDIT.MESSAGE;\n this.error = error;\n this.stack = error ? error.stack : new Error().stack;\n this.code = ERROR_DICTIONARY.BREAKOUT_EDIT.CODE;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAA8C;AAAA;AAE9C;AACA;AACA;AAFA,IAGqBA,uBAAuB;EAAA;EAAA;EAK1C;AACF;AACA;AACA;AACA;AACA;EACE,mCAAyF;IAAA;IAAA,IAA7EC,OAAe,uEAAGC,2BAAgB,CAACC,aAAa,CAACC,OAAO;IAAA,IAAEC,KAAU,uEAAG,IAAI;IAAA;IACrF,0BAAMJ,OAAO;IAAE;IAAA;IAAA;IACf,MAAKK,IAAI,GAAGJ,2BAAgB,CAACC,aAAa,CAACI,IAAI;IAC/C,MAAKC,UAAU,GAAGN,2BAAgB,CAACC,aAAa,CAACC,OAAO;IACxD,MAAKC,KAAK,GAAGA,KAAK;IAClB,MAAKI,KAAK,GAAGJ,KAAK,GAAGA,KAAK,CAACI,KAAK,GAAG,IAAIC,KAAK,EAAE,CAACD,KAAK;IACpD,MAAKE,IAAI,GAAGT,2BAAgB,CAACC,aAAa,CAACS,IAAI;IAAC;EAClD;EAAC;AAAA,+CAlBkDF,KAAK;AAAA"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
+ _Object$defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ // eslint-disable-next-line import/prefer-default-export
9
+
10
+ var breakoutEvent = {
11
+ onBreakoutMoveRequest: function onBreakoutMoveRequest(eventInfo, submitClientEvent) {
12
+ breakoutEvent.postMoveCallAnalyzer('client.breakout-session.move.request', eventInfo, submitClientEvent);
13
+ },
14
+ onBreakoutMoveResponse: function onBreakoutMoveResponse(eventInfo, submitClientEvent) {
15
+ breakoutEvent.postMoveCallAnalyzer('client.breakout-session.move.response', eventInfo, submitClientEvent);
16
+ },
17
+ onBreakoutJoinResponse: function onBreakoutJoinResponse(eventInfo, submitClientEvent) {
18
+ breakoutEvent.postMoveCallAnalyzer('client.breakout-session.join.response', eventInfo, submitClientEvent);
19
+ },
20
+ postMoveCallAnalyzer: function postMoveCallAnalyzer(event, eventInfo, submitClientEvent) {
21
+ var _eventInfo$meeting$me, _eventInfo$currentSes, _eventInfo$currentSes2;
22
+ if (!(eventInfo !== null && eventInfo !== void 0 && eventInfo.breakoutMoveId) || !(eventInfo !== null && eventInfo !== void 0 && eventInfo.meeting)) {
23
+ return;
24
+ }
25
+ if (!((_eventInfo$meeting$me = eventInfo.meeting.meetingInfo) !== null && _eventInfo$meeting$me !== void 0 && _eventInfo$meeting$me.enableConvergedArchitecture)) {
26
+ return;
27
+ }
28
+ submitClientEvent({
29
+ name: event,
30
+ payload: {
31
+ identifiers: {
32
+ breakoutMoveId: eventInfo.breakoutMoveId,
33
+ breakoutSessionId: eventInfo === null || eventInfo === void 0 ? void 0 : (_eventInfo$currentSes = eventInfo.currentSession) === null || _eventInfo$currentSes === void 0 ? void 0 : _eventInfo$currentSes.sessionId,
34
+ breakoutGroupId: eventInfo === null || eventInfo === void 0 ? void 0 : (_eventInfo$currentSes2 = eventInfo.currentSession) === null || _eventInfo$currentSes2 === void 0 ? void 0 : _eventInfo$currentSes2.groupId
35
+ }
36
+ },
37
+ options: {
38
+ meetingId: eventInfo.meeting.id
39
+ }
40
+ });
41
+ }
42
+ };
43
+ var _default = breakoutEvent;
44
+ exports.default = _default;
45
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["breakoutEvent","onBreakoutMoveRequest","eventInfo","submitClientEvent","postMoveCallAnalyzer","onBreakoutMoveResponse","onBreakoutJoinResponse","event","breakoutMoveId","meeting","meetingInfo","enableConvergedArchitecture","name","payload","identifiers","breakoutSessionId","currentSession","sessionId","breakoutGroupId","groupId","options","meetingId","id"],"sources":["events.ts"],"sourcesContent":["// eslint-disable-next-line import/prefer-default-export\nimport {ClientEvent} from '@webex/internal-plugin-metrics';\n\nconst breakoutEvent: {\n onBreakoutMoveRequest: (eventInfo: any, submitClientEvent: any) => void;\n onBreakoutMoveResponse: (eventInfo: any, submitClientEvent: any) => void;\n onBreakoutJoinResponse: (eventInfo: any, submitClientEvent: any) => void;\n postMoveCallAnalyzer: (\n event: ClientEvent['name'],\n eventInfo: any,\n submitClientEvent: any\n ) => void;\n} = {\n onBreakoutMoveRequest: (eventInfo, submitClientEvent) => {\n breakoutEvent.postMoveCallAnalyzer(\n 'client.breakout-session.move.request',\n eventInfo,\n submitClientEvent\n );\n },\n onBreakoutMoveResponse: (eventInfo, submitClientEvent) => {\n breakoutEvent.postMoveCallAnalyzer(\n 'client.breakout-session.move.response',\n eventInfo,\n submitClientEvent\n );\n },\n onBreakoutJoinResponse: (eventInfo, submitClientEvent) => {\n breakoutEvent.postMoveCallAnalyzer(\n 'client.breakout-session.join.response',\n eventInfo,\n submitClientEvent\n );\n },\n postMoveCallAnalyzer: (event: ClientEvent['name'], eventInfo: any, submitClientEvent) => {\n if (!eventInfo?.breakoutMoveId || !eventInfo?.meeting) {\n return;\n }\n if (!eventInfo.meeting.meetingInfo?.enableConvergedArchitecture) {\n return;\n }\n submitClientEvent({\n name: event,\n payload: {\n identifiers: {\n breakoutMoveId: eventInfo.breakoutMoveId,\n breakoutSessionId: eventInfo?.currentSession?.sessionId,\n breakoutGroupId: eventInfo?.currentSession?.groupId,\n },\n },\n options: {meetingId: eventInfo.meeting.id},\n });\n },\n};\n\nexport default breakoutEvent;\n"],"mappings":";;;;;;;AAAA;;AAGA,IAAMA,aASL,GAAG;EACFC,qBAAqB,EAAE,+BAACC,SAAS,EAAEC,iBAAiB,EAAK;IACvDH,aAAa,CAACI,oBAAoB,CAChC,sCAAsC,EACtCF,SAAS,EACTC,iBAAiB,CAClB;EACH,CAAC;EACDE,sBAAsB,EAAE,gCAACH,SAAS,EAAEC,iBAAiB,EAAK;IACxDH,aAAa,CAACI,oBAAoB,CAChC,uCAAuC,EACvCF,SAAS,EACTC,iBAAiB,CAClB;EACH,CAAC;EACDG,sBAAsB,EAAE,gCAACJ,SAAS,EAAEC,iBAAiB,EAAK;IACxDH,aAAa,CAACI,oBAAoB,CAChC,uCAAuC,EACvCF,SAAS,EACTC,iBAAiB,CAClB;EACH,CAAC;EACDC,oBAAoB,EAAE,8BAACG,KAA0B,EAAEL,SAAc,EAAEC,iBAAiB,EAAK;IAAA;IACvF,IAAI,EAACD,SAAS,aAATA,SAAS,eAATA,SAAS,CAAEM,cAAc,KAAI,EAACN,SAAS,aAATA,SAAS,eAATA,SAAS,CAAEO,OAAO,GAAE;MACrD;IACF;IACA,IAAI,2BAACP,SAAS,CAACO,OAAO,CAACC,WAAW,kDAA7B,sBAA+BC,2BAA2B,GAAE;MAC/D;IACF;IACAR,iBAAiB,CAAC;MAChBS,IAAI,EAAEL,KAAK;MACXM,OAAO,EAAE;QACPC,WAAW,EAAE;UACXN,cAAc,EAAEN,SAAS,CAACM,cAAc;UACxCO,iBAAiB,EAAEb,SAAS,aAATA,SAAS,gDAATA,SAAS,CAAEc,cAAc,0DAAzB,sBAA2BC,SAAS;UACvDC,eAAe,EAAEhB,SAAS,aAATA,SAAS,iDAATA,SAAS,CAAEc,cAAc,2DAAzB,uBAA2BG;QAC9C;MACF,CAAC;MACDC,OAAO,EAAE;QAACC,SAAS,EAAEnB,SAAS,CAACO,OAAO,CAACa;MAAE;IAC3C,CAAC,CAAC;EACJ;AACF,CAAC;AAAC,eAEatB,aAAa;AAAA"}