@stream-io/video-client 0.0.1-alpha.102 → 0.0.1-alpha.103

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 (91) hide show
  1. package/coverage/lcov-report/index.html +19 -19
  2. package/coverage/lcov-report/src/StreamSfuClient.ts.html +1 -1
  3. package/coverage/lcov-report/src/StreamVideoClient.ts.html +132 -36
  4. package/coverage/lcov-report/src/ViewportTracker.ts.html +1 -1
  5. package/coverage/lcov-report/src/coordinator/connection/base64.ts.html +1 -1
  6. package/coverage/lcov-report/src/coordinator/connection/client.ts.html +58 -46
  7. package/coverage/lcov-report/src/coordinator/connection/connection.ts.html +58 -7
  8. package/coverage/lcov-report/src/coordinator/connection/connection_fallback.ts.html +1 -1
  9. package/coverage/lcov-report/src/coordinator/connection/errors.ts.html +1 -1
  10. package/coverage/lcov-report/src/coordinator/connection/index.html +24 -24
  11. package/coverage/lcov-report/src/coordinator/connection/insights.ts.html +1 -1
  12. package/coverage/lcov-report/src/coordinator/connection/signing.ts.html +1 -1
  13. package/coverage/lcov-report/src/coordinator/connection/token_manager.ts.html +25 -49
  14. package/coverage/lcov-report/src/coordinator/connection/types.ts.html +4 -7
  15. package/coverage/lcov-report/src/coordinator/connection/utils.ts.html +1 -1
  16. package/coverage/lcov-report/src/events/call-permissions.ts.html +1 -1
  17. package/coverage/lcov-report/src/events/call.ts.html +1 -1
  18. package/coverage/lcov-report/src/events/index.html +1 -1
  19. package/coverage/lcov-report/src/events/index.ts.html +1 -1
  20. package/coverage/lcov-report/src/events/internal.ts.html +1 -1
  21. package/coverage/lcov-report/src/events/moderation.ts.html +1 -1
  22. package/coverage/lcov-report/src/events/participant.ts.html +1 -1
  23. package/coverage/lcov-report/src/events/reactions.ts.html +1 -1
  24. package/coverage/lcov-report/src/events/recording.ts.html +1 -1
  25. package/coverage/lcov-report/src/events/speaker.ts.html +1 -1
  26. package/coverage/lcov-report/src/gen/coordinator/index.html +1 -1
  27. package/coverage/lcov-report/src/gen/coordinator/index.ts.html +1 -1
  28. package/coverage/lcov-report/src/gen/google/protobuf/index.html +1 -1
  29. package/coverage/lcov-report/src/gen/google/protobuf/struct.ts.html +1 -1
  30. package/coverage/lcov-report/src/gen/google/protobuf/timestamp.ts.html +1 -1
  31. package/coverage/lcov-report/src/gen/video/sfu/event/events.ts.html +1 -1
  32. package/coverage/lcov-report/src/gen/video/sfu/event/index.html +1 -1
  33. package/coverage/lcov-report/src/gen/video/sfu/models/index.html +1 -1
  34. package/coverage/lcov-report/src/gen/video/sfu/models/models.ts.html +1 -1
  35. package/coverage/lcov-report/src/gen/video/sfu/signal_rpc/index.html +1 -1
  36. package/coverage/lcov-report/src/gen/video/sfu/signal_rpc/signal.client.ts.html +1 -1
  37. package/coverage/lcov-report/src/gen/video/sfu/signal_rpc/signal.ts.html +1 -1
  38. package/coverage/lcov-report/src/index.html +15 -15
  39. package/coverage/lcov-report/src/permissions/PermissionsContext.ts.html +1 -1
  40. package/coverage/lcov-report/src/permissions/index.html +1 -1
  41. package/coverage/lcov-report/src/permissions/index.ts.html +1 -1
  42. package/coverage/lcov-report/src/rpc/createClient.ts.html +1 -1
  43. package/coverage/lcov-report/src/rpc/index.html +1 -1
  44. package/coverage/lcov-report/src/rpc/index.ts.html +1 -1
  45. package/coverage/lcov-report/src/rtc/Call.ts.html +1 -1
  46. package/coverage/lcov-report/src/rtc/CallType.ts.html +1 -1
  47. package/coverage/lcov-report/src/rtc/Dispatcher.ts.html +1 -1
  48. package/coverage/lcov-report/src/rtc/IceTrickleBuffer.ts.html +1 -1
  49. package/coverage/lcov-report/src/rtc/callEventHandlers.ts.html +1 -1
  50. package/coverage/lcov-report/src/rtc/codecs.ts.html +1 -1
  51. package/coverage/lcov-report/src/rtc/flows/index.html +1 -1
  52. package/coverage/lcov-report/src/rtc/flows/join.ts.html +1 -1
  53. package/coverage/lcov-report/src/rtc/flows/latency.ts.html +1 -1
  54. package/coverage/lcov-report/src/rtc/helpers/iceCandidate.ts.html +1 -1
  55. package/coverage/lcov-report/src/rtc/helpers/index.html +1 -1
  56. package/coverage/lcov-report/src/rtc/helpers/tracks.ts.html +1 -1
  57. package/coverage/lcov-report/src/rtc/index.html +1 -1
  58. package/coverage/lcov-report/src/rtc/publisher.ts.html +1 -1
  59. package/coverage/lcov-report/src/rtc/signal.ts.html +1 -1
  60. package/coverage/lcov-report/src/rtc/subscriber.ts.html +1 -1
  61. package/coverage/lcov-report/src/rtc/types.ts.html +1 -1
  62. package/coverage/lcov-report/src/rtc/videoLayers.ts.html +1 -1
  63. package/coverage/lcov-report/src/sorting/comparator.ts.html +1 -1
  64. package/coverage/lcov-report/src/sorting/index.html +1 -1
  65. package/coverage/lcov-report/src/sorting/index.ts.html +1 -1
  66. package/coverage/lcov-report/src/sorting/participants.ts.html +1 -1
  67. package/coverage/lcov-report/src/sorting/presets.ts.html +1 -1
  68. package/coverage/lcov-report/src/stats/index.html +1 -1
  69. package/coverage/lcov-report/src/stats/state-store-stats-reporter.ts.html +1 -1
  70. package/coverage/lcov-report/src/store/CallState.ts.html +1 -1
  71. package/coverage/lcov-report/src/store/index.html +1 -1
  72. package/coverage/lcov-report/src/store/index.ts.html +1 -1
  73. package/coverage/lcov-report/src/store/rxUtils.ts.html +1 -1
  74. package/coverage/lcov-report/src/store/stateStore.ts.html +1 -1
  75. package/coverage/lcov.info +443 -395
  76. package/dist/index.browser.es.js +85 -65
  77. package/dist/index.browser.es.js.map +1 -1
  78. package/dist/index.cjs.js +85 -65
  79. package/dist/index.cjs.js.map +1 -1
  80. package/dist/index.es.js +85 -65
  81. package/dist/index.es.js.map +1 -1
  82. package/dist/src/StreamVideoClient.d.ts +22 -3
  83. package/dist/src/coordinator/connection/client.d.ts +4 -4
  84. package/dist/src/coordinator/connection/token_manager.d.ts +5 -4
  85. package/dist/src/coordinator/connection/types.d.ts +0 -1
  86. package/package.json +1 -1
  87. package/src/StreamVideoClient.ts +60 -28
  88. package/src/coordinator/connection/client.ts +34 -30
  89. package/src/coordinator/connection/connection.ts +18 -1
  90. package/src/coordinator/connection/token_manager.ts +17 -25
  91. package/src/coordinator/connection/types.ts +0 -1
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">61.4% </span>
26
+ <span class="strong">61.48% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>11670/19006</span>
28
+ <span class='fraction'>11712/19050</span>
29
29
  </div>
30
30
 
31
31
 
@@ -37,16 +37,16 @@
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">18.41% </span>
40
+ <span class="strong">18.36% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>139/755</span>
42
+ <span class='fraction'>139/757</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">61.4% </span>
47
+ <span class="strong">61.48% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>11670/19006</span>
49
+ <span class='fraction'>11712/19050</span>
50
50
  </div>
51
51
 
52
52
 
@@ -80,32 +80,32 @@
80
80
  </thead>
81
81
  <tbody><tr>
82
82
  <td class="file medium" data-value="src"><a href="src/index.html">src</a></td>
83
- <td data-value="54.14" class="pic medium">
83
+ <td data-value="54.96" class="pic medium">
84
84
  <div class="chart"><div class="cover-fill" style="width: 54%"></div><div class="cover-empty" style="width: 46%"></div></div>
85
85
  </td>
86
- <td data-value="54.14" class="pct medium">54.14%</td>
87
- <td data-value="663" class="abs medium">359/663</td>
86
+ <td data-value="54.96" class="pct medium">54.96%</td>
87
+ <td data-value="695" class="abs medium">382/695</td>
88
88
  <td data-value="100" class="pct high">100%</td>
89
89
  <td data-value="2" class="abs high">2/2</td>
90
- <td data-value="9.09" class="pct low">9.09%</td>
91
- <td data-value="22" class="abs low">2/22</td>
92
- <td data-value="54.14" class="pct medium">54.14%</td>
93
- <td data-value="663" class="abs medium">359/663</td>
90
+ <td data-value="8.33" class="pct low">8.33%</td>
91
+ <td data-value="24" class="abs low">2/24</td>
92
+ <td data-value="54.96" class="pct medium">54.96%</td>
93
+ <td data-value="695" class="abs medium">382/695</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
97
97
  <td class="file medium" data-value="src/coordinator/connection"><a href="src/coordinator/connection/index.html">src/coordinator/connection</a></td>
98
- <td data-value="51.38" class="pic medium">
98
+ <td data-value="51.87" class="pic medium">
99
99
  <div class="chart"><div class="cover-fill" style="width: 51%"></div><div class="cover-empty" style="width: 49%"></div></div>
100
100
  </td>
101
- <td data-value="51.38" class="pct medium">51.38%</td>
102
- <td data-value="2602" class="abs medium">1337/2602</td>
101
+ <td data-value="51.87" class="pct medium">51.87%</td>
102
+ <td data-value="2614" class="abs medium">1356/2614</td>
103
103
  <td data-value="60.6" class="pct medium">60.6%</td>
104
104
  <td data-value="33" class="abs medium">20/33</td>
105
105
  <td data-value="11.9" class="pct low">11.9%</td>
106
106
  <td data-value="126" class="abs low">15/126</td>
107
- <td data-value="51.38" class="pct medium">51.38%</td>
108
- <td data-value="2602" class="abs medium">1337/2602</td>
107
+ <td data-value="51.87" class="pct medium">51.87%</td>
108
+ <td data-value="2614" class="abs medium">1356/2614</td>
109
109
  </tr>
110
110
 
111
111
  <tr>
@@ -326,7 +326,7 @@
326
326
  <div class='footer quiet pad2 space-top1 center small'>
327
327
  Code coverage generated by
328
328
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
329
- at 2023-04-20T08:13:26.523Z
329
+ at 2023-04-20T15:23:43.681Z
330
330
  </div>
331
331
  <script src="prettify.js"></script>
332
332
  <script>
@@ -1027,7 +1027,7 @@ const retryable = <span class="fstat-no" title="function not covered" >async &lt
1027
1027
  <div class='footer quiet pad2 space-top1 center small'>
1028
1028
  Code coverage generated by
1029
1029
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1030
- at 2023-04-20T08:13:26.523Z
1030
+ at 2023-04-20T15:23:43.681Z
1031
1031
  </div>
1032
1032
  <script src="../prettify.js"></script>
1033
1033
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">53.01% </span>
26
+ <span class="strong">55.3% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>123/232</span>
28
+ <span class='fraction'>146/264</span>
29
29
  </div>
30
30
 
31
31
 
@@ -37,16 +37,16 @@
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">13.33% </span>
40
+ <span class="strong">11.76% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>2/15</span>
42
+ <span class='fraction'>2/17</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">53.01% </span>
47
+ <span class="strong">55.3% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>123/232</span>
49
+ <span class='fraction'>146/264</span>
50
50
  </div>
51
51
 
52
52
 
@@ -295,7 +295,39 @@
295
295
  <a name='L230'></a><a href='#L230'>230</a>
296
296
  <a name='L231'></a><a href='#L231'>231</a>
297
297
  <a name='L232'></a><a href='#L232'>232</a>
298
- <a name='L233'></a><a href='#L233'>233</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
298
+ <a name='L233'></a><a href='#L233'>233</a>
299
+ <a name='L234'></a><a href='#L234'>234</a>
300
+ <a name='L235'></a><a href='#L235'>235</a>
301
+ <a name='L236'></a><a href='#L236'>236</a>
302
+ <a name='L237'></a><a href='#L237'>237</a>
303
+ <a name='L238'></a><a href='#L238'>238</a>
304
+ <a name='L239'></a><a href='#L239'>239</a>
305
+ <a name='L240'></a><a href='#L240'>240</a>
306
+ <a name='L241'></a><a href='#L241'>241</a>
307
+ <a name='L242'></a><a href='#L242'>242</a>
308
+ <a name='L243'></a><a href='#L243'>243</a>
309
+ <a name='L244'></a><a href='#L244'>244</a>
310
+ <a name='L245'></a><a href='#L245'>245</a>
311
+ <a name='L246'></a><a href='#L246'>246</a>
312
+ <a name='L247'></a><a href='#L247'>247</a>
313
+ <a name='L248'></a><a href='#L248'>248</a>
314
+ <a name='L249'></a><a href='#L249'>249</a>
315
+ <a name='L250'></a><a href='#L250'>250</a>
316
+ <a name='L251'></a><a href='#L251'>251</a>
317
+ <a name='L252'></a><a href='#L252'>252</a>
318
+ <a name='L253'></a><a href='#L253'>253</a>
319
+ <a name='L254'></a><a href='#L254'>254</a>
320
+ <a name='L255'></a><a href='#L255'>255</a>
321
+ <a name='L256'></a><a href='#L256'>256</a>
322
+ <a name='L257'></a><a href='#L257'>257</a>
323
+ <a name='L258'></a><a href='#L258'>258</a>
324
+ <a name='L259'></a><a href='#L259'>259</a>
325
+ <a name='L260'></a><a href='#L260'>260</a>
326
+ <a name='L261'></a><a href='#L261'>261</a>
327
+ <a name='L262'></a><a href='#L262'>262</a>
328
+ <a name='L263'></a><a href='#L263'>263</a>
329
+ <a name='L264'></a><a href='#L264'>264</a>
330
+ <a name='L265'></a><a href='#L265'>265</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
299
331
  <span class="cline-any cline-yes">1x</span>
300
332
  <span class="cline-any cline-yes">1x</span>
301
333
  <span class="cline-any cline-yes">1x</span>
@@ -369,6 +401,10 @@
369
401
  <span class="cline-any cline-yes">1x</span>
370
402
  <span class="cline-any cline-yes">1x</span>
371
403
  <span class="cline-any cline-yes">1x</span>
404
+ <span class="cline-any cline-yes">1x</span>
405
+ <span class="cline-any cline-yes">1x</span>
406
+ <span class="cline-any cline-no">&nbsp;</span>
407
+ <span class="cline-any cline-no">&nbsp;</span>
372
408
  <span class="cline-any cline-no">&nbsp;</span>
373
409
  <span class="cline-any cline-no">&nbsp;</span>
374
410
  <span class="cline-any cline-no">&nbsp;</span>
@@ -412,6 +448,20 @@
412
448
  <span class="cline-any cline-yes">1x</span>
413
449
  <span class="cline-any cline-yes">1x</span>
414
450
  <span class="cline-any cline-yes">1x</span>
451
+ <span class="cline-any cline-no">&nbsp;</span>
452
+ <span class="cline-any cline-no">&nbsp;</span>
453
+ <span class="cline-any cline-no">&nbsp;</span>
454
+ <span class="cline-any cline-no">&nbsp;</span>
455
+ <span class="cline-any cline-no">&nbsp;</span>
456
+ <span class="cline-any cline-no">&nbsp;</span>
457
+ <span class="cline-any cline-yes">1x</span>
458
+ <span class="cline-any cline-yes">1x</span>
459
+ <span class="cline-any cline-yes">1x</span>
460
+ <span class="cline-any cline-yes">1x</span>
461
+ <span class="cline-any cline-yes">1x</span>
462
+ <span class="cline-any cline-yes">1x</span>
463
+ <span class="cline-any cline-yes">1x</span>
464
+ <span class="cline-any cline-yes">1x</span>
415
465
  <span class="cline-any cline-yes">1x</span>
416
466
  <span class="cline-any cline-yes">1x</span>
417
467
  <span class="cline-any cline-no">&nbsp;</span>
@@ -445,6 +495,12 @@
445
495
  <span class="cline-any cline-no">&nbsp;</span>
446
496
  <span class="cline-any cline-yes">1x</span>
447
497
  <span class="cline-any cline-yes">1x</span>
498
+ <span class="cline-any cline-yes">1x</span>
499
+ <span class="cline-any cline-yes">1x</span>
500
+ <span class="cline-any cline-yes">1x</span>
501
+ <span class="cline-any cline-yes">1x</span>
502
+ <span class="cline-any cline-yes">1x</span>
503
+ <span class="cline-any cline-yes">1x</span>
448
504
  <span class="cline-any cline-no">&nbsp;</span>
449
505
  <span class="cline-any cline-no">&nbsp;</span>
450
506
  <span class="cline-any cline-no">&nbsp;</span>
@@ -454,11 +510,19 @@
454
510
  <span class="cline-any cline-no">&nbsp;</span>
455
511
  <span class="cline-any cline-yes">1x</span>
456
512
  <span class="cline-any cline-yes">1x</span>
513
+ <span class="cline-any cline-yes">1x</span>
514
+ <span class="cline-any cline-yes">1x</span>
515
+ <span class="cline-any cline-yes">1x</span>
516
+ <span class="cline-any cline-yes">1x</span>
517
+ <span class="cline-any cline-yes">1x</span>
457
518
  <span class="cline-any cline-no">&nbsp;</span>
458
519
  <span class="cline-any cline-no">&nbsp;</span>
459
520
  <span class="cline-any cline-no">&nbsp;</span>
460
521
  <span class="cline-any cline-no">&nbsp;</span>
461
522
  <span class="cline-any cline-no">&nbsp;</span>
523
+ <span class="cline-any cline-yes">1x</span>
524
+ <span class="cline-any cline-yes">1x</span>
525
+ <span class="cline-any cline-no">&nbsp;</span>
462
526
  <span class="cline-any cline-no">&nbsp;</span>
463
527
  <span class="cline-any cline-no">&nbsp;</span>
464
528
  <span class="cline-any cline-no">&nbsp;</span>
@@ -534,6 +598,8 @@
534
598
  import {
535
599
  CreateCallTypeRequest,
536
600
  CreateCallTypeResponse,
601
+ CreateGuestRequest,
602
+ CreateGuestResponse,
537
603
  GetCallTypeResponse,
538
604
  GetEdgesResponse,
539
605
  ListCallTypeResponse,
@@ -601,7 +667,7 @@ export class StreamVideoClient {
601
667
  * @param tokenOrProvider a token or a function that returns a token.
602
668
  */
603
669
  connectUser = <span class="fstat-no" title="function not covered" >async (user: User, tokenOrProvider: TokenOrProvider) =&gt; {</span>
604
- <span class="cstat-no" title="statement not covered" > await this.streamClient.connectUser(</span>
670
+ <span class="cstat-no" title="statement not covered" > const connectUserResponse = await this.streamClient.connectUser(</span>
605
671
  <span class="cstat-no" title="statement not covered" > // @ts-expect-error</span>
606
672
  <span class="cstat-no" title="statement not covered" > user,</span>
607
673
  <span class="cstat-no" title="statement not covered" > tokenOrProvider,</span>
@@ -635,6 +701,22 @@ export class StreamVideoClient {
635
701
  <span class="cstat-no" title="statement not covered" > this.on('call.ended', watchCallCancelled(this.writeableStateStore));</span>
636
702
  <span class="cstat-no" title="statement not covered" ></span>
637
703
  <span class="cstat-no" title="statement not covered" > this.writeableStateStore.setConnectedUser(user);</span>
704
+ <span class="cstat-no" title="statement not covered" ></span>
705
+ <span class="cstat-no" title="statement not covered" > return connectUserResponse;</span>
706
+ <span class="cstat-no" title="statement not covered" > };</span>
707
+ &nbsp;
708
+ /**
709
+ * Connects the given anonymous user to the client.
710
+ *
711
+ * @param user the user to connect.
712
+ * @param tokenOrProvider a token or a function that returns a token.
713
+ */
714
+ connectAnonymousUser = <span class="fstat-no" title="function not covered" >async (</span>
715
+ <span class="cstat-no" title="statement not covered" > user: User,</span>
716
+ <span class="cstat-no" title="statement not covered" > tokenOrProvider: TokenOrProvider,</span>
717
+ <span class="cstat-no" title="statement not covered" > ) =&gt; {</span>
718
+ <span class="cstat-no" title="statement not covered" > // @ts-expect-error</span>
719
+ <span class="cstat-no" title="statement not covered" > return this.streamClient.connectAnonymousUser(user, tokenOrProvider);</span>
638
720
  <span class="cstat-no" title="statement not covered" > };</span>
639
721
  &nbsp;
640
722
  /**
@@ -676,14 +758,32 @@ export class StreamVideoClient {
676
758
  <span class="cstat-no" title="statement not covered" > return this.streamClient.off(event, callback);</span>
677
759
  <span class="cstat-no" title="statement not covered" > };</span>
678
760
  &nbsp;
679
- <span class="fstat-no" title="function not covered" > call(type: string, id: string) {</span>
761
+ /**
762
+ * Creates a new call.
763
+ *
764
+ * @param type the type of the call.
765
+ * @param id the id of the call.
766
+ */
767
+ call = <span class="fstat-no" title="function not covered" >(type: string, id: string) =&gt; {</span>
680
768
  <span class="cstat-no" title="statement not covered" > return new Call({</span>
681
769
  <span class="cstat-no" title="statement not covered" > streamClient: this.streamClient,</span>
682
770
  <span class="cstat-no" title="statement not covered" > id,</span>
683
771
  <span class="cstat-no" title="statement not covered" > type,</span>
684
772
  <span class="cstat-no" title="statement not covered" > clientStore: this.writeableStateStore,</span>
685
773
  <span class="cstat-no" title="statement not covered" > });</span>
686
- <span class="cstat-no" title="statement not covered" > }</span>
774
+ <span class="cstat-no" title="statement not covered" > };</span>
775
+ &nbsp;
776
+ /**
777
+ * Creates a new guest user with the given data.
778
+ *
779
+ * @param data the data for the guest user.
780
+ */
781
+ createGuestUser = <span class="fstat-no" title="function not covered" >async (data: CreateGuestRequest) =&gt; {</span>
782
+ <span class="cstat-no" title="statement not covered" > return this.streamClient.post&lt;CreateGuestResponse, CreateGuestRequest&gt;(</span>
783
+ <span class="cstat-no" title="statement not covered" > '/guest',</span>
784
+ <span class="cstat-no" title="statement not covered" > data,</span>
785
+ <span class="cstat-no" title="statement not covered" > );</span>
786
+ <span class="cstat-no" title="statement not covered" > };</span>
687
787
  &nbsp;
688
788
  queryCalls = <span class="fstat-no" title="function not covered" >async (</span>
689
789
  <span class="cstat-no" title="statement not covered" > filterConditions: { [key: string]: any },</span>
@@ -699,32 +799,28 @@ export class StreamVideoClient {
699
799
  <span class="cstat-no" title="statement not covered" > next: next,</span>
700
800
  <span class="cstat-no" title="statement not covered" > watch,</span>
701
801
  <span class="cstat-no" title="statement not covered" > };</span>
702
- <span class="cstat-no" title="statement not covered" > try {</span>
703
- <span class="cstat-no" title="statement not covered" > if (data.watch) {</span>
704
- <span class="cstat-no" title="statement not covered" > await this.streamClient.connectionIdPromise;</span>
705
- <span class="cstat-no" title="statement not covered" > }</span>
706
- <span class="cstat-no" title="statement not covered" > const response = await this.streamClient.post&lt;QueryCallsResponse&gt;(</span>
707
- <span class="cstat-no" title="statement not covered" > '/calls',</span>
708
- <span class="cstat-no" title="statement not covered" > data,</span>
709
- <span class="cstat-no" title="statement not covered" > );</span>
710
- <span class="cstat-no" title="statement not covered" > const calls = response.calls.map(</span>
711
- <span class="cstat-no" title="statement not covered" > (c) =&gt;</span>
712
- <span class="cstat-no" title="statement not covered" > new Call({</span>
713
- <span class="cstat-no" title="statement not covered" > streamClient: this.streamClient,</span>
714
- <span class="cstat-no" title="statement not covered" > id: c.call.id,</span>
715
- <span class="cstat-no" title="statement not covered" > type: c.call.type,</span>
716
- <span class="cstat-no" title="statement not covered" > metadata: c.call,</span>
717
- <span class="cstat-no" title="statement not covered" > members: c.members,</span>
718
- <span class="cstat-no" title="statement not covered" > clientStore: this.writeableStateStore,</span>
719
- <span class="cstat-no" title="statement not covered" > }),</span>
720
- <span class="cstat-no" title="statement not covered" > );</span>
721
- <span class="cstat-no" title="statement not covered" > return {</span>
722
- <span class="cstat-no" title="statement not covered" > ...response,</span>
723
- <span class="cstat-no" title="statement not covered" > calls: calls,</span>
724
- <span class="cstat-no" title="statement not covered" > };</span>
725
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
726
- <span class="cstat-no" title="statement not covered" > throw error;</span>
802
+ <span class="cstat-no" title="statement not covered" > if (data.watch) {</span>
803
+ <span class="cstat-no" title="statement not covered" > await this.streamClient.connectionIdPromise;</span>
727
804
  <span class="cstat-no" title="statement not covered" > }</span>
805
+ <span class="cstat-no" title="statement not covered" > const response = await this.streamClient.post&lt;QueryCallsResponse&gt;(</span>
806
+ <span class="cstat-no" title="statement not covered" > '/calls',</span>
807
+ <span class="cstat-no" title="statement not covered" > data,</span>
808
+ <span class="cstat-no" title="statement not covered" > );</span>
809
+ <span class="cstat-no" title="statement not covered" > const calls = response.calls.map(</span>
810
+ <span class="cstat-no" title="statement not covered" > (c) =&gt;</span>
811
+ <span class="cstat-no" title="statement not covered" > new Call({</span>
812
+ <span class="cstat-no" title="statement not covered" > streamClient: this.streamClient,</span>
813
+ <span class="cstat-no" title="statement not covered" > id: c.call.id,</span>
814
+ <span class="cstat-no" title="statement not covered" > type: c.call.type,</span>
815
+ <span class="cstat-no" title="statement not covered" > metadata: c.call,</span>
816
+ <span class="cstat-no" title="statement not covered" > members: c.members,</span>
817
+ <span class="cstat-no" title="statement not covered" > clientStore: this.writeableStateStore,</span>
818
+ <span class="cstat-no" title="statement not covered" > }),</span>
819
+ <span class="cstat-no" title="statement not covered" > );</span>
820
+ <span class="cstat-no" title="statement not covered" > return {</span>
821
+ <span class="cstat-no" title="statement not covered" > ...response,</span>
822
+ <span class="cstat-no" title="statement not covered" > calls: calls,</span>
823
+ <span class="cstat-no" title="statement not covered" > };</span>
728
824
  <span class="cstat-no" title="statement not covered" > };</span>
729
825
  &nbsp;
730
826
  queryUsers = <span class="fstat-no" title="function not covered" >async () =&gt; {</span>
@@ -766,7 +862,7 @@ export class StreamVideoClient {
766
862
  <div class='footer quiet pad2 space-top1 center small'>
767
863
  Code coverage generated by
768
864
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
769
- at 2023-04-20T08:13:26.523Z
865
+ at 2023-04-20T15:23:43.681Z
770
866
  </div>
771
867
  <script src="../prettify.js"></script>
772
868
  <script>
@@ -406,7 +406,7 @@ export <span class="fstat-no" title="function not covered" >class ViewportTracke
406
406
  <div class='footer quiet pad2 space-top1 center small'>
407
407
  Code coverage generated by
408
408
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
409
- at 2023-04-20T08:13:26.523Z
409
+ at 2023-04-20T15:23:43.681Z
410
410
  </div>
411
411
  <script src="../prettify.js"></script>
412
412
  <script>
@@ -310,7 +310,7 @@ export const decodeBase64 = <span class="fstat-no" title="function not covered"
310
310
  <div class='footer quiet pad2 space-top1 center small'>
311
311
  Code coverage generated by
312
312
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
313
- at 2023-04-20T08:13:26.523Z
313
+ at 2023-04-20T15:23:43.681Z
314
314
  </div>
315
315
  <script src="../../../prettify.js"></script>
316
316
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">36.72% </span>
26
+ <span class="strong">36.79% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>296/806</span>
28
+ <span class='fraction'>298/810</span>
29
29
  </div>
30
30
 
31
31
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">36.72% </span>
47
+ <span class="strong">36.79% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>296/806</span>
49
+ <span class='fraction'>298/810</span>
50
50
  </div>
51
51
 
52
52
 
@@ -869,7 +869,11 @@
869
869
  <a name='L804'></a><a href='#L804'>804</a>
870
870
  <a name='L805'></a><a href='#L805'>805</a>
871
871
  <a name='L806'></a><a href='#L806'>806</a>
872
- <a name='L807'></a><a href='#L807'>807</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
872
+ <a name='L807'></a><a href='#L807'>807</a>
873
+ <a name='L808'></a><a href='#L808'>808</a>
874
+ <a name='L809'></a><a href='#L809'>809</a>
875
+ <a name='L810'></a><a href='#L810'>810</a>
876
+ <a name='L811'></a><a href='#L811'>811</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
873
877
  <span class="cline-any cline-yes">1x</span>
874
878
  <span class="cline-any cline-yes">1x</span>
875
879
  <span class="cline-any cline-yes">1x</span>
@@ -993,6 +997,8 @@
993
997
  <span class="cline-any cline-yes">1x</span>
994
998
  <span class="cline-any cline-yes">1x</span>
995
999
  <span class="cline-any cline-yes">1x</span>
1000
+ <span class="cline-any cline-yes">1x</span>
1001
+ <span class="cline-any cline-yes">1x</span>
996
1002
  <span class="cline-any cline-no">&nbsp;</span>
997
1003
  <span class="cline-any cline-no">&nbsp;</span>
998
1004
  <span class="cline-any cline-yes">1x</span>
@@ -1116,9 +1122,21 @@
1116
1122
  <span class="cline-any cline-no">&nbsp;</span>
1117
1123
  <span class="cline-any cline-no">&nbsp;</span>
1118
1124
  <span class="cline-any cline-no">&nbsp;</span>
1125
+ <span class="cline-any cline-no">&nbsp;</span>
1126
+ <span class="cline-any cline-no">&nbsp;</span>
1127
+ <span class="cline-any cline-no">&nbsp;</span>
1128
+ <span class="cline-any cline-no">&nbsp;</span>
1119
1129
  <span class="cline-any cline-yes">1x</span>
1120
1130
  <span class="cline-any cline-yes">1x</span>
1121
1131
  <span class="cline-any cline-no">&nbsp;</span>
1132
+ <span class="cline-any cline-no">&nbsp;</span>
1133
+ <span class="cline-any cline-no">&nbsp;</span>
1134
+ <span class="cline-any cline-no">&nbsp;</span>
1135
+ <span class="cline-any cline-no">&nbsp;</span>
1136
+ <span class="cline-any cline-no">&nbsp;</span>
1137
+ <span class="cline-any cline-no">&nbsp;</span>
1138
+ <span class="cline-any cline-no">&nbsp;</span>
1139
+ <span class="cline-any cline-no">&nbsp;</span>
1122
1140
  <span class="cline-any cline-yes">1x</span>
1123
1141
  <span class="cline-any cline-yes">1x</span>
1124
1142
  <span class="cline-any cline-no">&nbsp;</span>
@@ -1252,16 +1270,6 @@
1252
1270
  <span class="cline-any cline-no">&nbsp;</span>
1253
1271
  <span class="cline-any cline-no">&nbsp;</span>
1254
1272
  <span class="cline-any cline-no">&nbsp;</span>
1255
- <span class="cline-any cline-no">&nbsp;</span>
1256
- <span class="cline-any cline-no">&nbsp;</span>
1257
- <span class="cline-any cline-no">&nbsp;</span>
1258
- <span class="cline-any cline-no">&nbsp;</span>
1259
- <span class="cline-any cline-no">&nbsp;</span>
1260
- <span class="cline-any cline-no">&nbsp;</span>
1261
- <span class="cline-any cline-no">&nbsp;</span>
1262
- <span class="cline-any cline-no">&nbsp;</span>
1263
- <span class="cline-any cline-no">&nbsp;</span>
1264
- <span class="cline-any cline-no">&nbsp;</span>
1265
1273
  <span class="cline-any cline-yes">1x</span>
1266
1274
  <span class="cline-any cline-yes">1x</span>
1267
1275
  <span class="cline-any cline-yes">1x</span>
@@ -1742,15 +1750,15 @@ export class StreamClient {
1742
1750
  defaultWSTimeout: number;
1743
1751
  resolveConnectionId!: Function;
1744
1752
  rejectConnectionId!: Function;
1745
- connectionIdPromise: Promise&lt;void&gt;;
1753
+ connectionIdPromise: Promise&lt;string | undefined&gt;;
1746
1754
  private nextRequestAbortController: AbortController | null = null;
1747
1755
  &nbsp;
1748
1756
  /**
1749
1757
  * Initialize a client.
1750
1758
  *
1751
1759
  * @param {string} key - the api key
1752
- * @param {string} [secret] - the api secret
1753
1760
  * @param {StreamClientOptions} [options] - additional options, here you can pass custom options to axios instance
1761
+ * @param {string} [options.secret] - the api secret
1754
1762
  * @param {boolean} [options.browser] - enforce the client to be in browser mode
1755
1763
  * @param {boolean} [options.warmUp] - default to false, if true, client will open a connection as soon as possible to speed up following requests
1756
1764
  * @param {Logger} [options.Logger] - custom logger
@@ -1789,10 +1797,12 @@ export class StreamClient {
1789
1797
  <span class="cstat-no" title="statement not covered" > });</span>
1790
1798
  <span class="cstat-no" title="statement not covered" > }</span>
1791
1799
  &nbsp;
1792
- this.connectionIdPromise = new Promise((resolve, reject) =&gt; {
1793
- this.resolveConnectionId = resolve;
1794
- this.rejectConnectionId = reject;
1795
- });
1800
+ this.connectionIdPromise = new Promise&lt;string | undefined&gt;(
1801
+ (resolve, reject) =&gt; {
1802
+ this.resolveConnectionId = resolve;
1803
+ this.rejectConnectionId = reject;
1804
+ },
1805
+ );
1796
1806
  &nbsp;
1797
1807
  this.setBaseURL(
1798
1808
  this.options.baseURL || 'https://video.stream-io-api.com/video',
@@ -1901,7 +1911,11 @@ export class StreamClient {
1901
1911
  <span class="cstat-no" title="statement not covered" > this.userID = user.id;</span>
1902
1912
  <span class="cstat-no" title="statement not covered" > this.anonymous = false;</span>
1903
1913
  <span class="cstat-no" title="statement not covered" ></span>
1904
- <span class="cstat-no" title="statement not covered" > const setTokenPromise = this._setToken(user, userTokenOrProvider);</span>
1914
+ <span class="cstat-no" title="statement not covered" > const setTokenPromise = this._setToken(</span>
1915
+ <span class="cstat-no" title="statement not covered" > user,</span>
1916
+ <span class="cstat-no" title="statement not covered" > userTokenOrProvider,</span>
1917
+ <span class="cstat-no" title="statement not covered" > this.anonymous,</span>
1918
+ <span class="cstat-no" title="statement not covered" > );</span>
1905
1919
  <span class="cstat-no" title="statement not covered" > this._setUser(user);</span>
1906
1920
  <span class="cstat-no" title="statement not covered" ></span>
1907
1921
  <span class="cstat-no" title="statement not covered" > const wsPromise = this.openConnection();</span>
@@ -1923,8 +1937,16 @@ export class StreamClient {
1923
1937
  <span class="cstat-no" title="statement not covered" > }</span>
1924
1938
  <span class="cstat-no" title="statement not covered" > };</span>
1925
1939
  &nbsp;
1926
- _setToken = <span class="fstat-no" title="function not covered" >(user: OwnUserResponse, userTokenOrProvider: TokenOrProvider) =&gt;</span>
1927
- <span class="cstat-no" title="statement not covered" > this.tokenManager.setTokenOrProvider(userTokenOrProvider, user);</span>
1940
+ _setToken = <span class="fstat-no" title="function not covered" >(</span>
1941
+ <span class="cstat-no" title="statement not covered" > user: OwnUserResponse,</span>
1942
+ <span class="cstat-no" title="statement not covered" > userTokenOrProvider: TokenOrProvider,</span>
1943
+ <span class="cstat-no" title="statement not covered" > isAnonymous: boolean,</span>
1944
+ <span class="cstat-no" title="statement not covered" > ) =&gt;</span>
1945
+ <span class="cstat-no" title="statement not covered" > this.tokenManager.setTokenOrProvider(</span>
1946
+ <span class="cstat-no" title="statement not covered" > userTokenOrProvider,</span>
1947
+ <span class="cstat-no" title="statement not covered" > user,</span>
1948
+ <span class="cstat-no" title="statement not covered" > isAnonymous,</span>
1949
+ <span class="cstat-no" title="statement not covered" > );</span>
1928
1950
  &nbsp;
1929
1951
  <span class="fstat-no" title="function not covered" > _setUser(user: OwnUserResponse) {</span>
1930
1952
  <span class="cstat-no" title="statement not covered" > /**</span>
@@ -2046,27 +2068,17 @@ export class StreamClient {
2046
2068
  /**
2047
2069
  * connectAnonymousUser - Set an anonymous user and open a WebSocket connection
2048
2070
  */
2049
- connectAnonymousUser = <span class="fstat-no" title="function not covered" >() =&gt; {</span>
2050
- <span class="cstat-no" title="statement not covered" > if (</span>
2051
- <span class="cstat-no" title="statement not covered" > (this._isUsingServerAuth() || this.node) &amp;&amp;</span>
2052
- <span class="cstat-no" title="statement not covered" > !this.options.allowServerSideConnect</span>
2053
- <span class="cstat-no" title="statement not covered" > ) {</span>
2054
- <span class="cstat-no" title="statement not covered" > console.warn(</span>
2055
- <span class="cstat-no" title="statement not covered" > 'Please do not use connectUser server side. connectUser impacts MAU and concurrent connection usage and thus your bill. If you have a valid use-case, add "allowServerSideConnect: true" to the client options to disable this warning.',</span>
2056
- <span class="cstat-no" title="statement not covered" > );</span>
2057
- <span class="cstat-no" title="statement not covered" > }</span>
2058
- <span class="cstat-no" title="statement not covered" ></span>
2071
+ connectAnonymousUser = <span class="fstat-no" title="function not covered" >async (</span>
2072
+ <span class="cstat-no" title="statement not covered" > user: OwnUserResponse,</span>
2073
+ <span class="cstat-no" title="statement not covered" > tokenOrProvider: TokenOrProvider,</span>
2074
+ <span class="cstat-no" title="statement not covered" > ) =&gt; {</span>
2059
2075
  <span class="cstat-no" title="statement not covered" > this.anonymous = true;</span>
2060
- <span class="cstat-no" title="statement not covered" > this.userID = randomId();</span>
2061
- <span class="cstat-no" title="statement not covered" > const anonymousUser = {</span>
2062
- <span class="cstat-no" title="statement not covered" > id: this.userID,</span>
2063
- <span class="cstat-no" title="statement not covered" > anon: true,</span>
2064
- <span class="cstat-no" title="statement not covered" > } as unknown as OwnUserResponse;</span>
2065
- <span class="cstat-no" title="statement not covered" ></span>
2066
- <span class="cstat-no" title="statement not covered" > this._setToken(anonymousUser, '');</span>
2067
- <span class="cstat-no" title="statement not covered" > this._setUser(anonymousUser);</span>
2068
- <span class="cstat-no" title="statement not covered" ></span>
2069
- <span class="cstat-no" title="statement not covered" > return this.openConnection();</span>
2076
+ <span class="cstat-no" title="statement not covered" > await this._setToken(user, tokenOrProvider, this.anonymous);</span>
2077
+ <span class="cstat-no" title="statement not covered" > this._setUser(user);</span>
2078
+ <span class="cstat-no" title="statement not covered" > // some endpoints require a connection_id to be resolved.</span>
2079
+ <span class="cstat-no" title="statement not covered" > // as anonymous users aren't allowed to open WS connections, we just</span>
2080
+ <span class="cstat-no" title="statement not covered" > // resolve the connection_id here.</span>
2081
+ <span class="cstat-no" title="statement not covered" > this.resolveConnectionId();</span>
2070
2082
  <span class="cstat-no" title="statement not covered" > };</span>
2071
2083
  &nbsp;
2072
2084
  /**
@@ -2455,7 +2467,7 @@ export class StreamClient {
2455
2467
  <span class="cstat-no" title="statement not covered" > }</span>
2456
2468
  &nbsp;
2457
2469
  <span class="fstat-no" title="function not covered" > _getToken() {</span>
2458
- <span class="cstat-no" title="statement not covered" > if (!this.tokenManager || this.anonymous) return null;</span>
2470
+ <span class="cstat-no" title="statement not covered" > if (!this.tokenManager) return null;</span>
2459
2471
  <span class="cstat-no" title="statement not covered" ></span>
2460
2472
  <span class="cstat-no" title="statement not covered" > return this.tokenManager.getToken();</span>
2461
2473
  <span class="cstat-no" title="statement not covered" > }</span>
@@ -2488,7 +2500,7 @@ export class StreamClient {
2488
2500
  <div class='footer quiet pad2 space-top1 center small'>
2489
2501
  Code coverage generated by
2490
2502
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
2491
- at 2023-04-20T08:13:26.523Z
2503
+ at 2023-04-20T15:23:43.681Z
2492
2504
  </div>
2493
2505
  <script src="../../../prettify.js"></script>
2494
2506
  <script>