@webex/plugin-meetings 2.60.0 → 2.60.1-next.1

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 (535) hide show
  1. package/README.md +46 -8
  2. package/dist/annotation/annotation.types.d.ts +42 -0
  3. package/dist/annotation/annotation.types.js +7 -0
  4. package/dist/annotation/annotation.types.js.map +1 -0
  5. package/dist/annotation/constants.d.ts +31 -0
  6. package/dist/annotation/constants.js +41 -0
  7. package/dist/annotation/constants.js.map +1 -0
  8. package/dist/annotation/index.d.ts +117 -0
  9. package/dist/annotation/index.js +357 -0
  10. package/dist/annotation/index.js.map +1 -0
  11. package/dist/breakouts/breakout.d.ts +8 -0
  12. package/dist/breakouts/breakout.js +215 -0
  13. package/dist/breakouts/breakout.js.map +1 -0
  14. package/dist/breakouts/collection.d.ts +5 -0
  15. package/dist/breakouts/collection.js +22 -0
  16. package/dist/breakouts/collection.js.map +1 -0
  17. package/dist/breakouts/edit-lock-error.d.ts +15 -0
  18. package/dist/breakouts/edit-lock-error.js +51 -0
  19. package/dist/breakouts/edit-lock-error.js.map +1 -0
  20. package/dist/breakouts/events.d.ts +8 -0
  21. package/dist/breakouts/events.js +44 -0
  22. package/dist/breakouts/events.js.map +1 -0
  23. package/dist/breakouts/index.d.ts +5 -0
  24. package/dist/breakouts/index.js +1047 -0
  25. package/dist/breakouts/index.js.map +1 -0
  26. package/dist/breakouts/request.d.ts +22 -0
  27. package/dist/breakouts/request.js +77 -0
  28. package/dist/breakouts/request.js.map +1 -0
  29. package/dist/breakouts/utils.d.ts +15 -0
  30. package/dist/breakouts/utils.js +64 -0
  31. package/dist/breakouts/utils.js.map +1 -0
  32. package/dist/common/browser-detection.js +2 -3
  33. package/dist/common/browser-detection.js.map +1 -1
  34. package/dist/common/collection.js +3 -4
  35. package/dist/common/collection.js.map +1 -1
  36. package/dist/common/config.js +1 -2
  37. package/dist/common/config.js.map +1 -1
  38. package/dist/common/errors/captcha-error.js +1 -2
  39. package/dist/common/errors/captcha-error.js.map +1 -1
  40. package/dist/common/errors/intent-to-join.js +1 -2
  41. package/dist/common/errors/intent-to-join.js.map +1 -1
  42. package/dist/common/errors/join-meeting.js +1 -2
  43. package/dist/common/errors/join-meeting.js.map +1 -1
  44. package/dist/common/errors/media.js +1 -2
  45. package/dist/common/errors/media.js.map +1 -1
  46. package/dist/common/errors/no-meeting-info.d.ts +14 -0
  47. package/dist/common/errors/no-meeting-info.js +50 -0
  48. package/dist/common/errors/no-meeting-info.js.map +1 -0
  49. package/dist/common/errors/parameter.js +3 -4
  50. package/dist/common/errors/parameter.js.map +1 -1
  51. package/dist/common/errors/password-error.js +1 -2
  52. package/dist/common/errors/password-error.js.map +1 -1
  53. package/dist/common/errors/permission.js +1 -2
  54. package/dist/common/errors/permission.js.map +1 -1
  55. package/dist/common/errors/{reclaim-host-role-error.js → reclaim-host-role-errors.js} +7 -11
  56. package/dist/common/errors/reclaim-host-role-errors.js.map +1 -0
  57. package/dist/common/errors/reconnection-in-progress.js +1 -2
  58. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  59. package/dist/common/errors/reconnection.js +1 -2
  60. package/dist/common/errors/reconnection.js.map +1 -1
  61. package/dist/common/errors/stats.js +1 -2
  62. package/dist/common/errors/stats.js.map +1 -1
  63. package/dist/common/errors/webex-errors.d.ts +20 -8
  64. package/dist/common/errors/webex-errors.js +48 -28
  65. package/dist/common/errors/webex-errors.js.map +1 -1
  66. package/dist/common/errors/webex-meetings-error.js +1 -2
  67. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  68. package/dist/common/events/events-scope.js +1 -2
  69. package/dist/common/events/events-scope.js.map +1 -1
  70. package/dist/common/events/events.js +1 -2
  71. package/dist/common/events/events.js.map +1 -1
  72. package/dist/common/events/trigger-proxy.js +1 -2
  73. package/dist/common/events/trigger-proxy.js.map +1 -1
  74. package/dist/common/events/util.js +1 -2
  75. package/dist/common/events/util.js.map +1 -1
  76. package/dist/common/logs/logger-config.js +1 -2
  77. package/dist/common/logs/logger-config.js.map +1 -1
  78. package/dist/common/logs/logger-proxy.js +2 -3
  79. package/dist/common/logs/logger-proxy.js.map +1 -1
  80. package/dist/common/logs/request.d.ts +3 -1
  81. package/dist/common/logs/request.js +8 -5
  82. package/dist/common/logs/request.js.map +1 -1
  83. package/dist/common/queue.d.ts +9 -7
  84. package/dist/common/queue.js +22 -9
  85. package/dist/common/queue.js.map +1 -1
  86. package/dist/config.d.ts +6 -7
  87. package/dist/config.js +8 -10
  88. package/dist/config.js.map +1 -1
  89. package/dist/constants.d.ts +217 -97
  90. package/dist/constants.js +416 -441
  91. package/dist/constants.js.map +1 -1
  92. package/dist/controls-options-manager/constants.js +3 -6
  93. package/dist/controls-options-manager/constants.js.map +1 -1
  94. package/dist/controls-options-manager/enums.d.ts +11 -1
  95. package/dist/controls-options-manager/enums.js +15 -6
  96. package/dist/controls-options-manager/enums.js.map +1 -1
  97. package/dist/controls-options-manager/index.d.ts +17 -1
  98. package/dist/controls-options-manager/index.js +127 -38
  99. package/dist/controls-options-manager/index.js.map +1 -1
  100. package/dist/controls-options-manager/types.d.ts +43 -0
  101. package/dist/controls-options-manager/types.js +7 -0
  102. package/dist/controls-options-manager/types.js.map +1 -0
  103. package/dist/controls-options-manager/util.d.ts +1 -7
  104. package/dist/controls-options-manager/util.js +309 -19
  105. package/dist/controls-options-manager/util.js.map +1 -1
  106. package/dist/index.d.ts +6 -3
  107. package/dist/index.js +121 -5
  108. package/dist/index.js.map +1 -1
  109. package/dist/interceptors/index.d.ts +2 -0
  110. package/dist/interceptors/index.js +15 -0
  111. package/dist/interceptors/index.js.map +1 -0
  112. package/dist/interceptors/locusRetry.d.ts +27 -0
  113. package/dist/interceptors/locusRetry.js +94 -0
  114. package/dist/interceptors/locusRetry.js.map +1 -0
  115. package/dist/interpretation/collection.d.ts +5 -0
  116. package/dist/interpretation/collection.js +22 -0
  117. package/dist/interpretation/collection.js.map +1 -0
  118. package/dist/interpretation/index.d.ts +5 -0
  119. package/dist/interpretation/index.js +365 -0
  120. package/dist/interpretation/index.js.map +1 -0
  121. package/dist/interpretation/siLanguage.d.ts +5 -0
  122. package/dist/interpretation/siLanguage.js +24 -0
  123. package/dist/interpretation/siLanguage.js.map +1 -0
  124. package/dist/locus-info/controlsUtils.js +100 -11
  125. package/dist/locus-info/controlsUtils.js.map +1 -1
  126. package/dist/locus-info/embeddedAppsUtils.js +3 -4
  127. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  128. package/dist/locus-info/fullState.js +1 -2
  129. package/dist/locus-info/fullState.js.map +1 -1
  130. package/dist/locus-info/hostUtils.js +1 -2
  131. package/dist/locus-info/hostUtils.js.map +1 -1
  132. package/dist/locus-info/index.d.ts +57 -4
  133. package/dist/locus-info/index.js +425 -84
  134. package/dist/locus-info/index.js.map +1 -1
  135. package/dist/locus-info/infoUtils.js +13 -5
  136. package/dist/locus-info/infoUtils.js.map +1 -1
  137. package/dist/locus-info/mediaSharesUtils.js +58 -3
  138. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  139. package/dist/locus-info/parser.d.ts +66 -6
  140. package/dist/locus-info/parser.js +253 -80
  141. package/dist/locus-info/parser.js.map +1 -1
  142. package/dist/locus-info/selfUtils.js +97 -13
  143. package/dist/locus-info/selfUtils.js.map +1 -1
  144. package/dist/media/index.d.ts +2 -0
  145. package/dist/media/index.js +107 -319
  146. package/dist/media/index.js.map +1 -1
  147. package/dist/media/properties.d.ts +38 -53
  148. package/dist/media/properties.js +96 -153
  149. package/dist/media/properties.js.map +1 -1
  150. package/dist/media/util.js +1 -22
  151. package/dist/media/util.js.map +1 -1
  152. package/dist/mediaQualityMetrics/config.d.ts +234 -230
  153. package/dist/mediaQualityMetrics/config.js +302 -498
  154. package/dist/mediaQualityMetrics/config.js.map +1 -1
  155. package/dist/meeting/in-meeting-actions.d.ts +88 -0
  156. package/dist/meeting/in-meeting-actions.js +94 -3
  157. package/dist/meeting/in-meeting-actions.js.map +1 -1
  158. package/dist/meeting/index.d.ts +591 -494
  159. package/dist/meeting/index.js +4732 -2990
  160. package/dist/meeting/index.js.map +1 -1
  161. package/dist/meeting/locusMediaRequest.d.ts +74 -0
  162. package/dist/meeting/locusMediaRequest.js +291 -0
  163. package/dist/meeting/locusMediaRequest.js.map +1 -0
  164. package/dist/meeting/muteState.d.ts +93 -25
  165. package/dist/meeting/muteState.js +224 -133
  166. package/dist/meeting/muteState.js.map +1 -1
  167. package/dist/meeting/request.d.ts +82 -47
  168. package/dist/meeting/request.js +297 -199
  169. package/dist/meeting/request.js.map +1 -1
  170. package/dist/meeting/request.type.d.ts +11 -0
  171. package/dist/meeting/request.type.js +7 -0
  172. package/dist/meeting/request.type.js.map +1 -0
  173. package/dist/meeting/state.js +1 -2
  174. package/dist/meeting/state.js.map +1 -1
  175. package/dist/meeting/util.d.ts +102 -1
  176. package/dist/meeting/util.js +605 -435
  177. package/dist/meeting/util.js.map +1 -1
  178. package/dist/meeting-info/collection.js +3 -4
  179. package/dist/meeting-info/collection.js.map +1 -1
  180. package/dist/meeting-info/index.d.ts +13 -1
  181. package/dist/meeting-info/index.js +74 -7
  182. package/dist/meeting-info/index.js.map +1 -1
  183. package/dist/meeting-info/meeting-info-v2.d.ts +31 -1
  184. package/dist/meeting-info/meeting-info-v2.js +200 -63
  185. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  186. package/dist/meeting-info/request.js +1 -2
  187. package/dist/meeting-info/request.js.map +1 -1
  188. package/dist/meeting-info/util.js +2 -3
  189. package/dist/meeting-info/util.js.map +1 -1
  190. package/dist/meeting-info/utilv2.js +39 -41
  191. package/dist/meeting-info/utilv2.js.map +1 -1
  192. package/dist/meetings/collection.d.ts +17 -0
  193. package/dist/meetings/collection.js +42 -4
  194. package/dist/meetings/collection.js.map +1 -1
  195. package/dist/meetings/index.d.ts +93 -21
  196. package/dist/meetings/index.js +490 -127
  197. package/dist/meetings/index.js.map +1 -1
  198. package/dist/meetings/meetings.types.d.ts +4 -0
  199. package/dist/meetings/meetings.types.js +7 -0
  200. package/dist/meetings/meetings.types.js.map +1 -0
  201. package/dist/meetings/request.js +4 -3
  202. package/dist/meetings/request.js.map +1 -1
  203. package/dist/meetings/util.js +107 -6
  204. package/dist/meetings/util.js.map +1 -1
  205. package/dist/member/index.d.ts +13 -1
  206. package/dist/member/index.js +45 -2
  207. package/dist/member/index.js.map +1 -1
  208. package/dist/member/member.types.js +3 -4
  209. package/dist/member/member.types.js.map +1 -1
  210. package/dist/member/types.d.ts +32 -0
  211. package/dist/member/types.js +23 -0
  212. package/dist/member/types.js.map +1 -0
  213. package/dist/member/util.js +120 -29
  214. package/dist/member/util.js.map +1 -1
  215. package/dist/members/collection.d.ts +5 -0
  216. package/dist/members/collection.js +11 -2
  217. package/dist/members/collection.js.map +1 -1
  218. package/dist/members/index.d.ts +56 -11
  219. package/dist/members/index.js +174 -47
  220. package/dist/members/index.js.map +1 -1
  221. package/dist/members/request.d.ts +67 -11
  222. package/dist/members/request.js +102 -54
  223. package/dist/members/request.js.map +1 -1
  224. package/dist/members/types.js +3 -4
  225. package/dist/members/types.js.map +1 -1
  226. package/dist/members/util.d.ts +214 -1
  227. package/dist/members/util.js +327 -284
  228. package/dist/members/util.js.map +1 -1
  229. package/dist/metrics/constants.d.ts +15 -6
  230. package/dist/metrics/constants.js +17 -9
  231. package/dist/metrics/constants.js.map +1 -1
  232. package/dist/metrics/index.d.ts +4 -111
  233. package/dist/metrics/index.js +4 -452
  234. package/dist/metrics/index.js.map +1 -1
  235. package/dist/multistream/mediaRequestManager.d.ts +118 -0
  236. package/dist/multistream/mediaRequestManager.js +344 -0
  237. package/dist/multistream/mediaRequestManager.js.map +1 -0
  238. package/dist/multistream/receiveSlot.d.ts +68 -0
  239. package/dist/multistream/receiveSlot.js +200 -0
  240. package/dist/multistream/receiveSlot.js.map +1 -0
  241. package/dist/multistream/receiveSlotManager.d.ts +56 -0
  242. package/dist/multistream/receiveSlotManager.js +174 -0
  243. package/dist/multistream/receiveSlotManager.js.map +1 -0
  244. package/dist/multistream/remoteMedia.d.ts +72 -0
  245. package/dist/multistream/remoteMedia.js +268 -0
  246. package/dist/multistream/remoteMedia.js.map +1 -0
  247. package/dist/multistream/remoteMediaGroup.d.ts +47 -0
  248. package/dist/multistream/remoteMediaGroup.js +267 -0
  249. package/dist/multistream/remoteMediaGroup.js.map +1 -0
  250. package/dist/multistream/remoteMediaManager.d.ts +285 -0
  251. package/dist/multistream/remoteMediaManager.js +1211 -0
  252. package/dist/multistream/remoteMediaManager.js.map +1 -0
  253. package/dist/multistream/sendSlotManager.d.ts +61 -0
  254. package/dist/multistream/sendSlotManager.js +236 -0
  255. package/dist/multistream/sendSlotManager.js.map +1 -0
  256. package/dist/networkQualityMonitor/index.js +5 -4
  257. package/dist/networkQualityMonitor/index.js.map +1 -1
  258. package/dist/personal-meeting-room/index.js +2 -3
  259. package/dist/personal-meeting-room/index.js.map +1 -1
  260. package/dist/personal-meeting-room/request.js +2 -3
  261. package/dist/personal-meeting-room/request.js.map +1 -1
  262. package/dist/personal-meeting-room/util.js +1 -2
  263. package/dist/personal-meeting-room/util.js.map +1 -1
  264. package/dist/reachability/clusterReachability.d.ts +109 -0
  265. package/dist/reachability/clusterReachability.js +357 -0
  266. package/dist/reachability/clusterReachability.js.map +1 -0
  267. package/dist/reachability/index.d.ts +61 -95
  268. package/dist/reachability/index.js +300 -393
  269. package/dist/reachability/index.js.map +1 -1
  270. package/dist/reachability/request.d.ts +7 -3
  271. package/dist/reachability/request.js +18 -10
  272. package/dist/reachability/request.js.map +1 -1
  273. package/dist/reachability/util.d.ts +8 -0
  274. package/dist/reachability/util.js +29 -0
  275. package/dist/reachability/util.js.map +1 -0
  276. package/dist/reactions/constants.d.ts +3 -0
  277. package/dist/reactions/constants.js +12 -0
  278. package/dist/reactions/constants.js.map +1 -0
  279. package/dist/reactions/reactions.d.ts +2 -2
  280. package/dist/reactions/reactions.js +4 -6
  281. package/dist/reactions/reactions.js.map +1 -1
  282. package/dist/reactions/reactions.type.d.ts +23 -3
  283. package/dist/reactions/reactions.type.js +21 -23
  284. package/dist/reactions/reactions.type.js.map +1 -1
  285. package/dist/reconnection-manager/index.d.ts +32 -8
  286. package/dist/reconnection-manager/index.js +282 -231
  287. package/dist/reconnection-manager/index.js.map +1 -1
  288. package/dist/recording-controller/enums.js +4 -5
  289. package/dist/recording-controller/enums.js.map +1 -1
  290. package/dist/recording-controller/index.d.ts +15 -1
  291. package/dist/recording-controller/index.js +57 -46
  292. package/dist/recording-controller/index.js.map +1 -1
  293. package/dist/recording-controller/util.d.ts +5 -4
  294. package/dist/recording-controller/util.js +10 -10
  295. package/dist/recording-controller/util.js.map +1 -1
  296. package/dist/roap/index.d.ts +9 -47
  297. package/dist/roap/index.js +101 -235
  298. package/dist/roap/index.js.map +1 -1
  299. package/dist/roap/request.d.ts +18 -12
  300. package/dist/roap/request.js +126 -180
  301. package/dist/roap/request.js.map +1 -1
  302. package/dist/roap/turnDiscovery.d.ts +27 -16
  303. package/dist/roap/turnDiscovery.js +115 -105
  304. package/dist/roap/turnDiscovery.js.map +1 -1
  305. package/dist/rtcMetrics/constants.d.ts +4 -0
  306. package/dist/rtcMetrics/constants.js +11 -0
  307. package/dist/rtcMetrics/constants.js.map +1 -0
  308. package/dist/rtcMetrics/index.d.ts +54 -0
  309. package/dist/rtcMetrics/index.js +140 -0
  310. package/dist/rtcMetrics/index.js.map +1 -0
  311. package/dist/statsAnalyzer/global.d.ts +1 -83
  312. package/dist/statsAnalyzer/global.js +2 -85
  313. package/dist/statsAnalyzer/global.js.map +1 -1
  314. package/dist/statsAnalyzer/index.d.ts +50 -30
  315. package/dist/statsAnalyzer/index.js +435 -510
  316. package/dist/statsAnalyzer/index.js.map +1 -1
  317. package/dist/statsAnalyzer/mqaUtil.d.ts +8 -6
  318. package/dist/statsAnalyzer/mqaUtil.js +120 -83
  319. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  320. package/dist/transcription/index.js +1 -2
  321. package/dist/transcription/index.js.map +1 -1
  322. package/dist/webinar/collection.d.ts +16 -0
  323. package/dist/webinar/collection.js +43 -0
  324. package/dist/webinar/collection.js.map +1 -0
  325. package/dist/webinar/index.d.ts +5 -0
  326. package/dist/webinar/index.js +68 -0
  327. package/dist/webinar/index.js.map +1 -0
  328. package/package.json +38 -26
  329. package/src/annotation/annotation.types.ts +50 -0
  330. package/src/annotation/constants.ts +36 -0
  331. package/src/annotation/index.ts +328 -0
  332. package/src/breakouts/README.md +220 -0
  333. package/src/breakouts/breakout.ts +188 -0
  334. package/src/breakouts/collection.ts +19 -0
  335. package/src/breakouts/edit-lock-error.ts +25 -0
  336. package/src/breakouts/events.ts +56 -0
  337. package/src/breakouts/index.ts +925 -0
  338. package/src/breakouts/request.ts +55 -0
  339. package/src/breakouts/utils.ts +57 -0
  340. package/src/common/errors/no-meeting-info.ts +24 -0
  341. package/src/common/errors/webex-errors.ts +36 -12
  342. package/src/common/logs/logger-proxy.ts +1 -1
  343. package/src/common/logs/request.ts +5 -1
  344. package/src/common/queue.ts +22 -8
  345. package/src/config.ts +6 -7
  346. package/src/constants.ts +244 -97
  347. package/src/controls-options-manager/enums.ts +12 -0
  348. package/src/controls-options-manager/index.ts +116 -21
  349. package/src/controls-options-manager/types.ts +59 -0
  350. package/src/controls-options-manager/util.ts +294 -14
  351. package/src/index.ts +44 -0
  352. package/src/interceptors/index.ts +3 -0
  353. package/src/interceptors/locusRetry.ts +67 -0
  354. package/src/interpretation/README.md +60 -0
  355. package/src/interpretation/collection.ts +19 -0
  356. package/src/interpretation/index.ts +332 -0
  357. package/src/interpretation/siLanguage.ts +18 -0
  358. package/src/locus-info/controlsUtils.ts +110 -0
  359. package/src/locus-info/index.ts +449 -61
  360. package/src/locus-info/infoUtils.ts +14 -2
  361. package/src/locus-info/mediaSharesUtils.ts +64 -0
  362. package/src/locus-info/parser.ts +258 -47
  363. package/src/locus-info/selfUtils.ts +85 -2
  364. package/src/media/index.ts +153 -370
  365. package/src/media/properties.ts +106 -136
  366. package/src/media/util.ts +0 -21
  367. package/src/mediaQualityMetrics/config.ts +244 -377
  368. package/src/meeting/in-meeting-actions.ts +176 -0
  369. package/src/meeting/index.ts +3944 -2489
  370. package/src/meeting/locusMediaRequest.ts +313 -0
  371. package/src/meeting/muteState.ts +224 -138
  372. package/src/meeting/request.ts +207 -127
  373. package/src/meeting/request.type.ts +13 -0
  374. package/src/meeting/util.ts +590 -423
  375. package/src/meeting-info/index.ts +81 -8
  376. package/src/meeting-info/meeting-info-v2.ts +163 -13
  377. package/src/meeting-info/util.ts +1 -1
  378. package/src/meeting-info/utilv2.ts +28 -28
  379. package/src/meetings/collection.ts +33 -0
  380. package/src/meetings/index.ts +487 -126
  381. package/src/meetings/meetings.types.ts +12 -0
  382. package/src/meetings/request.ts +2 -0
  383. package/src/meetings/util.ts +116 -5
  384. package/src/member/index.ts +43 -1
  385. package/src/member/types.ts +38 -0
  386. package/src/member/util.ts +125 -28
  387. package/src/members/collection.ts +8 -0
  388. package/src/members/index.ts +187 -52
  389. package/src/members/request.ts +87 -27
  390. package/src/members/util.ts +332 -291
  391. package/src/metrics/constants.ts +15 -6
  392. package/src/metrics/index.ts +1 -471
  393. package/src/multistream/mediaRequestManager.ts +440 -0
  394. package/src/multistream/receiveSlot.ts +184 -0
  395. package/src/multistream/receiveSlotManager.ts +166 -0
  396. package/src/multistream/remoteMedia.ts +254 -0
  397. package/src/multistream/remoteMediaGroup.ts +284 -0
  398. package/src/multistream/remoteMediaManager.ts +1145 -0
  399. package/src/multistream/sendSlotManager.ts +170 -0
  400. package/src/networkQualityMonitor/index.ts +6 -6
  401. package/src/reachability/clusterReachability.ts +320 -0
  402. package/src/reachability/index.ts +243 -347
  403. package/src/reachability/request.ts +17 -8
  404. package/src/reachability/util.ts +24 -0
  405. package/src/reactions/constants.ts +4 -0
  406. package/src/reactions/reactions.ts +4 -4
  407. package/src/reactions/reactions.type.ts +30 -4
  408. package/src/reconnection-manager/index.ts +168 -156
  409. package/src/recording-controller/index.ts +20 -3
  410. package/src/recording-controller/util.ts +26 -9
  411. package/src/roap/index.ts +98 -241
  412. package/src/roap/request.ts +74 -148
  413. package/src/roap/turnDiscovery.ts +62 -56
  414. package/src/rtcMetrics/constants.ts +3 -0
  415. package/src/rtcMetrics/index.ts +124 -0
  416. package/src/statsAnalyzer/global.ts +1 -84
  417. package/src/statsAnalyzer/index.ts +477 -643
  418. package/src/statsAnalyzer/mqaUtil.ts +115 -114
  419. package/src/webinar/collection.ts +31 -0
  420. package/src/webinar/index.ts +62 -0
  421. package/test/integration/spec/converged-space-meetings.js +233 -0
  422. package/test/integration/spec/journey.js +320 -264
  423. package/test/integration/spec/space-meeting.js +77 -4
  424. package/test/unit/spec/annotation/index.ts +418 -0
  425. package/test/unit/spec/breakouts/breakout.ts +237 -0
  426. package/test/unit/spec/breakouts/collection.ts +15 -0
  427. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  428. package/test/unit/spec/breakouts/events.ts +89 -0
  429. package/test/unit/spec/breakouts/index.ts +1790 -0
  430. package/test/unit/spec/breakouts/request.ts +104 -0
  431. package/test/unit/spec/breakouts/utils.js +72 -0
  432. package/test/unit/spec/common/queue.js +31 -2
  433. package/test/unit/spec/controls-options-manager/index.js +163 -0
  434. package/test/unit/spec/controls-options-manager/util.js +576 -60
  435. package/test/unit/spec/fixture/locus.js +1 -0
  436. package/test/unit/spec/interceptors/locusRetry.ts +131 -0
  437. package/test/unit/spec/interpretation/collection.ts +15 -0
  438. package/test/unit/spec/interpretation/index.ts +589 -0
  439. package/test/unit/spec/interpretation/siLanguage.ts +28 -0
  440. package/test/unit/spec/locus-info/controlsUtils.js +323 -30
  441. package/test/unit/spec/locus-info/index.js +1390 -16
  442. package/test/unit/spec/locus-info/infoUtils.js +54 -16
  443. package/test/unit/spec/locus-info/lib/SeqCmp.json +16 -0
  444. package/test/unit/spec/locus-info/lib/selfConstant.js +48 -0
  445. package/test/unit/spec/locus-info/mediaSharesUtils.ts +32 -0
  446. package/test/unit/spec/locus-info/parser.js +116 -35
  447. package/test/unit/spec/locus-info/selfUtils.js +275 -0
  448. package/test/unit/spec/media/index.ts +290 -0
  449. package/test/unit/spec/media/properties.ts +75 -84
  450. package/test/unit/spec/meeting/in-meeting-actions.ts +86 -0
  451. package/test/unit/spec/meeting/index.js +8187 -2769
  452. package/test/unit/spec/meeting/locusMediaRequest.ts +442 -0
  453. package/test/unit/spec/meeting/muteState.js +409 -213
  454. package/test/unit/spec/meeting/request.js +512 -42
  455. package/test/unit/spec/meeting/utils.js +741 -24
  456. package/test/unit/spec/meeting-info/index.js +300 -0
  457. package/test/unit/spec/meeting-info/meetinginfov2.js +527 -5
  458. package/test/unit/spec/meeting-info/utilv2.js +21 -0
  459. package/test/unit/spec/meetings/collection.js +26 -0
  460. package/test/unit/spec/meetings/index.js +1313 -243
  461. package/test/unit/spec/meetings/utils.js +202 -2
  462. package/test/unit/spec/member/index.js +32 -9
  463. package/test/unit/spec/member/util.js +499 -61
  464. package/test/unit/spec/members/index.js +394 -5
  465. package/test/unit/spec/members/request.js +206 -27
  466. package/test/unit/spec/members/utils.js +173 -38
  467. package/test/unit/spec/metrics/index.js +1 -50
  468. package/test/unit/spec/multistream/mediaRequestManager.ts +1418 -0
  469. package/test/unit/spec/multistream/receiveSlot.ts +163 -0
  470. package/test/unit/spec/multistream/receiveSlotManager.ts +203 -0
  471. package/test/unit/spec/multistream/remoteMedia.ts +255 -0
  472. package/test/unit/spec/multistream/remoteMediaGroup.ts +662 -0
  473. package/test/unit/spec/multistream/remoteMediaManager.ts +1924 -0
  474. package/test/unit/spec/multistream/sendSlotManager.ts +242 -0
  475. package/test/unit/spec/networkQualityMonitor/index.js +4 -4
  476. package/test/unit/spec/reachability/clusterReachability.ts +279 -0
  477. package/test/unit/spec/reachability/index.ts +531 -24
  478. package/test/unit/spec/reachability/request.js +68 -0
  479. package/test/unit/spec/reachability/util.ts +40 -0
  480. package/test/unit/spec/reconnection-manager/index.js +162 -24
  481. package/test/unit/spec/recording-controller/index.js +293 -218
  482. package/test/unit/spec/recording-controller/util.js +223 -96
  483. package/test/unit/spec/roap/index.ts +200 -76
  484. package/test/unit/spec/roap/request.ts +255 -0
  485. package/test/unit/spec/roap/turnDiscovery.ts +86 -48
  486. package/test/unit/spec/rtcMetrics/index.ts +93 -0
  487. package/test/unit/spec/stats-analyzer/index.js +261 -167
  488. package/test/unit/spec/webinar/collection.ts +13 -0
  489. package/test/unit/spec/webinar/index.ts +60 -0
  490. package/test/utils/constants.js +9 -0
  491. package/test/utils/integrationTestUtils.js +46 -0
  492. package/test/utils/testUtils.js +0 -45
  493. package/test/utils/webex-config.js +4 -0
  494. package/test/utils/webex-test-users.js +7 -3
  495. package/dist/common/errors/reclaim-host-role-error.js.map +0 -1
  496. package/dist/meeting/effectsState.d.ts +0 -42
  497. package/dist/meeting/effectsState.js +0 -260
  498. package/dist/meeting/effectsState.js.map +0 -1
  499. package/dist/metrics/config.d.ts +0 -169
  500. package/dist/metrics/config.js +0 -289
  501. package/dist/metrics/config.js.map +0 -1
  502. package/dist/peer-connection-manager/index.d.ts +0 -6
  503. package/dist/peer-connection-manager/index.js +0 -671
  504. package/dist/peer-connection-manager/index.js.map +0 -1
  505. package/dist/peer-connection-manager/util.d.ts +0 -6
  506. package/dist/peer-connection-manager/util.js +0 -110
  507. package/dist/peer-connection-manager/util.js.map +0 -1
  508. package/dist/roap/collection.d.ts +0 -10
  509. package/dist/roap/collection.js +0 -63
  510. package/dist/roap/collection.js.map +0 -1
  511. package/dist/roap/handler.d.ts +0 -47
  512. package/dist/roap/handler.js +0 -279
  513. package/dist/roap/handler.js.map +0 -1
  514. package/dist/roap/state.d.ts +0 -9
  515. package/dist/roap/state.js +0 -127
  516. package/dist/roap/state.js.map +0 -1
  517. package/dist/roap/util.d.ts +0 -2
  518. package/dist/roap/util.js +0 -76
  519. package/dist/roap/util.js.map +0 -1
  520. package/src/index.js +0 -15
  521. package/src/meeting/effectsState.ts +0 -209
  522. package/src/metrics/config.ts +0 -485
  523. package/src/peer-connection-manager/index.ts +0 -847
  524. package/src/peer-connection-manager/util.ts +0 -119
  525. package/src/roap/collection.ts +0 -62
  526. package/src/roap/handler.ts +0 -294
  527. package/src/roap/state.ts +0 -156
  528. package/src/roap/util.ts +0 -100
  529. package/test/unit/spec/meeting/effectsState.js +0 -281
  530. package/test/unit/spec/peerconnection-manager/index.js +0 -218
  531. package/test/unit/spec/peerconnection-manager/utils.js +0 -49
  532. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +0 -388
  533. package/test/unit/spec/roap/util.js +0 -30
  534. /package/dist/common/errors/{reclaim-host-role-error.d.ts → reclaim-host-role-errors.d.ts} +0 -0
  535. /package/src/common/errors/{reclaim-host-role-error.ts → reclaim-host-role-errors.ts} +0 -0
@@ -1,28 +1,318 @@
1
1
  "use strict";
2
2
 
3
3
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
+ var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
4
5
  _Object$defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
10
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
8
11
  var _constants = require("../constants");
9
- var canSetMuteOnEntry = function canSetMuteOnEntry(displayHints) {
10
- return displayHints.includes(_constants.DISPLAY_HINTS.ENABLE_MUTE_ON_ENTRY);
11
- };
12
- var canSetDisallowUnmute = function canSetDisallowUnmute(displayHints) {
13
- return displayHints.includes(_constants.DISPLAY_HINTS.ENABLE_HARD_MUTE);
14
- };
15
- var canUnsetMuteOnEntry = function canUnsetMuteOnEntry(displayHints) {
16
- return displayHints.includes(_constants.DISPLAY_HINTS.DISABLE_MUTE_ON_ENTRY);
17
- };
18
- var canUnsetDisallowUnmute = function canUnsetDisallowUnmute(displayHints) {
19
- return displayHints.includes(_constants.DISPLAY_HINTS.DISABLE_HARD_MUTE);
20
- };
21
- var _default = {
22
- canSetMuteOnEntry: canSetMuteOnEntry,
23
- canSetDisallowUnmute: canSetDisallowUnmute,
24
- canUnsetMuteOnEntry: canUnsetMuteOnEntry,
25
- canUnsetDisallowUnmute: canUnsetDisallowUnmute
26
- };
27
- exports.default = _default;
12
+ var _enums = require("./enums");
13
+ /**
14
+ * The Controls Options Manager utilities
15
+ *
16
+ * @internal
17
+ */
18
+ var Utils = /*#__PURE__*/function () {
19
+ function Utils() {
20
+ (0, _classCallCheck2.default)(this, Utils);
21
+ }
22
+ (0, _createClass2.default)(Utils, null, [{
23
+ key: "canSetMuteOnEntry",
24
+ value:
25
+ /**
26
+ * Validate if enabling mute on entry can be set.
27
+ *
28
+ * @param {Array<string>} displayHints - Display Hints to use when validating.
29
+ * @returns {boolean} - True if the action is allowed.
30
+ */
31
+ function canSetMuteOnEntry(displayHints) {
32
+ return displayHints.includes(_constants.DISPLAY_HINTS.ENABLE_MUTE_ON_ENTRY);
33
+ }
34
+
35
+ /**
36
+ * Validate if allowing unmuting can be set.
37
+ *
38
+ * @param {Array<string>} displayHints - Display Hints to use when validating.
39
+ * @returns {boolean} - True if the action is allowed.
40
+ */
41
+ }, {
42
+ key: "canSetDisallowUnmute",
43
+ value: function canSetDisallowUnmute(displayHints) {
44
+ return displayHints.includes(_constants.DISPLAY_HINTS.ENABLE_HARD_MUTE);
45
+ }
46
+
47
+ /**
48
+ * Validate if disabling mute on entry can be set.
49
+ *
50
+ * @param {Array<string>} displayHints - Display Hints to use when validating.
51
+ * @returns {boolean} - True if the action is allowed.
52
+ */
53
+ }, {
54
+ key: "canUnsetMuteOnEntry",
55
+ value: function canUnsetMuteOnEntry(displayHints) {
56
+ return displayHints.includes(_constants.DISPLAY_HINTS.DISABLE_MUTE_ON_ENTRY);
57
+ }
58
+
59
+ /**
60
+ * Validate if enabling muting can be set.
61
+ *
62
+ * @param {Array<string>} displayHints - Display Hints to use when validating.
63
+ * @returns {boolean} - True if the action is allowed.
64
+ */
65
+ }, {
66
+ key: "canUnsetDisallowUnmute",
67
+ value: function canUnsetDisallowUnmute(displayHints) {
68
+ return displayHints.includes(_constants.DISPLAY_HINTS.DISABLE_HARD_MUTE);
69
+ }
70
+
71
+ /**
72
+ * Validate if muting all can be set.
73
+ *
74
+ * @param {Array<string>} displayHints - Display Hints to use when validating.
75
+ * @returns {boolean} - True if the action is allowed.
76
+ */
77
+ }, {
78
+ key: "canSetMuted",
79
+ value: function canSetMuted(displayHints) {
80
+ return displayHints.includes(_constants.DISPLAY_HINTS.MUTE_ALL);
81
+ }
82
+
83
+ /**
84
+ * Validate if unmuting all can be set.
85
+ *
86
+ * @param {Array<string>} displayHints - Display Hints to use when validating.
87
+ * @returns {boolean} - True if the action is allowed.
88
+ */
89
+ }, {
90
+ key: "canUnsetMuted",
91
+ value: function canUnsetMuted(displayHints) {
92
+ return displayHints.includes(_constants.DISPLAY_HINTS.UNMUTE_ALL);
93
+ }
94
+
95
+ /**
96
+ * Validate an array of hints are allowed based on a full collection of hints.
97
+ *
98
+ * @param {Object} config - Configuration Object.
99
+ * @param {Array<string>} config.requiredHints - Hints required for validation.
100
+ * @param {Array<string>} config.displayHints - All available hints.
101
+ * @returns {boolean} - True if all of the actions are allowed.
102
+ */
103
+ }, {
104
+ key: "hasHints",
105
+ value: function hasHints(config) {
106
+ var requiredHints = config.requiredHints,
107
+ displayHints = config.displayHints;
108
+ return requiredHints.every(function (hint) {
109
+ return displayHints.includes(hint);
110
+ });
111
+ }
112
+
113
+ /**
114
+ * Validate that the self policy object contains the required policies.
115
+ *
116
+ * @param {Object} config - Configuration Object.
117
+ * @param {Array<string>} config.requiredPolicies - Policies required for validation.
118
+ * @param {Array<string>} config.policies - All available policies.
119
+ * @returns {boolean} - True if all of the actions are allowed.
120
+ */
121
+ }, {
122
+ key: "hasPolicies",
123
+ value: function hasPolicies(config) {
124
+ var requiredPolicies = config.requiredPolicies,
125
+ _config$policies = config.policies,
126
+ policies = _config$policies === void 0 ? {} : _config$policies;
127
+ return requiredPolicies.every(function (hint) {
128
+ return policies[hint];
129
+ });
130
+ }
131
+
132
+ /**
133
+ * Validate if an audio-scoped control is allowed to be sent to the service.
134
+ *
135
+ * @param {ControlConfig<AudioProperties>} control - Audio control config to validate.
136
+ * @param {Array<string>} displayHints - All available hints.
137
+ * @returns {boolean} - True if all of the actions are allowed.
138
+ */
139
+ }, {
140
+ key: "canUpdateAudio",
141
+ value: function canUpdateAudio(control, displayHints) {
142
+ var requiredHints = [];
143
+ if (control.properties.muted === true) {
144
+ requiredHints.push(_constants.DISPLAY_HINTS.MUTE_ALL);
145
+ }
146
+ if (control.properties.muted === false) {
147
+ requiredHints.push(_constants.DISPLAY_HINTS.UNMUTE_ALL);
148
+ }
149
+ if (control.properties.disallowUnmute === true) {
150
+ requiredHints.push(_constants.DISPLAY_HINTS.ENABLE_HARD_MUTE);
151
+ }
152
+ if (control.properties.disallowUnmute === false) {
153
+ requiredHints.push(_constants.DISPLAY_HINTS.DISABLE_HARD_MUTE);
154
+ }
155
+ if (control.properties.muteOnEntry === true) {
156
+ requiredHints.push(_constants.DISPLAY_HINTS.ENABLE_MUTE_ON_ENTRY);
157
+ }
158
+ if (control.properties.muteOnEntry === false) {
159
+ requiredHints.push(_constants.DISPLAY_HINTS.DISABLE_MUTE_ON_ENTRY);
160
+ }
161
+ return Utils.hasHints({
162
+ requiredHints: requiredHints,
163
+ displayHints: displayHints
164
+ });
165
+ }
166
+ }, {
167
+ key: "canUpdateRaiseHand",
168
+ value: function canUpdateRaiseHand(control, displayHints) {
169
+ var requiredHints = [];
170
+ if (control.properties.enabled === true) {
171
+ requiredHints.push(_constants.DISPLAY_HINTS.ENABLE_RAISE_HAND);
172
+ }
173
+ if (control.properties.enabled === false) {
174
+ requiredHints.push(_constants.DISPLAY_HINTS.DISABLE_RAISE_HAND);
175
+ }
176
+ return Utils.hasHints({
177
+ requiredHints: requiredHints,
178
+ displayHints: displayHints
179
+ });
180
+ }
181
+
182
+ /**
183
+ * Validate if an reactions-scoped control is allowed to be sent to the service.
184
+ *
185
+ * @param {ControlConfig<ReactionsProperties>} control - Reaction control config to validate.
186
+ * @param {Array<string>} displayHints - All available hints.
187
+ * @returns {boolean} - True if all of the actions are allowed.
188
+ */
189
+ }, {
190
+ key: "canUpdateReactions",
191
+ value: function canUpdateReactions(control, displayHints) {
192
+ var requiredHints = [];
193
+
194
+ // This additional if statement avoids the display hint discrepency due to
195
+ // the service blocking partial requests with this property only.
196
+ if (control.properties.showDisplayNameWithReactions !== undefined) {
197
+ if (control.properties.showDisplayNameWithReactions === true) {
198
+ requiredHints.push(_constants.DISPLAY_HINTS.ENABLE_SHOW_DISPLAY_NAME);
199
+ }
200
+ if (control.properties.showDisplayNameWithReactions === false) {
201
+ requiredHints.push(_constants.DISPLAY_HINTS.DISABLE_SHOW_DISPLAY_NAME);
202
+ }
203
+ } else {
204
+ if (control.properties.enabled === true) {
205
+ requiredHints.push(_constants.DISPLAY_HINTS.ENABLE_REACTIONS);
206
+ }
207
+ if (control.properties.enabled === false) {
208
+ requiredHints.push(_constants.DISPLAY_HINTS.DISABLE_REACTIONS);
209
+ }
210
+ }
211
+ return Utils.hasHints({
212
+ requiredHints: requiredHints,
213
+ displayHints: displayHints
214
+ });
215
+ }
216
+
217
+ /**
218
+ * Validate if an share-control-scoped control is allowed to be sent to the service.
219
+ *
220
+ * @param {Array<string>} displayHints - All available hints.
221
+ * @returns {boolean} - True if all of the actions are allowed.
222
+ */
223
+ }, {
224
+ key: "canUpdateShareControl",
225
+ value: function canUpdateShareControl(displayHints) {
226
+ return Utils.hasHints({
227
+ requiredHints: [_constants.DISPLAY_HINTS.SHARE_CONTROL],
228
+ displayHints: displayHints
229
+ });
230
+ }
231
+
232
+ /**
233
+ * Validate if an view-the-participants-list-scoped control is allowed to be sent to the service.
234
+ *
235
+ * @param {ControlConfig<ViewTheParticipantListProperties>} control - View Participants List control config to validate.
236
+ * @param {Array<string>} displayHints - All available hints.
237
+ * @returns {boolean} - True if all of the actions are allowed.
238
+ */
239
+ }, {
240
+ key: "canUpdateViewTheParticipantsList",
241
+ value: function canUpdateViewTheParticipantsList(control, displayHints) {
242
+ var requiredHints = [];
243
+ if (control.properties.enabled === true) {
244
+ requiredHints.push(_constants.DISPLAY_HINTS.ENABLE_VIEW_THE_PARTICIPANT_LIST);
245
+ }
246
+ if (control.properties.enabled === false) {
247
+ requiredHints.push(_constants.DISPLAY_HINTS.DISABLE_VIEW_THE_PARTICIPANT_LIST);
248
+ }
249
+ return Utils.hasHints({
250
+ requiredHints: requiredHints,
251
+ displayHints: displayHints
252
+ });
253
+ }
254
+
255
+ /**
256
+ * Validate if a video-scoped control is allowed to be sent to the service.
257
+ *
258
+ * @param {ControlConfig<VideoProperties>} control - Video control config to validate.
259
+ * @param {Array<string>} displayHints - All available hints.
260
+ * @returns {boolean} - True if all of the actions are allowed.
261
+ */
262
+ }, {
263
+ key: "canUpdateVideo",
264
+ value: function canUpdateVideo(control, displayHints) {
265
+ var requiredHints = [];
266
+ if (control.properties.enabled === true) {
267
+ requiredHints.push(_constants.DISPLAY_HINTS.ENABLE_VIDEO);
268
+ }
269
+ if (control.properties.enabled === false) {
270
+ requiredHints.push(_constants.DISPLAY_HINTS.DISABLE_VIDEO);
271
+ }
272
+ return Utils.hasHints({
273
+ requiredHints: requiredHints,
274
+ displayHints: displayHints
275
+ });
276
+ }
277
+
278
+ /**
279
+ * Validate that a control can be sent to the service based on the provided
280
+ * display hints.
281
+ *
282
+ * @param {ControlConfig} control - Control to validate.
283
+ * @param {Array<string>} displayHints - All available hints.
284
+ * @returns {boolean} - True if all of the actions are allowed.
285
+ */
286
+ }, {
287
+ key: "canUpdate",
288
+ value: function canUpdate(control, displayHints) {
289
+ var determinant;
290
+ switch (control.scope) {
291
+ case _enums.Control.audio:
292
+ determinant = Utils.canUpdateAudio(control, displayHints);
293
+ break;
294
+ case _enums.Control.raiseHand:
295
+ determinant = Utils.canUpdateRaiseHand(control, displayHints);
296
+ break;
297
+ case _enums.Control.reactions:
298
+ determinant = Utils.canUpdateReactions(control, displayHints);
299
+ break;
300
+ case _enums.Control.shareControl:
301
+ determinant = Utils.canUpdateShareControl(displayHints);
302
+ break;
303
+ case _enums.Control.video:
304
+ determinant = Utils.canUpdateVideo(control, displayHints);
305
+ break;
306
+ case _enums.Control.viewTheParticipantList:
307
+ determinant = Utils.canUpdateViewTheParticipantsList(control, displayHints);
308
+ break;
309
+ default:
310
+ determinant = false;
311
+ }
312
+ return determinant;
313
+ }
314
+ }]);
315
+ return Utils;
316
+ }();
317
+ var _default = exports.default = Utils;
28
318
  //# sourceMappingURL=util.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","require","canSetMuteOnEntry","displayHints","includes","DISPLAY_HINTS","ENABLE_MUTE_ON_ENTRY","canSetDisallowUnmute","ENABLE_HARD_MUTE","canUnsetMuteOnEntry","DISABLE_MUTE_ON_ENTRY","canUnsetDisallowUnmute","DISABLE_HARD_MUTE","_default","exports","default"],"sources":["util.ts"],"sourcesContent":["import {DISPLAY_HINTS} from '../constants';\n\nconst canSetMuteOnEntry = (displayHints: Array<string>): boolean =>\n displayHints.includes(DISPLAY_HINTS.ENABLE_MUTE_ON_ENTRY);\n\nconst canSetDisallowUnmute = (displayHints: Array<string>): boolean =>\n displayHints.includes(DISPLAY_HINTS.ENABLE_HARD_MUTE);\n\nconst canUnsetMuteOnEntry = (displayHints: Array<string>): boolean =>\n displayHints.includes(DISPLAY_HINTS.DISABLE_MUTE_ON_ENTRY);\n\nconst canUnsetDisallowUnmute = (displayHints: Array<string>): boolean =>\n displayHints.includes(DISPLAY_HINTS.DISABLE_HARD_MUTE);\n\nexport default {\n canSetMuteOnEntry,\n canSetDisallowUnmute,\n canUnsetMuteOnEntry,\n canUnsetDisallowUnmute,\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,YAA2B;EAAA,OACpDA,YAAY,CAACC,QAAQ,CAACC,wBAAa,CAACC,oBAAoB,CAAC;AAAA;AAE3D,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAIJ,YAA2B;EAAA,OACvDA,YAAY,CAACC,QAAQ,CAACC,wBAAa,CAACG,gBAAgB,CAAC;AAAA;AAEvD,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIN,YAA2B;EAAA,OACtDA,YAAY,CAACC,QAAQ,CAACC,wBAAa,CAACK,qBAAqB,CAAC;AAAA;AAE5D,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAIR,YAA2B;EAAA,OACzDA,YAAY,CAACC,QAAQ,CAACC,wBAAa,CAACO,iBAAiB,CAAC;AAAA;AAAC,IAAAC,QAAA,GAE1C;EACbX,iBAAiB,EAAjBA,iBAAiB;EACjBK,oBAAoB,EAApBA,oBAAoB;EACpBE,mBAAmB,EAAnBA,mBAAmB;EACnBE,sBAAsB,EAAtBA;AACF,CAAC;AAAAG,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
1
+ {"version":3,"names":["_constants","require","_enums","Utils","_classCallCheck2","default","_createClass2","key","value","canSetMuteOnEntry","displayHints","includes","DISPLAY_HINTS","ENABLE_MUTE_ON_ENTRY","canSetDisallowUnmute","ENABLE_HARD_MUTE","canUnsetMuteOnEntry","DISABLE_MUTE_ON_ENTRY","canUnsetDisallowUnmute","DISABLE_HARD_MUTE","canSetMuted","MUTE_ALL","canUnsetMuted","UNMUTE_ALL","hasHints","config","requiredHints","every","hint","hasPolicies","requiredPolicies","_config$policies","policies","canUpdateAudio","control","properties","muted","push","disallowUnmute","muteOnEntry","canUpdateRaiseHand","enabled","ENABLE_RAISE_HAND","DISABLE_RAISE_HAND","canUpdateReactions","showDisplayNameWithReactions","undefined","ENABLE_SHOW_DISPLAY_NAME","DISABLE_SHOW_DISPLAY_NAME","ENABLE_REACTIONS","DISABLE_REACTIONS","canUpdateShareControl","SHARE_CONTROL","canUpdateViewTheParticipantsList","ENABLE_VIEW_THE_PARTICIPANT_LIST","DISABLE_VIEW_THE_PARTICIPANT_LIST","canUpdateVideo","ENABLE_VIDEO","DISABLE_VIDEO","canUpdate","determinant","scope","Control","audio","raiseHand","reactions","shareControl","video","viewTheParticipantList","_default","exports"],"sources":["util.ts"],"sourcesContent":["import {DISPLAY_HINTS} from '../constants';\nimport {Control} from './enums';\nimport {\n ControlConfig,\n AudioProperties,\n RaiseHandProperties,\n ReactionsProperties,\n ViewTheParticipantListProperties,\n VideoProperties,\n} from './types';\n\n/**\n * The Controls Options Manager utilities\n *\n * @internal\n */\nclass Utils {\n /**\n * Validate if enabling mute on entry can be set.\n *\n * @param {Array<string>} displayHints - Display Hints to use when validating.\n * @returns {boolean} - True if the action is allowed.\n */\n public static canSetMuteOnEntry(displayHints: Array<string>): boolean {\n return displayHints.includes(DISPLAY_HINTS.ENABLE_MUTE_ON_ENTRY);\n }\n\n /**\n * Validate if allowing unmuting can be set.\n *\n * @param {Array<string>} displayHints - Display Hints to use when validating.\n * @returns {boolean} - True if the action is allowed.\n */\n public static canSetDisallowUnmute(displayHints: Array<string>): boolean {\n return displayHints.includes(DISPLAY_HINTS.ENABLE_HARD_MUTE);\n }\n\n /**\n * Validate if disabling mute on entry can be set.\n *\n * @param {Array<string>} displayHints - Display Hints to use when validating.\n * @returns {boolean} - True if the action is allowed.\n */\n public static canUnsetMuteOnEntry(displayHints: Array<string>): boolean {\n return displayHints.includes(DISPLAY_HINTS.DISABLE_MUTE_ON_ENTRY);\n }\n\n /**\n * Validate if enabling muting can be set.\n *\n * @param {Array<string>} displayHints - Display Hints to use when validating.\n * @returns {boolean} - True if the action is allowed.\n */\n public static canUnsetDisallowUnmute(displayHints: Array<string>): boolean {\n return displayHints.includes(DISPLAY_HINTS.DISABLE_HARD_MUTE);\n }\n\n /**\n * Validate if muting all can be set.\n *\n * @param {Array<string>} displayHints - Display Hints to use when validating.\n * @returns {boolean} - True if the action is allowed.\n */\n public static canSetMuted(displayHints: Array<string>): boolean {\n return displayHints.includes(DISPLAY_HINTS.MUTE_ALL);\n }\n\n /**\n * Validate if unmuting all can be set.\n *\n * @param {Array<string>} displayHints - Display Hints to use when validating.\n * @returns {boolean} - True if the action is allowed.\n */\n public static canUnsetMuted(displayHints: Array<string>): boolean {\n return displayHints.includes(DISPLAY_HINTS.UNMUTE_ALL);\n }\n\n /**\n * Validate an array of hints are allowed based on a full collection of hints.\n *\n * @param {Object} config - Configuration Object.\n * @param {Array<string>} config.requiredHints - Hints required for validation.\n * @param {Array<string>} config.displayHints - All available hints.\n * @returns {boolean} - True if all of the actions are allowed.\n */\n public static hasHints(config: {requiredHints: Array<string>; displayHints: Array<string>}) {\n const {requiredHints, displayHints} = config;\n\n return requiredHints.every((hint) => displayHints.includes(hint));\n }\n\n /**\n * Validate that the self policy object contains the required policies.\n *\n * @param {Object} config - Configuration Object.\n * @param {Array<string>} config.requiredPolicies - Policies required for validation.\n * @param {Array<string>} config.policies - All available policies.\n * @returns {boolean} - True if all of the actions are allowed.\n */\n public static hasPolicies(config: {requiredPolicies: Array<string>; policies: Array<string>}) {\n const {requiredPolicies, policies = {}} = config;\n\n return requiredPolicies.every((hint) => policies[hint]);\n }\n\n /**\n * Validate if an audio-scoped control is allowed to be sent to the service.\n *\n * @param {ControlConfig<AudioProperties>} control - Audio control config to validate.\n * @param {Array<string>} displayHints - All available hints.\n * @returns {boolean} - True if all of the actions are allowed.\n */\n public static canUpdateAudio(\n control: ControlConfig<AudioProperties>,\n displayHints: Array<string>\n ) {\n const requiredHints = [];\n\n if (control.properties.muted === true) {\n requiredHints.push(DISPLAY_HINTS.MUTE_ALL);\n }\n if (control.properties.muted === false) {\n requiredHints.push(DISPLAY_HINTS.UNMUTE_ALL);\n }\n if (control.properties.disallowUnmute === true) {\n requiredHints.push(DISPLAY_HINTS.ENABLE_HARD_MUTE);\n }\n if (control.properties.disallowUnmute === false) {\n requiredHints.push(DISPLAY_HINTS.DISABLE_HARD_MUTE);\n }\n if (control.properties.muteOnEntry === true) {\n requiredHints.push(DISPLAY_HINTS.ENABLE_MUTE_ON_ENTRY);\n }\n if (control.properties.muteOnEntry === false) {\n requiredHints.push(DISPLAY_HINTS.DISABLE_MUTE_ON_ENTRY);\n }\n\n return Utils.hasHints({requiredHints, displayHints});\n }\n\n public static canUpdateRaiseHand(\n control: ControlConfig<RaiseHandProperties>,\n displayHints: Array<string>\n ) {\n const requiredHints = [];\n\n if (control.properties.enabled === true) {\n requiredHints.push(DISPLAY_HINTS.ENABLE_RAISE_HAND);\n }\n if (control.properties.enabled === false) {\n requiredHints.push(DISPLAY_HINTS.DISABLE_RAISE_HAND);\n }\n\n return Utils.hasHints({requiredHints, displayHints});\n }\n\n /**\n * Validate if an reactions-scoped control is allowed to be sent to the service.\n *\n * @param {ControlConfig<ReactionsProperties>} control - Reaction control config to validate.\n * @param {Array<string>} displayHints - All available hints.\n * @returns {boolean} - True if all of the actions are allowed.\n */\n public static canUpdateReactions(\n control: ControlConfig<ReactionsProperties>,\n displayHints: Array<string>\n ) {\n const requiredHints = [];\n\n // This additional if statement avoids the display hint discrepency due to\n // the service blocking partial requests with this property only.\n if (control.properties.showDisplayNameWithReactions !== undefined) {\n if (control.properties.showDisplayNameWithReactions === true) {\n requiredHints.push(DISPLAY_HINTS.ENABLE_SHOW_DISPLAY_NAME);\n }\n if (control.properties.showDisplayNameWithReactions === false) {\n requiredHints.push(DISPLAY_HINTS.DISABLE_SHOW_DISPLAY_NAME);\n }\n } else {\n if (control.properties.enabled === true) {\n requiredHints.push(DISPLAY_HINTS.ENABLE_REACTIONS);\n }\n if (control.properties.enabled === false) {\n requiredHints.push(DISPLAY_HINTS.DISABLE_REACTIONS);\n }\n }\n\n return Utils.hasHints({requiredHints, displayHints});\n }\n\n /**\n * Validate if an share-control-scoped control is allowed to be sent to the service.\n *\n * @param {Array<string>} displayHints - All available hints.\n * @returns {boolean} - True if all of the actions are allowed.\n */\n public static canUpdateShareControl(displayHints: Array<string>) {\n return Utils.hasHints({requiredHints: [DISPLAY_HINTS.SHARE_CONTROL], displayHints});\n }\n\n /**\n * Validate if an view-the-participants-list-scoped control is allowed to be sent to the service.\n *\n * @param {ControlConfig<ViewTheParticipantListProperties>} control - View Participants List control config to validate.\n * @param {Array<string>} displayHints - All available hints.\n * @returns {boolean} - True if all of the actions are allowed.\n */\n public static canUpdateViewTheParticipantsList(\n control: ControlConfig<ViewTheParticipantListProperties>,\n displayHints: Array<string>\n ) {\n const requiredHints = [];\n\n if (control.properties.enabled === true) {\n requiredHints.push(DISPLAY_HINTS.ENABLE_VIEW_THE_PARTICIPANT_LIST);\n }\n if (control.properties.enabled === false) {\n requiredHints.push(DISPLAY_HINTS.DISABLE_VIEW_THE_PARTICIPANT_LIST);\n }\n\n return Utils.hasHints({requiredHints, displayHints});\n }\n\n /**\n * Validate if a video-scoped control is allowed to be sent to the service.\n *\n * @param {ControlConfig<VideoProperties>} control - Video control config to validate.\n * @param {Array<string>} displayHints - All available hints.\n * @returns {boolean} - True if all of the actions are allowed.\n */\n public static canUpdateVideo(\n control: ControlConfig<VideoProperties>,\n displayHints: Array<string>\n ) {\n const requiredHints = [];\n\n if (control.properties.enabled === true) {\n requiredHints.push(DISPLAY_HINTS.ENABLE_VIDEO);\n }\n if (control.properties.enabled === false) {\n requiredHints.push(DISPLAY_HINTS.DISABLE_VIDEO);\n }\n\n return Utils.hasHints({requiredHints, displayHints});\n }\n\n /**\n * Validate that a control can be sent to the service based on the provided\n * display hints.\n *\n * @param {ControlConfig} control - Control to validate.\n * @param {Array<string>} displayHints - All available hints.\n * @returns {boolean} - True if all of the actions are allowed.\n */\n public static canUpdate(control: ControlConfig, displayHints: Array<string>) {\n let determinant: boolean;\n\n switch (control.scope) {\n case Control.audio:\n determinant = Utils.canUpdateAudio(control as ControlConfig<AudioProperties>, displayHints);\n break;\n\n case Control.raiseHand:\n determinant = Utils.canUpdateRaiseHand(\n control as ControlConfig<RaiseHandProperties>,\n displayHints\n );\n break;\n\n case Control.reactions:\n determinant = Utils.canUpdateReactions(\n control as ControlConfig<ReactionsProperties>,\n displayHints\n );\n break;\n\n case Control.shareControl:\n determinant = Utils.canUpdateShareControl(displayHints);\n break;\n\n case Control.video:\n determinant = Utils.canUpdateVideo(control as ControlConfig<VideoProperties>, displayHints);\n break;\n\n case Control.viewTheParticipantList:\n determinant = Utils.canUpdateViewTheParticipantsList(\n control as ControlConfig<ViewTheParticipantListProperties>,\n displayHints\n );\n break;\n\n default:\n determinant = false;\n }\n\n return determinant;\n }\n}\n\nexport default Utils;\n"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,7 @@
1
+ import Meetings from './meetings';
2
+ export { getDevices, LocalStream, LocalDisplayStream, LocalSystemAudioStream, LocalStreamEventNames, StreamEventNames, type ServerMuteReason, LocalMicrophoneStreamEventNames, LocalCameraStreamEventNames, LocalMicrophoneStream, LocalCameraStream, createMicrophoneStream, createCameraStream, createDisplayStream, createDisplayStreamWithAudio, FacingMode, DisplaySurface, PresetCameraConstraints, type VideoContentHint, } from '@webex/media-helpers';
1
3
  export default Meetings;
2
- export * as CONSTANTS from "./constants";
3
- export { default as TriggerProxy } from "./common/events/trigger-proxy";
4
- import Meetings from "./meetings";
4
+ export * as CONSTANTS from './constants';
5
+ export * as REACTIONS from './reactions/reactions';
6
+ export { RemoteMedia } from './multistream/remoteMedia';
7
+ export { default as TriggerProxy } from './common/events/trigger-proxy';
package/dist/index.js CHANGED
@@ -9,26 +9,142 @@ _Object$defineProperty(exports, "__esModule", {
9
9
  value: true
10
10
  });
11
11
  exports.CONSTANTS = void 0;
12
+ _Object$defineProperty(exports, "DisplaySurface", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _mediaHelpers.DisplaySurface;
16
+ }
17
+ });
18
+ _Object$defineProperty(exports, "FacingMode", {
19
+ enumerable: true,
20
+ get: function get() {
21
+ return _mediaHelpers.FacingMode;
22
+ }
23
+ });
24
+ _Object$defineProperty(exports, "LocalCameraStream", {
25
+ enumerable: true,
26
+ get: function get() {
27
+ return _mediaHelpers.LocalCameraStream;
28
+ }
29
+ });
30
+ _Object$defineProperty(exports, "LocalCameraStreamEventNames", {
31
+ enumerable: true,
32
+ get: function get() {
33
+ return _mediaHelpers.LocalCameraStreamEventNames;
34
+ }
35
+ });
36
+ _Object$defineProperty(exports, "LocalDisplayStream", {
37
+ enumerable: true,
38
+ get: function get() {
39
+ return _mediaHelpers.LocalDisplayStream;
40
+ }
41
+ });
42
+ _Object$defineProperty(exports, "LocalMicrophoneStream", {
43
+ enumerable: true,
44
+ get: function get() {
45
+ return _mediaHelpers.LocalMicrophoneStream;
46
+ }
47
+ });
48
+ _Object$defineProperty(exports, "LocalMicrophoneStreamEventNames", {
49
+ enumerable: true,
50
+ get: function get() {
51
+ return _mediaHelpers.LocalMicrophoneStreamEventNames;
52
+ }
53
+ });
54
+ _Object$defineProperty(exports, "LocalStream", {
55
+ enumerable: true,
56
+ get: function get() {
57
+ return _mediaHelpers.LocalStream;
58
+ }
59
+ });
60
+ _Object$defineProperty(exports, "LocalStreamEventNames", {
61
+ enumerable: true,
62
+ get: function get() {
63
+ return _mediaHelpers.LocalStreamEventNames;
64
+ }
65
+ });
66
+ _Object$defineProperty(exports, "LocalSystemAudioStream", {
67
+ enumerable: true,
68
+ get: function get() {
69
+ return _mediaHelpers.LocalSystemAudioStream;
70
+ }
71
+ });
72
+ _Object$defineProperty(exports, "PresetCameraConstraints", {
73
+ enumerable: true,
74
+ get: function get() {
75
+ return _mediaHelpers.PresetCameraConstraints;
76
+ }
77
+ });
78
+ exports.REACTIONS = void 0;
79
+ _Object$defineProperty(exports, "RemoteMedia", {
80
+ enumerable: true,
81
+ get: function get() {
82
+ return _remoteMedia.RemoteMedia;
83
+ }
84
+ });
85
+ _Object$defineProperty(exports, "StreamEventNames", {
86
+ enumerable: true,
87
+ get: function get() {
88
+ return _mediaHelpers.StreamEventNames;
89
+ }
90
+ });
12
91
  _Object$defineProperty(exports, "TriggerProxy", {
13
92
  enumerable: true,
14
93
  get: function get() {
15
94
  return _triggerProxy.default;
16
95
  }
17
96
  });
97
+ _Object$defineProperty(exports, "createCameraStream", {
98
+ enumerable: true,
99
+ get: function get() {
100
+ return _mediaHelpers.createCameraStream;
101
+ }
102
+ });
103
+ _Object$defineProperty(exports, "createDisplayStream", {
104
+ enumerable: true,
105
+ get: function get() {
106
+ return _mediaHelpers.createDisplayStream;
107
+ }
108
+ });
109
+ _Object$defineProperty(exports, "createDisplayStreamWithAudio", {
110
+ enumerable: true,
111
+ get: function get() {
112
+ return _mediaHelpers.createDisplayStreamWithAudio;
113
+ }
114
+ });
115
+ _Object$defineProperty(exports, "createMicrophoneStream", {
116
+ enumerable: true,
117
+ get: function get() {
118
+ return _mediaHelpers.createMicrophoneStream;
119
+ }
120
+ });
18
121
  exports.default = void 0;
122
+ _Object$defineProperty(exports, "getDevices", {
123
+ enumerable: true,
124
+ get: function get() {
125
+ return _mediaHelpers.getDevices;
126
+ }
127
+ });
19
128
  var _webexCore = require("@webex/webex-core");
20
129
  var _meetings = _interopRequireDefault(require("./meetings"));
21
130
  var _config = _interopRequireDefault(require("./config"));
131
+ var _interceptors = require("./interceptors");
132
+ var _mediaHelpers = require("@webex/media-helpers");
22
133
  var _CONSTANTS = _interopRequireWildcard(require("./constants"));
23
134
  exports.CONSTANTS = _CONSTANTS;
135
+ var _REACTIONS = _interopRequireWildcard(require("./reactions/reactions"));
136
+ exports.REACTIONS = _REACTIONS;
137
+ var _remoteMedia = require("./multistream/remoteMedia");
24
138
  var _triggerProxy = _interopRequireDefault(require("./common/events/trigger-proxy"));
25
- function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
26
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
139
+ function _getRequireWildcardCache(e) { if ("function" != typeof _WeakMap) return null; var r = new _WeakMap(), t = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
140
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? _Object$getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? _Object$defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
27
141
  /* eslint-env browser */
28
142
 
29
143
  (0, _webexCore.registerPlugin)('meetings', _meetings.default, {
30
- config: _config.default
144
+ config: _config.default,
145
+ interceptors: {
146
+ LocusRetryStatusInterceptor: _interceptors.LocusRetryStatusInterceptor.create
147
+ }
31
148
  });
32
- var _default = _meetings.default;
33
- exports.default = _default;
149
+ var _default = exports.default = _meetings.default;
34
150
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["_webexCore","require","_meetings","_interopRequireDefault","_config","_CONSTANTS","_interopRequireWildcard","exports","CONSTANTS","_triggerProxy","_getRequireWildcardCache","nodeInterop","_WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","_Object$defineProperty","_Object$getOwnPropertyDescriptor","key","Object","prototype","hasOwnProperty","call","desc","set","registerPlugin","Meetings","config","_default"],"sources":["index.js"],"sourcesContent":["/* eslint-env browser */\nimport {registerPlugin} from '@webex/webex-core';\n\nimport Meetings from './meetings';\nimport config from './config';\n\nregisterPlugin('meetings', Meetings, {\n config,\n});\n\nexport default Meetings;\n\nexport * as CONSTANTS from './constants';\n\nexport {default as TriggerProxy} from './common/events/trigger-proxy';\n"],"mappings":";;;;;;;;;;;;;;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAD,sBAAA,CAAAF,OAAA;AAA8B,IAAAI,UAAA,GAAAC,uBAAA,CAAAL,OAAA;AAAAM,OAAA,CAAAC,SAAA,GAAAH,UAAA;AAU9B,IAAAI,aAAA,GAAAN,sBAAA,CAAAF,OAAA;AAAsE,SAAAS,yBAAAC,WAAA,eAAAC,QAAA,kCAAAC,iBAAA,OAAAD,QAAA,QAAAE,gBAAA,OAAAF,QAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAL,wBAAAS,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,4BAAAG,OAAA,EAAAH,GAAA,UAAAI,KAAA,GAAAT,wBAAA,CAAAC,WAAA,OAAAQ,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAL,GAAA,YAAAI,KAAA,CAAAE,GAAA,CAAAN,GAAA,SAAAO,MAAA,WAAAC,qBAAA,GAAAC,sBAAA,IAAAC,gCAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAC,MAAA,CAAAC,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAf,GAAA,EAAAW,GAAA,SAAAK,IAAA,GAAAR,qBAAA,GAAAE,gCAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAK,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,sBAAA,CAAAF,MAAA,EAAAI,GAAA,EAAAK,IAAA,YAAAT,MAAA,CAAAI,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAJ,MAAA,CAAAJ,OAAA,GAAAH,GAAA,MAAAI,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAjB,GAAA,EAAAO,MAAA,YAAAA,MAAA;AAdtE;;AAMA,IAAAW,yBAAc,EAAC,UAAU,EAAEC,iBAAQ,EAAE;EACnCC,MAAM,EAANA;AACF,CAAC,CAAC;AAAC,IAAAC,QAAA,GAEYF,iBAAQ;AAAA3B,OAAA,CAAAW,OAAA,GAAAkB,QAAA"}
1
+ {"version":3,"names":["_webexCore","require","_meetings","_interopRequireDefault","_config","_interceptors","_mediaHelpers","_CONSTANTS","_interopRequireWildcard","exports","CONSTANTS","_REACTIONS","REACTIONS","_remoteMedia","_triggerProxy","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","registerPlugin","Meetings","config","interceptors","LocusRetryStatusInterceptor","create","_default"],"sources":["index.ts"],"sourcesContent":["/* eslint-env browser */\nimport {registerPlugin} from '@webex/webex-core';\n\nimport Meetings from './meetings';\nimport config from './config';\nimport {LocusRetryStatusInterceptor} from './interceptors';\n\nregisterPlugin('meetings', Meetings, {\n config,\n interceptors: {\n LocusRetryStatusInterceptor: LocusRetryStatusInterceptor.create,\n },\n});\n\nexport {\n getDevices,\n LocalStream,\n LocalDisplayStream,\n LocalSystemAudioStream,\n LocalStreamEventNames,\n StreamEventNames,\n type ServerMuteReason,\n LocalMicrophoneStreamEventNames,\n LocalCameraStreamEventNames,\n LocalMicrophoneStream,\n LocalCameraStream,\n createMicrophoneStream,\n createCameraStream,\n createDisplayStream,\n createDisplayStreamWithAudio,\n FacingMode,\n DisplaySurface,\n PresetCameraConstraints,\n type VideoContentHint,\n} from '@webex/media-helpers';\n\nexport default Meetings;\n\nexport * as CONSTANTS from './constants';\nexport * as REACTIONS from './reactions/reactions';\n\nexport {RemoteMedia} from './multistream/remoteMedia';\n\nexport {default as TriggerProxy} from './common/events/trigger-proxy';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AASA,IAAAK,aAAA,GAAAL,OAAA;AAoB8B,IAAAM,UAAA,GAAAC,uBAAA,CAAAP,OAAA;AAAAQ,OAAA,CAAAC,SAAA,GAAAH,UAAA;AAAA,IAAAI,UAAA,GAAAH,uBAAA,CAAAP,OAAA;AAAAQ,OAAA,CAAAG,SAAA,GAAAD,UAAA;AAO9B,IAAAE,YAAA,GAAAZ,OAAA;AAEA,IAAAa,aAAA,GAAAX,sBAAA,CAAAF,OAAA;AAAsE,SAAAc,yBAAAC,CAAA,6BAAAC,QAAA,mBAAAC,CAAA,OAAAD,QAAA,IAAAE,CAAA,OAAAF,QAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAR,wBAAAQ,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,WAAAM,OAAA,EAAAN,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAI,GAAA,CAAAP,CAAA,UAAAG,CAAA,CAAAK,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,sBAAA,IAAAC,gCAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAC,MAAA,CAAAC,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAlB,CAAA,EAAAc,CAAA,SAAAK,CAAA,GAAAR,CAAA,GAAAE,gCAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAK,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,sBAAA,CAAAH,CAAA,EAAAK,CAAA,EAAAK,CAAA,IAAAV,CAAA,CAAAK,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAL,CAAA,CAAAH,OAAA,GAAAN,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAiB,GAAA,CAAApB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AA3CtE;;AAOA,IAAAY,yBAAc,EAAC,UAAU,EAAEC,iBAAQ,EAAE;EACnCC,MAAM,EAANA,eAAM;EACNC,YAAY,EAAE;IACZC,2BAA2B,EAAEA,yCAA2B,CAACC;EAC3D;AACF,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAlC,OAAA,CAAAa,OAAA,GAwBYgB,iBAAQ"}
@@ -0,0 +1,2 @@
1
+ import LocusRetryStatusInterceptor from './locusRetry';
2
+ export { LocusRetryStatusInterceptor };
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
+ var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
5
+ _Object$defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ _Object$defineProperty(exports, "LocusRetryStatusInterceptor", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _locusRetry.default;
12
+ }
13
+ });
14
+ var _locusRetry = _interopRequireDefault(require("./locusRetry"));
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_locusRetry","_interopRequireDefault","require"],"sources":["index.ts"],"sourcesContent":["import LocusRetryStatusInterceptor from './locusRetry';\n\nexport {LocusRetryStatusInterceptor};\n"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA"}
@@ -0,0 +1,27 @@
1
+ /*!
2
+ * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
3
+ */
4
+ import { Interceptor } from '@webex/http-core';
5
+ /**
6
+ * @class
7
+ */
8
+ export default class LocusRetryStatusInterceptor extends Interceptor {
9
+ /**
10
+ * @returns {LocusRetryStatusInterceptor}
11
+ */
12
+ static create(): LocusRetryStatusInterceptor;
13
+ /**
14
+ * Handle response errors
15
+ * @param {Object} options
16
+ * @param {WebexHttpError} reason
17
+ * @returns {Promise<WebexHttpError>}
18
+ */
19
+ onResponseError(options: any, reason: any): Promise<unknown>;
20
+ /**
21
+ * Handle retries for locus service unavailable errors
22
+ * @param {Object} options associated with the request
23
+ * @param {number} retryAfterTime retry after time in milliseconds
24
+ * @returns {Promise}
25
+ */
26
+ handleRetryRequestLocusServiceError(options: any, retryAfterTime: any): Promise<unknown>;
27
+ }