livekit-client 0.14.3 → 0.15.3

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 (119) hide show
  1. package/.github/workflows/{lint.yaml → test.yaml} +7 -4
  2. package/.gitmodules +3 -0
  3. package/README.md +46 -14
  4. package/dist/api/SignalClient.d.ts +12 -32
  5. package/dist/api/SignalClient.js +59 -8
  6. package/dist/api/SignalClient.js.map +1 -1
  7. package/dist/connect.d.ts +1 -1
  8. package/dist/connect.js +71 -73
  9. package/dist/connect.js.map +1 -1
  10. package/dist/index.d.ts +6 -4
  11. package/dist/index.js +8 -5
  12. package/dist/index.js.map +1 -1
  13. package/dist/logger.d.ts +10 -0
  14. package/dist/logger.js +15 -0
  15. package/dist/logger.js.map +1 -1
  16. package/dist/options.d.ts +83 -19
  17. package/dist/options.js +0 -10
  18. package/dist/options.js.map +1 -1
  19. package/dist/proto/livekit_models.d.ts +45 -1
  20. package/dist/proto/livekit_models.js +333 -4
  21. package/dist/proto/livekit_models.js.map +1 -1
  22. package/dist/proto/livekit_rtc.d.ts +148 -7
  23. package/dist/proto/livekit_rtc.js +1047 -30
  24. package/dist/proto/livekit_rtc.js.map +1 -1
  25. package/dist/room/PCTransport.js +4 -0
  26. package/dist/room/PCTransport.js.map +1 -1
  27. package/dist/room/RTCEngine.d.ts +4 -2
  28. package/dist/room/RTCEngine.js +36 -38
  29. package/dist/room/RTCEngine.js.map +1 -1
  30. package/dist/room/Room.d.ts +23 -17
  31. package/dist/room/Room.js +205 -71
  32. package/dist/room/Room.js.map +1 -1
  33. package/dist/room/events.d.ts +143 -14
  34. package/dist/room/events.js +142 -13
  35. package/dist/room/events.js.map +1 -1
  36. package/dist/room/participant/LocalParticipant.d.ts +53 -13
  37. package/dist/room/participant/LocalParticipant.js +244 -169
  38. package/dist/room/participant/LocalParticipant.js.map +1 -1
  39. package/dist/room/participant/Participant.d.ts +3 -1
  40. package/dist/room/participant/Participant.js +3 -1
  41. package/dist/room/participant/Participant.js.map +1 -1
  42. package/dist/room/participant/ParticipantTrackPermission.d.ts +19 -0
  43. package/dist/room/participant/ParticipantTrackPermission.js +16 -0
  44. package/dist/room/participant/ParticipantTrackPermission.js.map +1 -0
  45. package/dist/room/participant/RemoteParticipant.d.ts +2 -2
  46. package/dist/room/participant/RemoteParticipant.js +10 -15
  47. package/dist/room/participant/RemoteParticipant.js.map +1 -1
  48. package/dist/room/participant/publishUtils.d.ts +11 -0
  49. package/dist/room/participant/publishUtils.js +148 -0
  50. package/dist/room/participant/publishUtils.js.map +1 -0
  51. package/dist/room/participant/publishUtils.test.d.ts +1 -0
  52. package/dist/room/participant/publishUtils.test.js +79 -0
  53. package/dist/room/participant/publishUtils.test.js.map +1 -0
  54. package/dist/room/stats.d.ts +21 -6
  55. package/dist/room/stats.js +22 -1
  56. package/dist/room/stats.js.map +1 -1
  57. package/dist/room/track/LocalAudioTrack.d.ts +8 -3
  58. package/dist/room/track/LocalAudioTrack.js +49 -3
  59. package/dist/room/track/LocalAudioTrack.js.map +1 -1
  60. package/dist/room/track/LocalTrack.d.ts +1 -3
  61. package/dist/room/track/LocalTrack.js +3 -50
  62. package/dist/room/track/LocalTrack.js.map +1 -1
  63. package/dist/room/track/LocalTrackPublication.d.ts +3 -1
  64. package/dist/room/track/LocalTrackPublication.js +15 -5
  65. package/dist/room/track/LocalTrackPublication.js.map +1 -1
  66. package/dist/room/track/LocalVideoTrack.d.ts +14 -5
  67. package/dist/room/track/LocalVideoTrack.js +156 -62
  68. package/dist/room/track/LocalVideoTrack.js.map +1 -1
  69. package/dist/room/track/LocalVideoTrack.test.d.ts +1 -0
  70. package/dist/room/track/LocalVideoTrack.test.js +68 -0
  71. package/dist/room/track/LocalVideoTrack.test.js.map +1 -0
  72. package/dist/room/track/RemoteAudioTrack.d.ts +6 -8
  73. package/dist/room/track/RemoteAudioTrack.js +55 -19
  74. package/dist/room/track/RemoteAudioTrack.js.map +1 -1
  75. package/dist/room/track/RemoteTrack.d.ts +14 -0
  76. package/dist/room/track/RemoteTrack.js +47 -0
  77. package/dist/room/track/RemoteTrack.js.map +1 -0
  78. package/dist/room/track/RemoteTrackPublication.d.ts +10 -4
  79. package/dist/room/track/RemoteTrackPublication.js +41 -15
  80. package/dist/room/track/RemoteTrackPublication.js.map +1 -1
  81. package/dist/room/track/RemoteVideoTrack.d.ts +7 -9
  82. package/dist/room/track/RemoteVideoTrack.js +77 -41
  83. package/dist/room/track/RemoteVideoTrack.js.map +1 -1
  84. package/dist/room/track/Track.d.ts +13 -2
  85. package/dist/room/track/Track.js +34 -2
  86. package/dist/room/track/Track.js.map +1 -1
  87. package/dist/room/track/TrackPublication.d.ts +14 -1
  88. package/dist/room/track/TrackPublication.js +24 -7
  89. package/dist/room/track/TrackPublication.js.map +1 -1
  90. package/dist/room/track/create.d.ts +4 -6
  91. package/dist/room/track/create.js +10 -57
  92. package/dist/room/track/create.js.map +1 -1
  93. package/dist/room/track/defaults.d.ts +4 -0
  94. package/dist/room/track/defaults.js +21 -0
  95. package/dist/room/track/defaults.js.map +1 -0
  96. package/dist/room/track/options.d.ts +15 -65
  97. package/dist/room/track/options.js +14 -13
  98. package/dist/room/track/options.js.map +1 -1
  99. package/dist/room/track/utils.d.ts +3 -0
  100. package/dist/room/track/utils.js +68 -0
  101. package/dist/room/track/utils.js.map +1 -0
  102. package/dist/room/track/utils.test.d.ts +1 -0
  103. package/dist/room/track/utils.test.js +85 -0
  104. package/dist/room/track/utils.test.js.map +1 -0
  105. package/dist/room/utils.d.ts +1 -1
  106. package/dist/room/utils.js +5 -6
  107. package/dist/room/utils.js.map +1 -1
  108. package/dist/version.d.ts +1 -1
  109. package/dist/version.js +1 -1
  110. package/example/index.html +193 -178
  111. package/example/sample.ts +467 -327
  112. package/example/styles.css +144 -0
  113. package/example/webpack.config.js +1 -1
  114. package/jest.config.js +6 -0
  115. package/package.json +9 -6
  116. package/tsconfig.eslint.json +8 -1
  117. package/dist/room/defaults.d.ts +0 -5
  118. package/dist/room/defaults.js +0 -32
  119. package/dist/room/defaults.js.map +0 -1
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.UserPacket = exports.SpeakerInfo = exports.ActiveSpeakerUpdate = exports.DataPacket = exports.TrackInfo = exports.ParticipantInfo = exports.Codec = exports.Room = exports.dataPacket_KindToJSON = exports.dataPacket_KindFromJSON = exports.DataPacket_Kind = exports.participantInfo_StateToJSON = exports.participantInfo_StateFromJSON = exports.ParticipantInfo_State = exports.connectionQualityToJSON = exports.connectionQualityFromJSON = exports.ConnectionQuality = exports.trackSourceToJSON = exports.trackSourceFromJSON = exports.TrackSource = exports.trackTypeToJSON = exports.trackTypeFromJSON = exports.TrackType = exports.protobufPackage = void 0;
6
+ exports.ParticipantTracks = exports.UserPacket = exports.SpeakerInfo = exports.ActiveSpeakerUpdate = exports.DataPacket = exports.VideoLayer = exports.TrackInfo = exports.ParticipantInfo = exports.Codec = exports.Room = exports.dataPacket_KindToJSON = exports.dataPacket_KindFromJSON = exports.DataPacket_Kind = exports.participantInfo_StateToJSON = exports.participantInfo_StateFromJSON = exports.ParticipantInfo_State = exports.connectionQualityToJSON = exports.connectionQualityFromJSON = exports.ConnectionQuality = exports.videoQualityToJSON = exports.videoQualityFromJSON = exports.VideoQuality = exports.trackSourceToJSON = exports.trackSourceFromJSON = exports.TrackSource = exports.trackTypeToJSON = exports.trackTypeFromJSON = exports.TrackType = exports.protobufPackage = void 0;
7
7
  /* eslint-disable */
8
8
  const long_1 = __importDefault(require("long"));
9
9
  const minimal_1 = __importDefault(require("protobufjs/minimal"));
@@ -96,6 +96,50 @@ function trackSourceToJSON(object) {
96
96
  }
97
97
  }
98
98
  exports.trackSourceToJSON = trackSourceToJSON;
99
+ var VideoQuality;
100
+ (function (VideoQuality) {
101
+ VideoQuality[VideoQuality["LOW"] = 0] = "LOW";
102
+ VideoQuality[VideoQuality["MEDIUM"] = 1] = "MEDIUM";
103
+ VideoQuality[VideoQuality["HIGH"] = 2] = "HIGH";
104
+ VideoQuality[VideoQuality["OFF"] = 3] = "OFF";
105
+ VideoQuality[VideoQuality["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
106
+ })(VideoQuality = exports.VideoQuality || (exports.VideoQuality = {}));
107
+ function videoQualityFromJSON(object) {
108
+ switch (object) {
109
+ case 0:
110
+ case "LOW":
111
+ return VideoQuality.LOW;
112
+ case 1:
113
+ case "MEDIUM":
114
+ return VideoQuality.MEDIUM;
115
+ case 2:
116
+ case "HIGH":
117
+ return VideoQuality.HIGH;
118
+ case 3:
119
+ case "OFF":
120
+ return VideoQuality.OFF;
121
+ case -1:
122
+ case "UNRECOGNIZED":
123
+ default:
124
+ return VideoQuality.UNRECOGNIZED;
125
+ }
126
+ }
127
+ exports.videoQualityFromJSON = videoQualityFromJSON;
128
+ function videoQualityToJSON(object) {
129
+ switch (object) {
130
+ case VideoQuality.LOW:
131
+ return "LOW";
132
+ case VideoQuality.MEDIUM:
133
+ return "MEDIUM";
134
+ case VideoQuality.HIGH:
135
+ return "HIGH";
136
+ case VideoQuality.OFF:
137
+ return "OFF";
138
+ default:
139
+ return "UNKNOWN";
140
+ }
141
+ }
142
+ exports.videoQualityToJSON = videoQualityToJSON;
99
143
  var ConnectionQuality;
100
144
  (function (ConnectionQuality) {
101
145
  ConnectionQuality[ConnectionQuality["POOR"] = 0] = "POOR";
@@ -223,6 +267,7 @@ const baseRoom = {
223
267
  turnPassword: "",
224
268
  metadata: "",
225
269
  numParticipants: 0,
270
+ activeRecording: false,
226
271
  };
227
272
  exports.Room = {
228
273
  encode(message, writer = minimal_1.default.Writer.create()) {
@@ -253,6 +298,9 @@ exports.Room = {
253
298
  if (message.numParticipants !== 0) {
254
299
  writer.uint32(72).uint32(message.numParticipants);
255
300
  }
301
+ if (message.activeRecording === true) {
302
+ writer.uint32(80).bool(message.activeRecording);
303
+ }
256
304
  return writer;
257
305
  },
258
306
  decode(input, length) {
@@ -290,6 +338,9 @@ exports.Room = {
290
338
  case 9:
291
339
  message.numParticipants = reader.uint32();
292
340
  break;
341
+ case 10:
342
+ message.activeRecording = reader.bool();
343
+ break;
293
344
  default:
294
345
  reader.skipType(tag & 7);
295
346
  break;
@@ -355,6 +406,13 @@ exports.Room = {
355
406
  else {
356
407
  message.numParticipants = 0;
357
408
  }
409
+ if (object.activeRecording !== undefined &&
410
+ object.activeRecording !== null) {
411
+ message.activeRecording = Boolean(object.activeRecording);
412
+ }
413
+ else {
414
+ message.activeRecording = false;
415
+ }
358
416
  return message;
359
417
  },
360
418
  toJSON(message) {
@@ -378,10 +436,12 @@ exports.Room = {
378
436
  message.metadata !== undefined && (obj.metadata = message.metadata);
379
437
  message.numParticipants !== undefined &&
380
438
  (obj.numParticipants = message.numParticipants);
439
+ message.activeRecording !== undefined &&
440
+ (obj.activeRecording = message.activeRecording);
381
441
  return obj;
382
442
  },
383
443
  fromPartial(object) {
384
- var _a, _b, _c, _d, _e, _f, _g, _h;
444
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
385
445
  const message = Object.assign({}, baseRoom);
386
446
  message.sid = (_a = object.sid) !== null && _a !== void 0 ? _a : "";
387
447
  message.name = (_b = object.name) !== null && _b !== void 0 ? _b : "";
@@ -397,6 +457,7 @@ exports.Room = {
397
457
  }
398
458
  message.metadata = (_g = object.metadata) !== null && _g !== void 0 ? _g : "";
399
459
  message.numParticipants = (_h = object.numParticipants) !== null && _h !== void 0 ? _h : 0;
460
+ message.activeRecording = (_j = object.activeRecording) !== null && _j !== void 0 ? _j : false;
400
461
  return message;
401
462
  },
402
463
  };
@@ -468,6 +529,8 @@ const baseParticipantInfo = {
468
529
  metadata: "",
469
530
  joinedAt: 0,
470
531
  hidden: false,
532
+ recorder: false,
533
+ name: "",
471
534
  };
472
535
  exports.ParticipantInfo = {
473
536
  encode(message, writer = minimal_1.default.Writer.create()) {
@@ -492,6 +555,12 @@ exports.ParticipantInfo = {
492
555
  if (message.hidden === true) {
493
556
  writer.uint32(56).bool(message.hidden);
494
557
  }
558
+ if (message.recorder === true) {
559
+ writer.uint32(64).bool(message.recorder);
560
+ }
561
+ if (message.name !== "") {
562
+ writer.uint32(74).string(message.name);
563
+ }
495
564
  return writer;
496
565
  },
497
566
  decode(input, length) {
@@ -523,6 +592,12 @@ exports.ParticipantInfo = {
523
592
  case 7:
524
593
  message.hidden = reader.bool();
525
594
  break;
595
+ case 8:
596
+ message.recorder = reader.bool();
597
+ break;
598
+ case 9:
599
+ message.name = reader.string();
600
+ break;
526
601
  default:
527
602
  reader.skipType(tag & 7);
528
603
  break;
@@ -574,6 +649,18 @@ exports.ParticipantInfo = {
574
649
  else {
575
650
  message.hidden = false;
576
651
  }
652
+ if (object.recorder !== undefined && object.recorder !== null) {
653
+ message.recorder = Boolean(object.recorder);
654
+ }
655
+ else {
656
+ message.recorder = false;
657
+ }
658
+ if (object.name !== undefined && object.name !== null) {
659
+ message.name = String(object.name);
660
+ }
661
+ else {
662
+ message.name = "";
663
+ }
577
664
  return message;
578
665
  },
579
666
  toJSON(message) {
@@ -591,10 +678,12 @@ exports.ParticipantInfo = {
591
678
  message.metadata !== undefined && (obj.metadata = message.metadata);
592
679
  message.joinedAt !== undefined && (obj.joinedAt = message.joinedAt);
593
680
  message.hidden !== undefined && (obj.hidden = message.hidden);
681
+ message.recorder !== undefined && (obj.recorder = message.recorder);
682
+ message.name !== undefined && (obj.name = message.name);
594
683
  return obj;
595
684
  },
596
685
  fromPartial(object) {
597
- var _a, _b, _c, _d, _e, _f;
686
+ var _a, _b, _c, _d, _e, _f, _g, _h;
598
687
  const message = Object.assign({}, baseParticipantInfo);
599
688
  message.sid = (_a = object.sid) !== null && _a !== void 0 ? _a : "";
600
689
  message.identity = (_b = object.identity) !== null && _b !== void 0 ? _b : "";
@@ -608,6 +697,8 @@ exports.ParticipantInfo = {
608
697
  message.metadata = (_d = object.metadata) !== null && _d !== void 0 ? _d : "";
609
698
  message.joinedAt = (_e = object.joinedAt) !== null && _e !== void 0 ? _e : 0;
610
699
  message.hidden = (_f = object.hidden) !== null && _f !== void 0 ? _f : false;
700
+ message.recorder = (_g = object.recorder) !== null && _g !== void 0 ? _g : false;
701
+ message.name = (_h = object.name) !== null && _h !== void 0 ? _h : "";
611
702
  return message;
612
703
  },
613
704
  };
@@ -621,6 +712,8 @@ const baseTrackInfo = {
621
712
  simulcast: false,
622
713
  disableDtx: false,
623
714
  source: 0,
715
+ mimeType: "",
716
+ mid: "",
624
717
  };
625
718
  exports.TrackInfo = {
626
719
  encode(message, writer = minimal_1.default.Writer.create()) {
@@ -651,12 +744,22 @@ exports.TrackInfo = {
651
744
  if (message.source !== 0) {
652
745
  writer.uint32(72).int32(message.source);
653
746
  }
747
+ for (const v of message.layers) {
748
+ exports.VideoLayer.encode(v, writer.uint32(82).fork()).ldelim();
749
+ }
750
+ if (message.mimeType !== "") {
751
+ writer.uint32(90).string(message.mimeType);
752
+ }
753
+ if (message.mid !== "") {
754
+ writer.uint32(98).string(message.mid);
755
+ }
654
756
  return writer;
655
757
  },
656
758
  decode(input, length) {
657
759
  const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
658
760
  let end = length === undefined ? reader.len : reader.pos + length;
659
761
  const message = Object.assign({}, baseTrackInfo);
762
+ message.layers = [];
660
763
  while (reader.pos < end) {
661
764
  const tag = reader.uint32();
662
765
  switch (tag >>> 3) {
@@ -687,6 +790,15 @@ exports.TrackInfo = {
687
790
  case 9:
688
791
  message.source = reader.int32();
689
792
  break;
793
+ case 10:
794
+ message.layers.push(exports.VideoLayer.decode(reader, reader.uint32()));
795
+ break;
796
+ case 11:
797
+ message.mimeType = reader.string();
798
+ break;
799
+ case 12:
800
+ message.mid = reader.string();
801
+ break;
690
802
  default:
691
803
  reader.skipType(tag & 7);
692
804
  break;
@@ -696,6 +808,7 @@ exports.TrackInfo = {
696
808
  },
697
809
  fromJSON(object) {
698
810
  const message = Object.assign({}, baseTrackInfo);
811
+ message.layers = [];
699
812
  if (object.sid !== undefined && object.sid !== null) {
700
813
  message.sid = String(object.sid);
701
814
  }
@@ -750,6 +863,23 @@ exports.TrackInfo = {
750
863
  else {
751
864
  message.source = 0;
752
865
  }
866
+ if (object.layers !== undefined && object.layers !== null) {
867
+ for (const e of object.layers) {
868
+ message.layers.push(exports.VideoLayer.fromJSON(e));
869
+ }
870
+ }
871
+ if (object.mimeType !== undefined && object.mimeType !== null) {
872
+ message.mimeType = String(object.mimeType);
873
+ }
874
+ else {
875
+ message.mimeType = "";
876
+ }
877
+ if (object.mid !== undefined && object.mid !== null) {
878
+ message.mid = String(object.mid);
879
+ }
880
+ else {
881
+ message.mid = "";
882
+ }
753
883
  return message;
754
884
  },
755
885
  toJSON(message) {
@@ -764,10 +894,18 @@ exports.TrackInfo = {
764
894
  message.disableDtx !== undefined && (obj.disableDtx = message.disableDtx);
765
895
  message.source !== undefined &&
766
896
  (obj.source = trackSourceToJSON(message.source));
897
+ if (message.layers) {
898
+ obj.layers = message.layers.map((e) => e ? exports.VideoLayer.toJSON(e) : undefined);
899
+ }
900
+ else {
901
+ obj.layers = [];
902
+ }
903
+ message.mimeType !== undefined && (obj.mimeType = message.mimeType);
904
+ message.mid !== undefined && (obj.mid = message.mid);
767
905
  return obj;
768
906
  },
769
907
  fromPartial(object) {
770
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
908
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
771
909
  const message = Object.assign({}, baseTrackInfo);
772
910
  message.sid = (_a = object.sid) !== null && _a !== void 0 ? _a : "";
773
911
  message.type = (_b = object.type) !== null && _b !== void 0 ? _b : 0;
@@ -778,6 +916,124 @@ exports.TrackInfo = {
778
916
  message.simulcast = (_g = object.simulcast) !== null && _g !== void 0 ? _g : false;
779
917
  message.disableDtx = (_h = object.disableDtx) !== null && _h !== void 0 ? _h : false;
780
918
  message.source = (_j = object.source) !== null && _j !== void 0 ? _j : 0;
919
+ message.layers = [];
920
+ if (object.layers !== undefined && object.layers !== null) {
921
+ for (const e of object.layers) {
922
+ message.layers.push(exports.VideoLayer.fromPartial(e));
923
+ }
924
+ }
925
+ message.mimeType = (_k = object.mimeType) !== null && _k !== void 0 ? _k : "";
926
+ message.mid = (_l = object.mid) !== null && _l !== void 0 ? _l : "";
927
+ return message;
928
+ },
929
+ };
930
+ const baseVideoLayer = {
931
+ quality: 0,
932
+ width: 0,
933
+ height: 0,
934
+ bitrate: 0,
935
+ ssrc: 0,
936
+ };
937
+ exports.VideoLayer = {
938
+ encode(message, writer = minimal_1.default.Writer.create()) {
939
+ if (message.quality !== 0) {
940
+ writer.uint32(8).int32(message.quality);
941
+ }
942
+ if (message.width !== 0) {
943
+ writer.uint32(16).uint32(message.width);
944
+ }
945
+ if (message.height !== 0) {
946
+ writer.uint32(24).uint32(message.height);
947
+ }
948
+ if (message.bitrate !== 0) {
949
+ writer.uint32(32).uint32(message.bitrate);
950
+ }
951
+ if (message.ssrc !== 0) {
952
+ writer.uint32(40).uint32(message.ssrc);
953
+ }
954
+ return writer;
955
+ },
956
+ decode(input, length) {
957
+ const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
958
+ let end = length === undefined ? reader.len : reader.pos + length;
959
+ const message = Object.assign({}, baseVideoLayer);
960
+ while (reader.pos < end) {
961
+ const tag = reader.uint32();
962
+ switch (tag >>> 3) {
963
+ case 1:
964
+ message.quality = reader.int32();
965
+ break;
966
+ case 2:
967
+ message.width = reader.uint32();
968
+ break;
969
+ case 3:
970
+ message.height = reader.uint32();
971
+ break;
972
+ case 4:
973
+ message.bitrate = reader.uint32();
974
+ break;
975
+ case 5:
976
+ message.ssrc = reader.uint32();
977
+ break;
978
+ default:
979
+ reader.skipType(tag & 7);
980
+ break;
981
+ }
982
+ }
983
+ return message;
984
+ },
985
+ fromJSON(object) {
986
+ const message = Object.assign({}, baseVideoLayer);
987
+ if (object.quality !== undefined && object.quality !== null) {
988
+ message.quality = videoQualityFromJSON(object.quality);
989
+ }
990
+ else {
991
+ message.quality = 0;
992
+ }
993
+ if (object.width !== undefined && object.width !== null) {
994
+ message.width = Number(object.width);
995
+ }
996
+ else {
997
+ message.width = 0;
998
+ }
999
+ if (object.height !== undefined && object.height !== null) {
1000
+ message.height = Number(object.height);
1001
+ }
1002
+ else {
1003
+ message.height = 0;
1004
+ }
1005
+ if (object.bitrate !== undefined && object.bitrate !== null) {
1006
+ message.bitrate = Number(object.bitrate);
1007
+ }
1008
+ else {
1009
+ message.bitrate = 0;
1010
+ }
1011
+ if (object.ssrc !== undefined && object.ssrc !== null) {
1012
+ message.ssrc = Number(object.ssrc);
1013
+ }
1014
+ else {
1015
+ message.ssrc = 0;
1016
+ }
1017
+ return message;
1018
+ },
1019
+ toJSON(message) {
1020
+ const obj = {};
1021
+ message.quality !== undefined &&
1022
+ (obj.quality = videoQualityToJSON(message.quality));
1023
+ message.width !== undefined && (obj.width = message.width);
1024
+ message.height !== undefined && (obj.height = message.height);
1025
+ message.bitrate !== undefined && (obj.bitrate = message.bitrate);
1026
+ message.ssrc !== undefined && (obj.ssrc = message.ssrc);
1027
+ return obj;
1028
+ },
1029
+ fromPartial(object) {
1030
+ var _a, _b, _c, _d, _e;
1031
+ const message = Object.assign({}, baseVideoLayer);
1032
+ message.quality = (_a = object.quality) !== null && _a !== void 0 ? _a : 0;
1033
+ message.width = (_b = object.width) !== null && _b !== void 0 ? _b : 0;
1034
+ message.height = (_c = object.height) !== null && _c !== void 0 ? _c : 0;
1035
+ message.bitrate = (_d = object.bitrate) !== null && _d !== void 0 ? _d : 0;
1036
+ message.ssrc = (_e = object.ssrc) !== null && _e !== void 0 ? _e : 0;
781
1037
  return message;
782
1038
  },
783
1039
  };
@@ -1092,6 +1348,79 @@ exports.UserPacket = {
1092
1348
  return message;
1093
1349
  },
1094
1350
  };
1351
+ const baseParticipantTracks = { participantSid: "", trackSids: "" };
1352
+ exports.ParticipantTracks = {
1353
+ encode(message, writer = minimal_1.default.Writer.create()) {
1354
+ if (message.participantSid !== "") {
1355
+ writer.uint32(10).string(message.participantSid);
1356
+ }
1357
+ for (const v of message.trackSids) {
1358
+ writer.uint32(18).string(v);
1359
+ }
1360
+ return writer;
1361
+ },
1362
+ decode(input, length) {
1363
+ const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
1364
+ let end = length === undefined ? reader.len : reader.pos + length;
1365
+ const message = Object.assign({}, baseParticipantTracks);
1366
+ message.trackSids = [];
1367
+ while (reader.pos < end) {
1368
+ const tag = reader.uint32();
1369
+ switch (tag >>> 3) {
1370
+ case 1:
1371
+ message.participantSid = reader.string();
1372
+ break;
1373
+ case 2:
1374
+ message.trackSids.push(reader.string());
1375
+ break;
1376
+ default:
1377
+ reader.skipType(tag & 7);
1378
+ break;
1379
+ }
1380
+ }
1381
+ return message;
1382
+ },
1383
+ fromJSON(object) {
1384
+ const message = Object.assign({}, baseParticipantTracks);
1385
+ message.trackSids = [];
1386
+ if (object.participantSid !== undefined && object.participantSid !== null) {
1387
+ message.participantSid = String(object.participantSid);
1388
+ }
1389
+ else {
1390
+ message.participantSid = "";
1391
+ }
1392
+ if (object.trackSids !== undefined && object.trackSids !== null) {
1393
+ for (const e of object.trackSids) {
1394
+ message.trackSids.push(String(e));
1395
+ }
1396
+ }
1397
+ return message;
1398
+ },
1399
+ toJSON(message) {
1400
+ const obj = {};
1401
+ message.participantSid !== undefined &&
1402
+ (obj.participantSid = message.participantSid);
1403
+ if (message.trackSids) {
1404
+ obj.trackSids = message.trackSids.map((e) => e);
1405
+ }
1406
+ else {
1407
+ obj.trackSids = [];
1408
+ }
1409
+ return obj;
1410
+ },
1411
+ fromPartial(object) {
1412
+ var _a;
1413
+ const message = Object.assign({}, baseParticipantTracks);
1414
+ message.participantSid = (_a = object.participantSid) !== null && _a !== void 0 ? _a : "";
1415
+ message.trackSids = [];
1416
+ if (object.trackSids !== undefined && object.trackSids !== null) {
1417
+ for (const e of object.trackSids) {
1418
+ message.trackSids.push(e);
1419
+ }
1420
+ }
1421
+ return message;
1422
+ },
1423
+ };
1095
1424
  var globalThis = (() => {
1096
1425
  if (typeof globalThis !== "undefined")
1097
1426
  return globalThis;