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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (506) hide show
  1. package/UPGRADING.md +9 -9
  2. package/browsers.js +19 -24
  3. package/dist/breakouts/breakout.js +178 -0
  4. package/dist/breakouts/breakout.js.map +1 -0
  5. package/dist/breakouts/collection.js +23 -0
  6. package/dist/breakouts/collection.js.map +1 -0
  7. package/dist/breakouts/edit-lock-error.js +52 -0
  8. package/dist/breakouts/edit-lock-error.js.map +1 -0
  9. package/dist/breakouts/index.js +843 -0
  10. package/dist/breakouts/index.js.map +1 -0
  11. package/dist/breakouts/request.js +78 -0
  12. package/dist/breakouts/request.js.map +1 -0
  13. package/dist/breakouts/utils.js +56 -0
  14. package/dist/breakouts/utils.js.map +1 -0
  15. package/dist/common/browser-detection.js +1 -20
  16. package/dist/common/browser-detection.js.map +1 -1
  17. package/dist/common/collection.js +5 -20
  18. package/dist/common/collection.js.map +1 -1
  19. package/dist/common/config.js +0 -7
  20. package/dist/common/config.js.map +1 -1
  21. package/dist/common/errors/captcha-error.js +10 -24
  22. package/dist/common/errors/captcha-error.js.map +1 -1
  23. package/dist/common/errors/intent-to-join.js +11 -24
  24. package/dist/common/errors/intent-to-join.js.map +1 -1
  25. package/dist/common/errors/join-meeting.js +12 -25
  26. package/dist/common/errors/join-meeting.js.map +1 -1
  27. package/dist/common/errors/media.js +10 -24
  28. package/dist/common/errors/media.js.map +1 -1
  29. package/dist/common/errors/parameter.js +5 -33
  30. package/dist/common/errors/parameter.js.map +1 -1
  31. package/dist/common/errors/password-error.js +10 -24
  32. package/dist/common/errors/password-error.js.map +1 -1
  33. package/dist/common/errors/permission.js +9 -23
  34. package/dist/common/errors/permission.js.map +1 -1
  35. package/dist/common/errors/reconnection-in-progress.js +0 -17
  36. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  37. package/dist/common/errors/reconnection.js +10 -24
  38. package/dist/common/errors/reconnection.js.map +1 -1
  39. package/dist/common/errors/stats.js +10 -24
  40. package/dist/common/errors/stats.js.map +1 -1
  41. package/dist/common/errors/webex-errors.js +6 -41
  42. package/dist/common/errors/webex-errors.js.map +1 -1
  43. package/dist/common/errors/webex-meetings-error.js +5 -25
  44. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  45. package/dist/common/events/events-scope.js +0 -22
  46. package/dist/common/events/events-scope.js.map +1 -1
  47. package/dist/common/events/events.js +0 -23
  48. package/dist/common/events/events.js.map +1 -1
  49. package/dist/common/events/trigger-proxy.js +0 -12
  50. package/dist/common/events/trigger-proxy.js.map +1 -1
  51. package/dist/common/events/util.js +0 -15
  52. package/dist/common/events/util.js.map +1 -1
  53. package/dist/common/logs/logger-config.js +0 -4
  54. package/dist/common/logs/logger-config.js.map +1 -1
  55. package/dist/common/logs/logger-proxy.js +1 -8
  56. package/dist/common/logs/logger-proxy.js.map +1 -1
  57. package/dist/common/logs/request.js +37 -60
  58. package/dist/common/logs/request.js.map +1 -1
  59. package/dist/common/queue.js +4 -14
  60. package/dist/common/queue.js.map +1 -1
  61. package/dist/config.js +6 -6
  62. package/dist/config.js.map +1 -1
  63. package/dist/constants.js +143 -52
  64. package/dist/constants.js.map +1 -1
  65. package/dist/controls-options-manager/constants.js +14 -0
  66. package/dist/controls-options-manager/constants.js.map +1 -0
  67. package/dist/controls-options-manager/enums.js +16 -0
  68. package/dist/controls-options-manager/enums.js.map +1 -0
  69. package/dist/controls-options-manager/index.js +261 -0
  70. package/dist/controls-options-manager/index.js.map +1 -0
  71. package/dist/controls-options-manager/util.js +39 -0
  72. package/dist/controls-options-manager/util.js.map +1 -0
  73. package/dist/index.js +11 -18
  74. package/dist/index.js.map +1 -1
  75. package/dist/locus-info/controlsUtils.js +31 -29
  76. package/dist/locus-info/controlsUtils.js.map +1 -1
  77. package/dist/locus-info/embeddedAppsUtils.js +3 -26
  78. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  79. package/dist/locus-info/fullState.js +0 -15
  80. package/dist/locus-info/fullState.js.map +1 -1
  81. package/dist/locus-info/hostUtils.js +4 -12
  82. package/dist/locus-info/hostUtils.js.map +1 -1
  83. package/dist/locus-info/index.js +237 -198
  84. package/dist/locus-info/index.js.map +1 -1
  85. package/dist/locus-info/infoUtils.js +3 -37
  86. package/dist/locus-info/infoUtils.js.map +1 -1
  87. package/dist/locus-info/mediaSharesUtils.js +12 -38
  88. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  89. package/dist/locus-info/parser.js +92 -118
  90. package/dist/locus-info/parser.js.map +1 -1
  91. package/dist/locus-info/selfUtils.js +80 -89
  92. package/dist/locus-info/selfUtils.js.map +1 -1
  93. package/dist/media/index.js +56 -146
  94. package/dist/media/index.js.map +1 -1
  95. package/dist/media/properties.js +83 -117
  96. package/dist/media/properties.js.map +1 -1
  97. package/dist/media/util.js +2 -9
  98. package/dist/media/util.js.map +1 -1
  99. package/dist/mediaQualityMetrics/config.js +505 -495
  100. package/dist/mediaQualityMetrics/config.js.map +1 -1
  101. package/dist/meeting/in-meeting-actions.js +31 -14
  102. package/dist/meeting/in-meeting-actions.js.map +1 -1
  103. package/dist/meeting/index.js +2225 -2244
  104. package/dist/meeting/index.js.map +1 -1
  105. package/dist/meeting/muteState.js +102 -100
  106. package/dist/meeting/muteState.js.map +1 -1
  107. package/dist/meeting/request.js +308 -264
  108. package/dist/meeting/request.js.map +1 -1
  109. package/dist/meeting/request.type.js +7 -0
  110. package/dist/meeting/request.type.js.map +1 -0
  111. package/dist/meeting/state.js +21 -31
  112. package/dist/meeting/state.js.map +1 -1
  113. package/dist/meeting/util.js +63 -217
  114. package/dist/meeting/util.js.map +1 -1
  115. package/dist/meeting-info/collection.js +6 -25
  116. package/dist/meeting-info/collection.js.map +1 -1
  117. package/dist/meeting-info/index.js +14 -32
  118. package/dist/meeting-info/index.js.map +1 -1
  119. package/dist/meeting-info/meeting-info-v2.js +193 -268
  120. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  121. package/dist/meeting-info/request.js +3 -15
  122. package/dist/meeting-info/request.js.map +1 -1
  123. package/dist/meeting-info/util.js +98 -183
  124. package/dist/meeting-info/util.js.map +1 -1
  125. package/dist/meeting-info/utilv2.js +137 -228
  126. package/dist/meeting-info/utilv2.js.map +1 -1
  127. package/dist/meetings/collection.js +26 -19
  128. package/dist/meetings/collection.js.map +1 -1
  129. package/dist/meetings/index.js +565 -552
  130. package/dist/meetings/index.js.map +1 -1
  131. package/dist/meetings/request.js +26 -41
  132. package/dist/meetings/request.js.map +1 -1
  133. package/dist/meetings/util.js +151 -155
  134. package/dist/meetings/util.js.map +1 -1
  135. package/dist/member/index.js +100 -85
  136. package/dist/member/index.js.map +1 -1
  137. package/dist/member/types.js +15 -0
  138. package/dist/member/types.js.map +1 -0
  139. package/dist/member/util.js +90 -68
  140. package/dist/member/util.js.map +1 -1
  141. package/dist/members/collection.js +13 -12
  142. package/dist/members/collection.js.map +1 -1
  143. package/dist/members/index.js +152 -204
  144. package/dist/members/index.js.map +1 -1
  145. package/dist/members/request.js +35 -39
  146. package/dist/members/request.js.map +1 -1
  147. package/dist/members/types.js +15 -0
  148. package/dist/members/types.js.map +1 -0
  149. package/dist/members/util.js +76 -46
  150. package/dist/members/util.js.map +1 -1
  151. package/dist/metrics/config.js +4 -14
  152. package/dist/metrics/config.js.map +1 -1
  153. package/dist/metrics/constants.js +1 -6
  154. package/dist/metrics/constants.js.map +1 -1
  155. package/dist/metrics/index.js +59 -156
  156. package/dist/metrics/index.js.map +1 -1
  157. package/dist/multistream/mediaRequestManager.js +116 -52
  158. package/dist/multistream/mediaRequestManager.js.map +1 -1
  159. package/dist/multistream/receiveSlot.js +58 -65
  160. package/dist/multistream/receiveSlot.js.map +1 -1
  161. package/dist/multistream/receiveSlotManager.js +58 -93
  162. package/dist/multistream/receiveSlotManager.js.map +1 -1
  163. package/dist/multistream/remoteMedia.js +55 -74
  164. package/dist/multistream/remoteMedia.js.map +1 -1
  165. package/dist/multistream/remoteMediaGroup.js +6 -40
  166. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  167. package/dist/multistream/remoteMediaManager.js +466 -442
  168. package/dist/multistream/remoteMediaManager.js.map +1 -1
  169. package/dist/networkQualityMonitor/index.js +40 -59
  170. package/dist/networkQualityMonitor/index.js.map +1 -1
  171. package/dist/personal-meeting-room/index.js +21 -45
  172. package/dist/personal-meeting-room/index.js.map +1 -1
  173. package/dist/personal-meeting-room/request.js +1 -31
  174. package/dist/personal-meeting-room/request.js.map +1 -1
  175. package/dist/personal-meeting-room/util.js +0 -13
  176. package/dist/personal-meeting-room/util.js.map +1 -1
  177. package/dist/reachability/index.js +192 -191
  178. package/dist/reachability/index.js.map +1 -1
  179. package/dist/reachability/request.js +15 -23
  180. package/dist/reachability/request.js.map +1 -1
  181. package/dist/reactions/constants.js +13 -0
  182. package/dist/reactions/constants.js.map +1 -0
  183. package/dist/reactions/reactions.js +109 -0
  184. package/dist/reactions/reactions.js.map +1 -0
  185. package/dist/reactions/reactions.type.js +36 -0
  186. package/dist/reactions/reactions.type.js.map +1 -0
  187. package/dist/reconnection-manager/index.js +342 -460
  188. package/dist/reconnection-manager/index.js.map +1 -1
  189. package/dist/recording-controller/enums.js +17 -0
  190. package/dist/recording-controller/enums.js.map +1 -0
  191. package/dist/recording-controller/index.js +343 -0
  192. package/dist/recording-controller/index.js.map +1 -0
  193. package/dist/recording-controller/util.js +63 -0
  194. package/dist/recording-controller/util.js.map +1 -0
  195. package/dist/roap/index.js +48 -70
  196. package/dist/roap/index.js.map +1 -1
  197. package/dist/roap/request.js +143 -131
  198. package/dist/roap/request.js.map +1 -1
  199. package/dist/roap/turnDiscovery.js +91 -98
  200. package/dist/roap/turnDiscovery.js.map +1 -1
  201. package/dist/statsAnalyzer/global.js +1 -95
  202. package/dist/statsAnalyzer/global.js.map +1 -1
  203. package/dist/statsAnalyzer/index.js +372 -455
  204. package/dist/statsAnalyzer/index.js.map +1 -1
  205. package/dist/statsAnalyzer/mqaUtil.js +143 -87
  206. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  207. package/dist/transcription/index.js +22 -47
  208. package/dist/transcription/index.js.map +1 -1
  209. package/dist/types/breakouts/breakout.d.ts +8 -0
  210. package/dist/types/breakouts/collection.d.ts +5 -0
  211. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  212. package/dist/types/breakouts/index.d.ts +5 -0
  213. package/dist/types/breakouts/request.d.ts +22 -0
  214. package/dist/types/breakouts/utils.d.ts +8 -0
  215. package/dist/types/common/browser-detection.d.ts +9 -0
  216. package/dist/types/common/collection.d.ts +48 -0
  217. package/dist/types/common/config.d.ts +2 -0
  218. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  219. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  220. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  221. package/dist/types/common/errors/media.d.ts +15 -0
  222. package/dist/types/common/errors/parameter.d.ts +15 -0
  223. package/dist/types/common/errors/password-error.d.ts +15 -0
  224. package/dist/types/common/errors/permission.d.ts +14 -0
  225. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  226. package/dist/types/common/errors/reconnection.d.ts +15 -0
  227. package/dist/types/common/errors/stats.d.ts +15 -0
  228. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  229. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  230. package/dist/types/common/events/events-scope.d.ts +17 -0
  231. package/dist/types/common/events/events.d.ts +12 -0
  232. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  233. package/dist/types/common/events/util.d.ts +2 -0
  234. package/dist/types/common/logs/logger-config.d.ts +2 -0
  235. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  236. package/dist/types/common/logs/request.d.ts +34 -0
  237. package/dist/types/common/queue.d.ts +32 -0
  238. package/dist/types/config.d.ts +77 -0
  239. package/dist/types/constants.d.ts +944 -0
  240. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  241. package/dist/types/controls-options-manager/enums.d.ts +6 -0
  242. package/dist/types/controls-options-manager/index.d.ts +128 -0
  243. package/dist/types/controls-options-manager/util.d.ts +9 -0
  244. package/dist/types/index.d.ts +6 -0
  245. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  246. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  247. package/dist/types/locus-info/fullState.d.ts +2 -0
  248. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  249. package/dist/types/locus-info/index.d.ts +276 -0
  250. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  251. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  252. package/dist/types/locus-info/parser.d.ts +212 -0
  253. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  254. package/dist/types/media/index.d.ts +32 -0
  255. package/dist/types/media/properties.d.ts +108 -0
  256. package/dist/types/media/util.d.ts +2 -0
  257. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  258. package/dist/types/meeting/in-meeting-actions.d.ts +101 -0
  259. package/dist/types/meeting/index.d.ts +1720 -0
  260. package/dist/types/meeting/muteState.d.ts +132 -0
  261. package/dist/types/meeting/request.d.ts +271 -0
  262. package/dist/types/meeting/request.type.d.ts +11 -0
  263. package/dist/types/meeting/state.d.ts +9 -0
  264. package/dist/types/meeting/util.d.ts +2 -0
  265. package/dist/types/meeting-info/collection.d.ts +20 -0
  266. package/dist/types/meeting-info/index.d.ts +57 -0
  267. package/dist/types/meeting-info/meeting-info-v2.d.ts +93 -0
  268. package/dist/types/meeting-info/request.d.ts +22 -0
  269. package/dist/types/meeting-info/util.d.ts +2 -0
  270. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  271. package/dist/types/meetings/collection.d.ts +31 -0
  272. package/dist/types/meetings/index.d.ts +315 -0
  273. package/dist/types/meetings/request.d.ts +27 -0
  274. package/dist/types/meetings/util.d.ts +18 -0
  275. package/dist/types/member/index.d.ts +156 -0
  276. package/dist/types/member/types.d.ts +21 -0
  277. package/dist/types/member/util.d.ts +2 -0
  278. package/dist/types/members/collection.d.ts +29 -0
  279. package/dist/types/members/index.d.ts +343 -0
  280. package/dist/types/members/request.d.ts +58 -0
  281. package/dist/types/members/types.d.ts +24 -0
  282. package/dist/types/members/util.d.ts +2 -0
  283. package/dist/types/metrics/config.d.ts +171 -0
  284. package/dist/types/metrics/constants.d.ts +53 -0
  285. package/dist/types/metrics/index.d.ts +152 -0
  286. package/dist/types/multistream/mediaRequestManager.d.ts +68 -0
  287. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  288. package/dist/types/multistream/receiveSlotManager.d.ts +49 -0
  289. package/dist/types/multistream/remoteMedia.d.ts +100 -0
  290. package/dist/types/multistream/remoteMediaGroup.d.ts +56 -0
  291. package/dist/types/multistream/remoteMediaManager.d.ts +263 -0
  292. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  293. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  294. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  295. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  296. package/dist/types/reachability/index.d.ts +152 -0
  297. package/dist/types/reachability/request.d.ts +37 -0
  298. package/dist/types/reactions/constants.d.ts +3 -0
  299. package/dist/types/reactions/reactions.d.ts +4 -0
  300. package/dist/types/reactions/reactions.type.d.ts +52 -0
  301. package/dist/types/reconnection-manager/index.d.ts +126 -0
  302. package/dist/types/recording-controller/enums.d.ts +7 -0
  303. package/dist/types/recording-controller/index.d.ts +193 -0
  304. package/dist/types/recording-controller/util.d.ts +13 -0
  305. package/dist/types/roap/index.d.ts +77 -0
  306. package/dist/types/roap/request.d.ts +38 -0
  307. package/dist/types/roap/turnDiscovery.d.ts +74 -0
  308. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  309. package/dist/types/statsAnalyzer/index.d.ts +195 -0
  310. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  311. package/dist/types/transcription/index.d.ts +64 -0
  312. package/internal-README.md +7 -6
  313. package/package.json +27 -21
  314. package/src/breakouts/README.md +219 -0
  315. package/src/breakouts/breakout.ts +153 -0
  316. package/src/breakouts/collection.ts +19 -0
  317. package/src/breakouts/edit-lock-error.ts +25 -0
  318. package/src/breakouts/index.ts +745 -0
  319. package/src/breakouts/request.ts +55 -0
  320. package/src/breakouts/utils.ts +44 -0
  321. package/src/common/{browser-detection.js → browser-detection.ts} +9 -6
  322. package/src/common/collection.ts +9 -7
  323. package/src/common/{config.js → config.ts} +1 -1
  324. package/src/common/errors/{captcha-error.js → captcha-error.ts} +11 -7
  325. package/src/common/errors/{intent-to-join.js → intent-to-join.ts} +12 -7
  326. package/src/common/errors/{join-meeting.js → join-meeting.ts} +17 -8
  327. package/src/common/errors/{media.js → media.ts} +11 -7
  328. package/src/common/errors/parameter.ts +11 -7
  329. package/src/common/errors/{password-error.js → password-error.ts} +11 -7
  330. package/src/common/errors/{permission.js → permission.ts} +10 -6
  331. package/src/common/errors/{reconnection.js → reconnection.ts} +11 -7
  332. package/src/common/errors/{stats.js → stats.ts} +11 -7
  333. package/src/common/errors/{webex-errors.js → webex-errors.ts} +8 -7
  334. package/src/common/errors/{webex-meetings-error.js → webex-meetings-error.ts} +4 -2
  335. package/src/common/events/{events-scope.js → events-scope.ts} +6 -2
  336. package/src/common/events/{events.js → events.ts} +5 -1
  337. package/src/common/events/{trigger-proxy.js → trigger-proxy.ts} +9 -5
  338. package/src/common/events/{util.js → util.ts} +2 -3
  339. package/src/common/logs/{logger-config.js → logger-config.ts} +1 -2
  340. package/src/common/logs/logger-proxy.ts +44 -0
  341. package/src/common/logs/{request.js → request.ts} +22 -9
  342. package/src/common/queue.ts +1 -2
  343. package/src/{config.js → config.ts} +17 -12
  344. package/src/constants.ts +92 -5
  345. package/src/controls-options-manager/constants.ts +5 -0
  346. package/src/controls-options-manager/enums.ts +7 -0
  347. package/src/controls-options-manager/index.ts +240 -0
  348. package/src/controls-options-manager/util.ts +30 -0
  349. package/src/index.js +4 -1
  350. package/src/locus-info/controlsUtils.ts +141 -0
  351. package/src/locus-info/{embeddedAppsUtils.js → embeddedAppsUtils.ts} +5 -6
  352. package/src/locus-info/{fullState.js → fullState.ts} +16 -12
  353. package/src/locus-info/{hostUtils.js → hostUtils.ts} +9 -8
  354. package/src/locus-info/{index.js → index.ts} +211 -71
  355. package/src/locus-info/{infoUtils.js → infoUtils.ts} +19 -8
  356. package/src/locus-info/{mediaSharesUtils.js → mediaSharesUtils.ts} +17 -17
  357. package/src/locus-info/{parser.js → parser.ts} +67 -79
  358. package/src/locus-info/{selfUtils.js → selfUtils.ts} +183 -67
  359. package/src/media/{index.js → index.ts} +179 -176
  360. package/src/media/{properties.js → properties.ts} +60 -37
  361. package/src/media/{util.js → util.ts} +2 -2
  362. package/src/mediaQualityMetrics/config.ts +384 -0
  363. package/src/meeting/in-meeting-actions.ts +67 -3
  364. package/src/meeting/{index.js → index.ts} +2605 -1605
  365. package/src/meeting/{muteState.js → muteState.ts} +138 -73
  366. package/src/meeting/{request.js → request.ts} +326 -142
  367. package/src/meeting/request.type.ts +13 -0
  368. package/src/meeting/{state.js → state.ts} +50 -35
  369. package/src/meeting/{util.js → util.ts} +131 -115
  370. package/src/meeting-info/{collection.js → collection.ts} +6 -2
  371. package/src/meeting-info/{index.js → index.ts} +42 -36
  372. package/src/meeting-info/meeting-info-v2.ts +273 -0
  373. package/src/meeting-info/{request.js → request.ts} +14 -4
  374. package/src/meeting-info/{util.js → util.ts} +60 -51
  375. package/src/meeting-info/{utilv2.js → utilv2.ts} +65 -58
  376. package/src/meetings/{collection.js → collection.ts} +26 -3
  377. package/src/meetings/index.ts +1275 -0
  378. package/src/meetings/{request.js → request.ts} +34 -25
  379. package/src/meetings/{util.js → util.ts} +99 -33
  380. package/src/member/{index.js → index.ts} +124 -56
  381. package/src/member/types.ts +24 -0
  382. package/src/member/{util.js → util.ts} +105 -25
  383. package/src/members/{collection.js → collection.ts} +10 -2
  384. package/src/members/{index.js → index.ts} +281 -144
  385. package/src/members/{request.js → request.ts} +80 -16
  386. package/src/members/types.ts +28 -0
  387. package/src/members/{util.js → util.ts} +108 -55
  388. package/src/metrics/{config.js → config.ts} +255 -92
  389. package/src/metrics/{constants.js → constants.ts} +0 -6
  390. package/src/metrics/{index.js → index.ts} +110 -94
  391. package/src/multistream/mediaRequestManager.ts +144 -40
  392. package/src/multistream/receiveSlot.ts +69 -26
  393. package/src/multistream/receiveSlotManager.ts +50 -38
  394. package/src/multistream/remoteMedia.ts +30 -4
  395. package/src/multistream/remoteMediaGroup.ts +4 -3
  396. package/src/multistream/remoteMediaManager.ts +230 -66
  397. package/src/networkQualityMonitor/{index.js → index.ts} +41 -29
  398. package/src/personal-meeting-room/{index.js → index.ts} +28 -19
  399. package/src/personal-meeting-room/{request.js → request.ts} +13 -4
  400. package/src/personal-meeting-room/{util.js → util.ts} +4 -4
  401. package/src/reachability/{index.js → index.ts} +157 -94
  402. package/src/reachability/request.ts +46 -35
  403. package/src/reactions/constants.ts +4 -0
  404. package/src/reactions/reactions.ts +104 -0
  405. package/src/reactions/reactions.type.ts +62 -0
  406. package/src/reconnection-manager/{index.js → index.ts} +228 -120
  407. package/src/recording-controller/enums.ts +8 -0
  408. package/src/recording-controller/index.ts +315 -0
  409. package/src/recording-controller/util.ts +58 -0
  410. package/src/roap/{index.js → index.ts} +77 -60
  411. package/src/roap/request.ts +172 -0
  412. package/src/roap/turnDiscovery.ts +81 -41
  413. package/src/statsAnalyzer/global.ts +37 -0
  414. package/src/statsAnalyzer/index.ts +1242 -0
  415. package/src/statsAnalyzer/mqaUtil.ts +291 -0
  416. package/src/transcription/{index.js → index.ts} +46 -39
  417. package/test/integration/spec/converged-space-meetings.js +176 -0
  418. package/test/integration/spec/journey.js +665 -464
  419. package/test/integration/spec/space-meeting.js +320 -206
  420. package/test/integration/spec/transcription.js +7 -8
  421. package/test/unit/spec/breakouts/breakout.ts +178 -0
  422. package/test/unit/spec/breakouts/collection.ts +15 -0
  423. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  424. package/test/unit/spec/breakouts/index.ts +1252 -0
  425. package/test/unit/spec/breakouts/request.ts +104 -0
  426. package/test/unit/spec/breakouts/utils.js +54 -0
  427. package/test/unit/spec/common/browser-detection.js +9 -28
  428. package/test/unit/spec/controls-options-manager/index.js +204 -0
  429. package/test/unit/spec/controls-options-manager/util.js +86 -0
  430. package/test/unit/spec/fixture/locus.js +92 -90
  431. package/test/unit/spec/locus-info/controlsUtils.js +133 -34
  432. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  433. package/test/unit/spec/locus-info/index.js +303 -2
  434. package/test/unit/spec/locus-info/infoUtils.js +41 -32
  435. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  436. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  437. package/test/unit/spec/locus-info/parser.js +3 -9
  438. package/test/unit/spec/locus-info/selfConstant.js +101 -103
  439. package/test/unit/spec/locus-info/selfUtils.js +165 -12
  440. package/test/unit/spec/media/index.ts +72 -8
  441. package/test/unit/spec/media/properties.ts +9 -9
  442. package/test/unit/spec/meeting/in-meeting-actions.ts +29 -2
  443. package/test/unit/spec/meeting/index.js +2503 -802
  444. package/test/unit/spec/meeting/muteState.js +146 -61
  445. package/test/unit/spec/meeting/request.js +141 -43
  446. package/test/unit/spec/meeting/utils.js +135 -164
  447. package/test/unit/spec/meeting-info/meetinginfov2.js +100 -73
  448. package/test/unit/spec/meeting-info/request.js +7 -9
  449. package/test/unit/spec/meeting-info/util.js +11 -12
  450. package/test/unit/spec/meeting-info/utilv2.js +110 -74
  451. package/test/unit/spec/meetings/collection.js +15 -1
  452. package/test/unit/spec/meetings/index.js +622 -263
  453. package/test/unit/spec/meetings/utils.js +65 -14
  454. package/test/unit/spec/member/index.js +24 -1
  455. package/test/unit/spec/member/util.js +359 -32
  456. package/test/unit/spec/members/index.js +294 -54
  457. package/test/unit/spec/members/request.js +50 -20
  458. package/test/unit/spec/members/utils.js +147 -4
  459. package/test/unit/spec/metrics/index.js +16 -21
  460. package/test/unit/spec/multistream/mediaRequestManager.ts +369 -68
  461. package/test/unit/spec/multistream/receiveSlot.ts +76 -17
  462. package/test/unit/spec/multistream/receiveSlotManager.ts +60 -38
  463. package/test/unit/spec/multistream/remoteMedia.ts +32 -2
  464. package/test/unit/spec/multistream/remoteMediaGroup.ts +5 -5
  465. package/test/unit/spec/multistream/remoteMediaManager.ts +549 -65
  466. package/test/unit/spec/networkQualityMonitor/index.js +24 -18
  467. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  468. package/test/unit/spec/reachability/index.ts +176 -27
  469. package/test/unit/spec/reachability/request.js +66 -0
  470. package/test/unit/spec/reconnection-manager/index.js +58 -30
  471. package/test/unit/spec/recording-controller/index.js +231 -0
  472. package/test/unit/spec/recording-controller/util.js +102 -0
  473. package/test/unit/spec/roap/index.ts +12 -8
  474. package/test/unit/spec/roap/request.ts +217 -0
  475. package/test/unit/spec/roap/turnDiscovery.ts +72 -49
  476. package/test/unit/spec/stats-analyzer/index.js +108 -57
  477. package/test/utils/cmr.js +44 -42
  478. package/test/utils/constants.js +9 -0
  479. package/test/utils/testUtils.js +98 -77
  480. package/test/utils/webex-config.js +22 -18
  481. package/test/utils/webex-test-users.js +57 -50
  482. package/tsconfig.json +6 -0
  483. package/dist/media/internal-media-core-wrapper.js +0 -22
  484. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  485. package/dist/meeting/effectsState.js +0 -327
  486. package/dist/meeting/effectsState.js.map +0 -1
  487. package/dist/multistream/multistreamMedia.js +0 -116
  488. package/dist/multistream/multistreamMedia.js.map +0 -1
  489. package/dist/peer-connection-manager/util.js +0 -124
  490. package/dist/peer-connection-manager/util.js.map +0 -1
  491. package/src/common/logs/logger-proxy.js +0 -33
  492. package/src/locus-info/controlsUtils.js +0 -102
  493. package/src/media/internal-media-core-wrapper.ts +0 -9
  494. package/src/mediaQualityMetrics/config.js +0 -382
  495. package/src/meeting/effectsState.js +0 -205
  496. package/src/meeting-info/meeting-info-v2.js +0 -255
  497. package/src/meetings/index.js +0 -1015
  498. package/src/multistream/multistreamMedia.ts +0 -92
  499. package/src/peer-connection-manager/util.ts +0 -117
  500. package/src/roap/request.js +0 -127
  501. package/src/statsAnalyzer/global.js +0 -133
  502. package/src/statsAnalyzer/index.js +0 -1006
  503. package/src/statsAnalyzer/mqaUtil.js +0 -173
  504. package/test/unit/spec/meeting/effectsState.js +0 -291
  505. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +0 -389
  506. /package/src/common/errors/{reconnection-in-progress.js → reconnection-in-progress.ts} +0 -0
@@ -0,0 +1,55 @@
1
+ import {StatelessWebexPlugin} from '@webex/webex-core';
2
+ import LoggerProxy from '../common/logs/logger-proxy';
3
+ import {getBroadcastRoles} from './utils';
4
+ import {HTTP_VERBS} from '../constants';
5
+
6
+ /**
7
+ * @class BreakoutRequest
8
+ */
9
+ export default class BreakoutRequest extends StatelessWebexPlugin {
10
+ /**
11
+ * Broadcast message to all breakout session's participants
12
+ * @param {String} url
13
+ * @param {String} message
14
+ * @param {Object} options
15
+ * @param {string} groupId
16
+ * @param {string} sessionId
17
+ * @returns {Promise}
18
+ */
19
+ broadcast({
20
+ url,
21
+ message,
22
+ options,
23
+ groupId,
24
+ sessionId,
25
+ }: {
26
+ url: string;
27
+ message: string;
28
+ options?: object;
29
+ groupId: string;
30
+ sessionId?: string;
31
+ }) {
32
+ const roles = getBroadcastRoles(options);
33
+ const params = {
34
+ id: groupId,
35
+ recipientRoles: roles.length ? roles : undefined,
36
+ sessions: sessionId ? [{id: sessionId}] : undefined,
37
+ };
38
+
39
+ // @ts-ignore
40
+ return this.request({
41
+ method: HTTP_VERBS.POST,
42
+ uri: `${url}/message`,
43
+ body: {
44
+ message,
45
+ groups: [params],
46
+ },
47
+ }).catch((error) => {
48
+ if (error.body && error.body.errorCode === 201409036 && error.statusCode === 409) {
49
+ LoggerProxy.logger.info(`Breakouts#broadcast --> no joined participants`);
50
+ } else {
51
+ throw error;
52
+ }
53
+ });
54
+ }
55
+ }
@@ -0,0 +1,44 @@
1
+ // eslint-disable-next-line import/prefer-default-export
2
+ import LoggerProxy from '../common/logs/logger-proxy';
3
+ import BreakoutEditLockedError from './edit-lock-error';
4
+ import {BREAKOUTS} from '../constants';
5
+
6
+ export const getBroadcastRoles = (options): string[] => {
7
+ const recipientRoles = [];
8
+ if (!options || (!options.cohosts && !options.presenters)) {
9
+ return recipientRoles;
10
+ }
11
+ if (options.cohosts) {
12
+ recipientRoles.push('COHOST');
13
+ }
14
+ if (options.presenters) {
15
+ recipientRoles.push('PRESENTER');
16
+ }
17
+
18
+ return recipientRoles;
19
+ };
20
+
21
+ /**
22
+ * Deals with all kinds of errors of breakout service
23
+ * @param {object} error // one of the breakout service error
24
+ * @param {string} position // position of the error occur
25
+ * @returns {object}
26
+ */
27
+ export const boServiceErrorHandler = (error: any, position: string): any => {
28
+ const errorCode = error?.body?.errorCode;
29
+ const {EDIT_LOCK_TOKEN_MISMATCH, EDIT_NOT_AUTHORIZED} = BREAKOUTS.ERROR_CODE;
30
+ let throwError;
31
+ switch (errorCode) {
32
+ case EDIT_LOCK_TOKEN_MISMATCH:
33
+ throwError = new BreakoutEditLockedError('Edit lock token mismatch', error);
34
+ break;
35
+ case EDIT_NOT_AUTHORIZED:
36
+ throwError = new BreakoutEditLockedError('Not authorized to interact with edit lock', error);
37
+ break;
38
+ default:
39
+ throwError = error;
40
+ }
41
+ LoggerProxy.logger.info(`${position} --> ${throwError?.message}`);
42
+
43
+ return throwError;
44
+ };
@@ -1,3 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/no-var-requires */
2
+
1
3
  import bowser from 'bowser';
2
4
  import {memoize} from 'lodash';
3
5
  import window from 'global/window';
@@ -9,7 +11,7 @@ const mockDetectionObject = {
9
11
  /* eslint-enable global-require */
10
12
  getBrowserName: () => '',
11
13
  getBrowserVersion: () => '',
12
- isBrowser: () => false
14
+ isBrowser: () => false,
13
15
  };
14
16
 
15
17
  const createDetectionObject = (results) => {
@@ -26,11 +28,12 @@ const createDetectionObject = (results) => {
26
28
  getOSVersion,
27
29
  getBrowserName,
28
30
  getBrowserVersion,
29
- isBrowser
31
+ isBrowser,
30
32
  };
31
33
  };
32
34
 
33
- export default memoize((agent) => (agent || window.navigator?.userAgent ?
34
- createDetectionObject(bowser.getParser(agent || window.navigator.userAgent)) :
35
- mockDetectionObject
36
- ));
35
+ export default memoize((agent?: any) =>
36
+ agent || window.navigator?.userAgent
37
+ ? createDetectionObject(bowser.getParser(agent || window.navigator.userAgent))
38
+ : mockDetectionObject
39
+ );
@@ -13,7 +13,7 @@ export default class Collection {
13
13
  * @param {String} property
14
14
  * @memberof Collection
15
15
  */
16
- constructor(property) {
16
+ constructor(property: string) {
17
17
  if (!property || !isString(property)) {
18
18
  throw new ParameterError('Collection expects a string to use as a property name.');
19
19
  }
@@ -41,8 +41,10 @@ export default class Collection {
41
41
  * @public
42
42
  * @memberof Collection
43
43
  */
44
- get(id) {
45
- return this[this.propertyName] && this[this.propertyName][id] ? this[this.propertyName][id] : null;
44
+ public get(id: string) {
45
+ return this[this.propertyName] && this[this.propertyName][id]
46
+ ? this[this.propertyName][id]
47
+ : null;
46
48
  }
47
49
 
48
50
  /**
@@ -52,7 +54,7 @@ export default class Collection {
52
54
  * @public
53
55
  * @memberof Collection
54
56
  */
55
- set(id, value) {
57
+ public set(id: string, value: any) {
56
58
  this[this.propertyName][id] = value;
57
59
 
58
60
  return this.get(id);
@@ -65,7 +67,7 @@ export default class Collection {
65
67
  * @public
66
68
  * @memberof Collection
67
69
  */
68
- delete(id) {
70
+ public delete(id: string) {
69
71
  delete this[this.propertyName][id];
70
72
  }
71
73
 
@@ -74,7 +76,7 @@ export default class Collection {
74
76
  * @public
75
77
  * @memberof Collection
76
78
  */
77
- getAll() {
79
+ public getAll() {
78
80
  return this[this.propertyName];
79
81
  }
80
82
 
@@ -84,7 +86,7 @@ export default class Collection {
84
86
  * @public
85
87
  * @memberof Collection
86
88
  */
87
- setAll(set) {
89
+ public setAll(set: object) {
88
90
  this[this.propertyName] = set;
89
91
 
90
92
  return this.getAll();
@@ -1,4 +1,4 @@
1
- const StaticConfig = {};
1
+ const StaticConfig: any = {};
2
2
 
3
3
  StaticConfig.set = (options) => {
4
4
  const values = {};
@@ -4,18 +4,22 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object to signify captcha related errors
5
5
  */
6
6
  export default class CaptchaError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.CAPTCHA.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(message: string = ERROR_DICTIONARY.CAPTCHA.MESSAGE, error: any = null) {
14
18
  super(message);
15
19
  this.name = ERROR_DICTIONARY.CAPTCHA.NAME;
16
20
  this.sdkMessage = ERROR_DICTIONARY.CAPTCHA.MESSAGE;
17
21
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
19
23
  this.code = ERROR_DICTIONARY.CAPTCHA.CODE;
20
24
  }
21
25
  }
@@ -4,18 +4,23 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object to signify the intent to join for unclaimed PMR scenarios
5
5
  */
6
6
  export default class IntentToJoinError extends Error {
7
+ code: any;
8
+ error: any;
9
+ joinIntentRequired: any;
10
+ sdkMessage: any;
11
+
7
12
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.INTENT_TO_JOIN.MESSAGE, error = null) {
13
+ *
14
+ * @constructor
15
+ * @param {String} [message]
16
+ * @param {Object} [error]
17
+ */
18
+ constructor(message: string = ERROR_DICTIONARY.INTENT_TO_JOIN.MESSAGE, error: any = null) {
14
19
  super(message);
15
20
  this.name = ERROR_DICTIONARY.INTENT_TO_JOIN.NAME;
16
21
  this.sdkMessage = ERROR_DICTIONARY.INTENT_TO_JOIN.MESSAGE;
17
22
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
23
+ this.stack = error ? error.stack : new Error().stack;
19
24
  this.joinIntentRequired = true;
20
25
  this.code = ERROR_DICTIONARY.INTENT_TO_JOIN.CODE;
21
26
  }
@@ -4,19 +4,28 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object to signify a join meeting error
5
5
  */
6
6
  export default class JoinMeetingError extends Error {
7
+ code: any;
8
+ error: any;
9
+ joinOptions: any;
10
+ sdkMessage: any;
11
+
7
12
  /**
8
- *
9
- * @constructor
10
- * @param {Object} [options]
11
- * @param {String} [message]
12
- * @param {Object} [error]
13
- */
14
- constructor(options = {}, message = ERROR_DICTIONARY.JOIN_MEETING.MESSAGE, error = null) {
13
+ *
14
+ * @constructor
15
+ * @param {Object} [options]
16
+ * @param {String} [message]
17
+ * @param {Object} [error]
18
+ */
19
+ constructor(
20
+ options: object = {},
21
+ message: string = ERROR_DICTIONARY.JOIN_MEETING.MESSAGE,
22
+ error: any = null
23
+ ) {
15
24
  super(message);
16
25
  this.name = ERROR_DICTIONARY.JOIN_MEETING.NAME;
17
26
  this.sdkMessage = ERROR_DICTIONARY.JOIN_MEETING.MESSAGE;
18
27
  this.error = error;
19
- this.stack = error ? error.stack : (new Error()).stack;
28
+ this.stack = error ? error.stack : new Error().stack;
20
29
  this.joinOptions = options;
21
30
  this.code = ERROR_DICTIONARY.JOIN_MEETING.CODE;
22
31
  }
@@ -4,18 +4,22 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object for media errors
5
5
  */
6
6
  export default class MediaError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.MEDIA.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(message: string = ERROR_DICTIONARY.MEDIA.MESSAGE, error: any = null) {
14
18
  super(message);
15
19
  this.name = ERROR_DICTIONARY.RECONNECTION.NAME;
16
20
  this.sdkMessage = ERROR_DICTIONARY.MEDIA.MESSAGE;
17
21
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
19
23
  this.code = ERROR_DICTIONARY.RECONNECTION.CODE;
20
24
  }
21
25
  }
@@ -1,4 +1,4 @@
1
- import * as MEETINGCONSTANTS from '../../constants';
1
+ import * as MEETINGCONSTANTS from '../../constants';
2
2
 
3
3
  /**
4
4
  * Extended Error object for general parameter errors
@@ -7,13 +7,17 @@ export default class ParameterError extends Error {
7
7
  sdkMessage: string;
8
8
  error: null;
9
9
  code: number;
10
+
10
11
  /**
11
- *
12
- * @constructor
13
- * @param {String} [message]
14
- * @param {Object} [error]
15
- */
16
- constructor(message = MEETINGCONSTANTS.ERROR_DICTIONARY.PARAMETER.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(
18
+ message: string = MEETINGCONSTANTS.ERROR_DICTIONARY.PARAMETER.MESSAGE,
19
+ error: any = null
20
+ ) {
17
21
  super(message);
18
22
 
19
23
  if (Error.captureStackTrace) {
@@ -4,18 +4,22 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object to signify password related errors
5
5
  */
6
6
  export default class PasswordError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.PASSWORD.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(message: string = ERROR_DICTIONARY.PASSWORD.MESSAGE, error: any = null) {
14
18
  super(message);
15
19
  this.name = ERROR_DICTIONARY.PASSWORD.NAME;
16
20
  this.sdkMessage = ERROR_DICTIONARY.PASSWORD.MESSAGE;
17
21
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
19
23
  this.code = ERROR_DICTIONARY.PASSWORD.CODE;
20
24
  }
21
25
  }
@@ -4,17 +4,21 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object for general parameter errors
5
5
  */
6
6
  export default class PermissionError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- * @constructor
9
- * @param {String} [message]
10
- * @param {Object} [error]
11
- */
12
- constructor(message = ERROR_DICTIONARY.PERMISSION.MESSAGE, error = null) {
12
+ * @constructor
13
+ * @param {String} [message]
14
+ * @param {Object} [error]
15
+ */
16
+ constructor(message: string = ERROR_DICTIONARY.PERMISSION.MESSAGE, error: any = null) {
13
17
  super(message);
14
18
  this.name = ERROR_DICTIONARY.PERMISSION.NAME;
15
19
  this.sdkMessage = ERROR_DICTIONARY.PERMISSION.MESSAGE;
16
20
  this.error = error;
17
- this.stack = error ? error.stack : (new Error()).stack;
21
+ this.stack = error ? error.stack : new Error().stack;
18
22
  this.code = ERROR_DICTIONARY.PERMISSION.CODE;
19
23
  }
20
24
  }
@@ -4,18 +4,22 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object to signify the intent to join for unclaimed PMR scenarios
5
5
  */
6
6
  export default class ReconnectionError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.RECONNECTION.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(message: string = ERROR_DICTIONARY.RECONNECTION.MESSAGE, error: any = null) {
14
18
  super(message);
15
19
  this.name = ERROR_DICTIONARY.RECONNECTION.NAME;
16
20
  this.sdkMessage = ERROR_DICTIONARY.RECONNECTION.MESSAGE;
17
21
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
19
23
  this.code = ERROR_DICTIONARY.RECONNECTION.CODE;
20
24
  }
21
25
  }
@@ -4,18 +4,22 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object for Stats Errors
5
5
  */
6
6
  export default class StatsError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.STATS.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(message: string = ERROR_DICTIONARY.STATS.MESSAGE, error: any = null) {
14
18
  super(message);
15
19
  this.name = ERROR_DICTIONARY.STATS.NAME;
16
20
  this.sdkMessage = ERROR_DICTIONARY.STATS.MESSAGE;
17
21
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
19
23
  this.code = ERROR_DICTIONARY.STATS.CODE;
20
24
  }
21
25
  }
@@ -5,7 +5,6 @@
5
5
  // 3) Any errors we generate from the SDK can be split into various categories
6
6
  // Parameter validation, user action, connection, media specific(They can have different range)
7
7
 
8
-
9
8
  // TODO: all the errors from the server need to be captured
10
9
 
11
10
  // add a way to log and send metrics if needed
@@ -20,11 +19,13 @@ const WebExMeetingsErrors = {};
20
19
  * @param {string} [message] - Error message
21
20
  * @returns {WebexMeetingsError}
22
21
  */
23
- export function createMeetingsError(code, message) {
22
+ export function createMeetingsError(code?: number, message?: string) {
24
23
  code = typeof code === 'number' ? code : 0;
25
24
  message = typeof message === 'string' && message ? message : 'Unknown error';
26
25
 
27
- return WebExMeetingsErrors[code] ? new WebExMeetingsErrors[code]() : new WebexMeetingsError(code, message);
26
+ return WebExMeetingsErrors[code]
27
+ ? new WebExMeetingsErrors[code]()
28
+ : new WebexMeetingsError(code, message);
28
29
  }
29
30
 
30
31
  /**
@@ -56,14 +57,16 @@ class UserNotJoinedError extends WebexMeetingsError {
56
57
  static CODE = 30102;
57
58
 
58
59
  constructor() {
59
- super(UserNotJoinedError.CODE, 'User currently not in meeting. Please join a meeting before adding media.');
60
+ super(
61
+ UserNotJoinedError.CODE,
62
+ 'User currently not in meeting. Please join a meeting before adding media.'
63
+ );
60
64
  }
61
65
  }
62
66
 
63
67
  export {UserNotJoinedError};
64
68
  WebExMeetingsErrors[UserNotJoinedError.CODE] = UserNotJoinedError;
65
69
 
66
-
67
70
  /**
68
71
  * @class NoMediaEstablishedYetError
69
72
  * @classdesc Raised whenever the user has not established media yet.
@@ -82,7 +85,6 @@ class NoMediaEstablishedYetError extends WebexMeetingsError {
82
85
  export {NoMediaEstablishedYetError};
83
86
  WebExMeetingsErrors[NoMediaEstablishedYetError.CODE] = NoMediaEstablishedYetError;
84
87
 
85
-
86
88
  /**
87
89
  * @class UserInLobbyError
88
90
  * @classdesc Raised whenever the user is in lobby and not joined yet.
@@ -101,7 +103,6 @@ class UserInLobbyError extends WebexMeetingsError {
101
103
  export {UserInLobbyError};
102
104
  WebExMeetingsErrors[UserInLobbyError.CODE] = UserInLobbyError;
103
105
 
104
-
105
106
  /**
106
107
  * @class IceGatheringFailed
107
108
  * @classdesc Raised whenever ice gathering fails.
@@ -3,6 +3,8 @@
3
3
  * @property {number} code - Error code
4
4
  */
5
5
  export default class WebexMeetingsError extends Error {
6
+ code: any;
7
+
6
8
  /**
7
9
  * Creates a new {@link WebexMeetingsError}
8
10
  * @param {number} code - Error code
@@ -10,14 +12,14 @@ export default class WebexMeetingsError extends Error {
10
12
  * @param {string} [fileName] - Name of the script file where error was generated
11
13
  * @param {number} [lineNumber] - Line number of the script file where error was generated
12
14
  */
13
- constructor(code, ...args) {
15
+ constructor(code: number, ...args: any[]) {
14
16
  super(...args);
15
17
 
16
18
  this.name = 'WebexMeetingsError';
17
19
 
18
20
  Object.defineProperty(this, 'code', {
19
21
  value: code,
20
- enumerable: true
22
+ enumerable: true,
21
23
  });
22
24
  }
23
25
 
@@ -18,8 +18,12 @@ export default class EventsScope extends ChildEmitter {
18
18
  * @param {*} args
19
19
  * @returns {Function}
20
20
  */
21
- emit(scope, eventName, args) {
22
- LoggerProxy.logger.debug(`${EventsUtil.getScopeLog(scope)}event#${eventName}${LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''}`);
21
+ emit(scope: any, eventName: any, args: any) {
22
+ LoggerProxy.logger.debug(
23
+ `${EventsUtil.getScopeLog(scope)}event#${eventName}${
24
+ LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''
25
+ }`
26
+ );
23
27
 
24
28
  return super.emit(eventName, args);
25
29
  }
@@ -12,7 +12,11 @@ import EventsUtil from './util';
12
12
  */
13
13
  class Events extends EventEmitter {
14
14
  emit(scope, eventName, args) {
15
- LoggerProxy.logger.debug(`${EventsUtil.getScopeLog(scope)}event#${eventName}${LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''}`);
15
+ LoggerProxy.logger.debug(
16
+ `${EventsUtil.getScopeLog(scope)}event#${eventName}${
17
+ LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''
18
+ }`
19
+ );
16
20
 
17
21
  return super.emit(eventName, args);
18
22
  }
@@ -1,19 +1,23 @@
1
-
2
1
  import LoggerProxy from '../logs/logger-proxy';
3
2
  import LoggerConfig from '../logs/logger-config';
4
3
  import ParameterError from '../errors/parameter';
5
4
 
6
5
  import EventsUtil from './util';
7
6
 
8
-
9
- const TriggerProxy = {};
7
+ const TriggerProxy: any = {};
10
8
 
11
9
  TriggerProxy.trigger = (instance, scope, trigger, payload) => {
12
10
  if (!instance || !instance.trigger) {
13
- throw new ParameterError('Instance to trigger from must be defined and have a trigger function.');
11
+ throw new ParameterError(
12
+ 'Instance to trigger from must be defined and have a trigger function.'
13
+ );
14
14
  }
15
15
 
16
- LoggerProxy.logger.debug(`${EventsUtil.getScopeLog(scope)}event#${trigger}${LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(payload)}` : ''}`);
16
+ LoggerProxy.logger.debug(
17
+ `${EventsUtil.getScopeLog(scope)}event#${trigger}${
18
+ LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(payload)}` : ''
19
+ }`
20
+ );
17
21
 
18
22
  return instance.trigger(trigger, payload);
19
23
  };
@@ -2,15 +2,14 @@ import {inspect} from 'util';
2
2
 
3
3
  import LoggerProxy from '../logs/logger-proxy';
4
4
 
5
- const EventsUtil = {};
5
+ const EventsUtil: any = {};
6
6
 
7
7
  EventsUtil.getEventLog = (args) => {
8
8
  let argString = '';
9
9
 
10
10
  try {
11
11
  argString = inspect(args);
12
- }
13
- catch (e) {
12
+ } catch (e) {
14
13
  LoggerProxy.logger.warn(`Events:util#getEventLog --> ${e}`);
15
14
  }
16
15
 
@@ -1,5 +1,4 @@
1
-
2
- const LoggerConfig = {};
1
+ const LoggerConfig: any = {};
3
2
 
4
3
  LoggerConfig.set = (options) => {
5
4
  LoggerConfig.verboseEvents = options.verboseEvents;