livekit-client 2.13.3 → 2.13.5
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.
- package/dist/livekit-client.esm.mjs +285 -7
- package/dist/livekit-client.esm.mjs.map +1 -1
- package/dist/livekit-client.umd.js +1 -1
- package/dist/livekit-client.umd.js.map +1 -1
- package/dist/src/api/SignalClient.d.ts.map +1 -1
- package/dist/src/index.d.ts +4 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/room/RTCEngine.d.ts +4 -0
- package/dist/src/room/RTCEngine.d.ts.map +1 -1
- package/dist/src/room/Room.d.ts +1 -1
- package/dist/src/room/Room.d.ts.map +1 -1
- package/dist/src/room/attribute-typings.d.ts +35 -0
- package/dist/src/room/attribute-typings.d.ts.map +1 -0
- package/dist/src/room/participant/LocalParticipant.d.ts.map +1 -1
- package/dist/src/utils/cloneDeep.d.ts.map +1 -1
- package/dist/src/utils/dataPacketBuffer.d.ts +15 -0
- package/dist/src/utils/dataPacketBuffer.d.ts.map +1 -0
- package/dist/src/utils/ttlmap.d.ts +20 -0
- package/dist/src/utils/ttlmap.d.ts.map +1 -0
- package/dist/ts4.2/src/index.d.ts +4 -1
- package/dist/ts4.2/src/room/RTCEngine.d.ts +4 -0
- package/dist/ts4.2/src/room/Room.d.ts +1 -1
- package/dist/ts4.2/src/room/attribute-typings.d.ts +35 -0
- package/dist/ts4.2/src/utils/dataPacketBuffer.d.ts +15 -0
- package/dist/ts4.2/src/utils/ttlmap.d.ts +20 -0
- package/package.json +2 -2
- package/src/api/SignalClient.ts +4 -1
- package/src/index.ts +3 -0
- package/src/room/RTCEngine.ts +63 -2
- package/src/room/Room.ts +2 -2
- package/src/room/attribute-typings.ts +61 -0
- package/src/room/participant/LocalParticipant.ts +2 -0
- package/src/utils/cloneDeep.ts +4 -0
- package/src/utils/dataPacketBuffer.ts +52 -0
- package/src/utils/ttlmap.ts +96 -0
@@ -2966,7 +2966,17 @@ function makeUtilCommon() {
|
|
2966
2966
|
}
|
2967
2967
|
switch (m.kind) {
|
2968
2968
|
case "message":
|
2969
|
-
|
2969
|
+
let a = va;
|
2970
|
+
let b = vb;
|
2971
|
+
if (m.T.fieldWrapper) {
|
2972
|
+
if (a !== undefined && !isMessage(a)) {
|
2973
|
+
a = m.T.fieldWrapper.wrapField(a);
|
2974
|
+
}
|
2975
|
+
if (b !== undefined && !isMessage(b)) {
|
2976
|
+
b = m.T.fieldWrapper.wrapField(b);
|
2977
|
+
}
|
2978
|
+
}
|
2979
|
+
return m.T.equals(a, b);
|
2970
2980
|
case "enum":
|
2971
2981
|
return scalarEquals(ScalarType.INT32, va, vb);
|
2972
2982
|
case "scalar":
|
@@ -3887,6 +3897,9 @@ const DisconnectReason = /* @__PURE__ */proto3.makeEnum("livekit.DisconnectReaso
|
|
3887
3897
|
}, {
|
3888
3898
|
no: 14,
|
3889
3899
|
name: "CONNECTION_TIMEOUT"
|
3900
|
+
}, {
|
3901
|
+
no: 15,
|
3902
|
+
name: "MEDIA_FAILURE"
|
3890
3903
|
}]);
|
3891
3904
|
const ReconnectReason = /* @__PURE__ */proto3.makeEnum("livekit.ReconnectReason", [{
|
3892
3905
|
no: 0,
|
@@ -4491,6 +4504,18 @@ const DataPacket = /* @__PURE__ */proto3.makeMessageType("livekit.DataPacket", (
|
|
4491
4504
|
kind: "message",
|
4492
4505
|
T: DataStream_Trailer,
|
4493
4506
|
oneof: "value"
|
4507
|
+
}, {
|
4508
|
+
no: 16,
|
4509
|
+
name: "sequence",
|
4510
|
+
kind: "scalar",
|
4511
|
+
T: 13
|
4512
|
+
/* ScalarType.UINT32 */
|
4513
|
+
}, {
|
4514
|
+
no: 17,
|
4515
|
+
name: "participant_sid",
|
4516
|
+
kind: "scalar",
|
4517
|
+
T: 9
|
4518
|
+
/* ScalarType.STRING */
|
4494
4519
|
}]);
|
4495
4520
|
const DataPacket_Kind = /* @__PURE__ */proto3.makeEnum("livekit.DataPacket.Kind", [{
|
4496
4521
|
no: 0,
|
@@ -5676,6 +5701,17 @@ const ReconnectResponse = /* @__PURE__ */proto3.makeMessageType("livekit.Reconne
|
|
5676
5701
|
name: "client_configuration",
|
5677
5702
|
kind: "message",
|
5678
5703
|
T: ClientConfiguration
|
5704
|
+
}, {
|
5705
|
+
no: 3,
|
5706
|
+
name: "server_info",
|
5707
|
+
kind: "message",
|
5708
|
+
T: ServerInfo
|
5709
|
+
}, {
|
5710
|
+
no: 4,
|
5711
|
+
name: "last_message_seq",
|
5712
|
+
kind: "scalar",
|
5713
|
+
T: 13
|
5714
|
+
/* ScalarType.UINT32 */
|
5679
5715
|
}]);
|
5680
5716
|
const TrackPublishedResponse = /* @__PURE__ */proto3.makeMessageType("livekit.TrackPublishedResponse", () => [{
|
5681
5717
|
no: 1,
|
@@ -6122,6 +6158,25 @@ const SyncState = /* @__PURE__ */proto3.makeMessageType("livekit.SyncState", ()
|
|
6122
6158
|
kind: "scalar",
|
6123
6159
|
T: 9,
|
6124
6160
|
repeated: true
|
6161
|
+
}, {
|
6162
|
+
no: 7,
|
6163
|
+
name: "datachannel_receive_states",
|
6164
|
+
kind: "message",
|
6165
|
+
T: DataChannelReceiveState,
|
6166
|
+
repeated: true
|
6167
|
+
}]);
|
6168
|
+
const DataChannelReceiveState = /* @__PURE__ */proto3.makeMessageType("livekit.DataChannelReceiveState", () => [{
|
6169
|
+
no: 1,
|
6170
|
+
name: "publisher_sid",
|
6171
|
+
kind: "scalar",
|
6172
|
+
T: 9
|
6173
|
+
/* ScalarType.STRING */
|
6174
|
+
}, {
|
6175
|
+
no: 2,
|
6176
|
+
name: "last_seq",
|
6177
|
+
kind: "scalar",
|
6178
|
+
T: 13
|
6179
|
+
/* ScalarType.UINT32 */
|
6125
6180
|
}]);
|
6126
6181
|
const DataChannelInfo = /* @__PURE__ */proto3.makeMessageType("livekit.DataChannelInfo", () => [{
|
6127
6182
|
no: 1,
|
@@ -11192,6 +11247,10 @@ function cloneDeep(value) {
|
|
11192
11247
|
return value;
|
11193
11248
|
}
|
11194
11249
|
if (typeof structuredClone === 'function') {
|
11250
|
+
if (typeof value === 'object' && value !== null) {
|
11251
|
+
// ensure that the value is not a proxy by spreading it
|
11252
|
+
return structuredClone(Object.assign({}, value));
|
11253
|
+
}
|
11195
11254
|
return structuredClone(value);
|
11196
11255
|
} else {
|
11197
11256
|
return JSON.parse(JSON.stringify(value));
|
@@ -11266,7 +11325,7 @@ function getOSVersion(ua) {
|
|
11266
11325
|
return ua.includes('mac os') ? getMatch(/\(.+?(\d+_\d+(:?_\d+)?)/, ua, 1).replace(/_/g, '.') : undefined;
|
11267
11326
|
}
|
11268
11327
|
|
11269
|
-
var version$1 = "2.13.
|
11328
|
+
var version$1 = "2.13.5";
|
11270
11329
|
|
11271
11330
|
const version = version$1;
|
11272
11331
|
const protocolVersion = 16;
|
@@ -13185,7 +13244,10 @@ class SignalClient {
|
|
13185
13244
|
sid,
|
13186
13245
|
reconnectReason: reason
|
13187
13246
|
}));
|
13188
|
-
|
13247
|
+
if (res instanceof ReconnectResponse) {
|
13248
|
+
return res;
|
13249
|
+
}
|
13250
|
+
return;
|
13189
13251
|
});
|
13190
13252
|
}
|
13191
13253
|
connect(url, token, opts, abortSignal) {
|
@@ -13783,6 +13845,135 @@ function createConnectionParams(token, info, opts) {
|
|
13783
13845
|
return params;
|
13784
13846
|
}
|
13785
13847
|
|
13848
|
+
class DataPacketBuffer {
|
13849
|
+
constructor() {
|
13850
|
+
this.buffer = [];
|
13851
|
+
this._totalSize = 0;
|
13852
|
+
}
|
13853
|
+
push(item) {
|
13854
|
+
this.buffer.push(item);
|
13855
|
+
this._totalSize += item.data.byteLength;
|
13856
|
+
}
|
13857
|
+
pop() {
|
13858
|
+
const item = this.buffer.shift();
|
13859
|
+
if (item) {
|
13860
|
+
this._totalSize -= item.data.byteLength;
|
13861
|
+
}
|
13862
|
+
return item;
|
13863
|
+
}
|
13864
|
+
getAll() {
|
13865
|
+
return this.buffer.slice();
|
13866
|
+
}
|
13867
|
+
popToSequence(sequence) {
|
13868
|
+
while (this.buffer.length > 0) {
|
13869
|
+
const first = this.buffer[0];
|
13870
|
+
if (first.sequence <= sequence) {
|
13871
|
+
this.pop();
|
13872
|
+
} else {
|
13873
|
+
break;
|
13874
|
+
}
|
13875
|
+
}
|
13876
|
+
}
|
13877
|
+
alignBufferedAmount(bufferedAmount) {
|
13878
|
+
while (this.buffer.length > 0) {
|
13879
|
+
const first = this.buffer[0];
|
13880
|
+
if (this._totalSize - first.data.byteLength <= bufferedAmount) {
|
13881
|
+
break;
|
13882
|
+
}
|
13883
|
+
this.pop();
|
13884
|
+
}
|
13885
|
+
}
|
13886
|
+
get length() {
|
13887
|
+
return this.buffer.length;
|
13888
|
+
}
|
13889
|
+
}
|
13890
|
+
|
13891
|
+
class TTLMap {
|
13892
|
+
/**
|
13893
|
+
* @param ttl ttl of the key (ms)
|
13894
|
+
*/
|
13895
|
+
constructor(ttl) {
|
13896
|
+
this._map = new Map();
|
13897
|
+
this._lastCleanup = 0;
|
13898
|
+
this.ttl = ttl;
|
13899
|
+
}
|
13900
|
+
set(key, value) {
|
13901
|
+
const now = Date.now();
|
13902
|
+
if (now - this._lastCleanup > this.ttl / 2) {
|
13903
|
+
this.cleanup();
|
13904
|
+
}
|
13905
|
+
const expiresAt = now + this.ttl;
|
13906
|
+
this._map.set(key, {
|
13907
|
+
value,
|
13908
|
+
expiresAt
|
13909
|
+
});
|
13910
|
+
return this;
|
13911
|
+
}
|
13912
|
+
get(key) {
|
13913
|
+
const entry = this._map.get(key);
|
13914
|
+
if (!entry) return undefined;
|
13915
|
+
if (entry.expiresAt < Date.now()) {
|
13916
|
+
this._map.delete(key);
|
13917
|
+
return undefined;
|
13918
|
+
}
|
13919
|
+
return entry.value;
|
13920
|
+
}
|
13921
|
+
has(key) {
|
13922
|
+
const entry = this._map.get(key);
|
13923
|
+
if (!entry) return false;
|
13924
|
+
if (entry.expiresAt < Date.now()) {
|
13925
|
+
this._map.delete(key);
|
13926
|
+
return false;
|
13927
|
+
}
|
13928
|
+
return true;
|
13929
|
+
}
|
13930
|
+
delete(key) {
|
13931
|
+
return this._map.delete(key);
|
13932
|
+
}
|
13933
|
+
clear() {
|
13934
|
+
this._map.clear();
|
13935
|
+
}
|
13936
|
+
cleanup() {
|
13937
|
+
const now = Date.now();
|
13938
|
+
for (const [key, entry] of this._map.entries()) {
|
13939
|
+
if (entry.expiresAt < now) {
|
13940
|
+
this._map.delete(key);
|
13941
|
+
}
|
13942
|
+
}
|
13943
|
+
this._lastCleanup = now;
|
13944
|
+
}
|
13945
|
+
get size() {
|
13946
|
+
this.cleanup();
|
13947
|
+
return this._map.size;
|
13948
|
+
}
|
13949
|
+
forEach(callback) {
|
13950
|
+
this.cleanup();
|
13951
|
+
for (const [key, entry] of this._map.entries()) {
|
13952
|
+
if (entry.expiresAt >= Date.now()) {
|
13953
|
+
callback(entry.value, key, this.asValueMap());
|
13954
|
+
}
|
13955
|
+
}
|
13956
|
+
}
|
13957
|
+
map(callback) {
|
13958
|
+
this.cleanup();
|
13959
|
+
const result = [];
|
13960
|
+
const valueMap = this.asValueMap();
|
13961
|
+
for (const [key, value] of valueMap.entries()) {
|
13962
|
+
result.push(callback(value, key, valueMap));
|
13963
|
+
}
|
13964
|
+
return result;
|
13965
|
+
}
|
13966
|
+
asValueMap() {
|
13967
|
+
const result = new Map();
|
13968
|
+
for (const [key, entry] of this._map.entries()) {
|
13969
|
+
if (entry.expiresAt >= Date.now()) {
|
13970
|
+
result.set(key, entry.value);
|
13971
|
+
}
|
13972
|
+
}
|
13973
|
+
return result;
|
13974
|
+
}
|
13975
|
+
}
|
13976
|
+
|
13786
13977
|
var lib = {};
|
13787
13978
|
|
13788
13979
|
var parser = {};
|
@@ -17362,6 +17553,7 @@ const lossyDataChannel = '_lossy';
|
|
17362
17553
|
const reliableDataChannel = '_reliable';
|
17363
17554
|
const minReconnectWait = 2 * 1000;
|
17364
17555
|
const leaveReconnect = 'leave-reconnect';
|
17556
|
+
const reliabeReceiveStateTTL = 30000;
|
17365
17557
|
var PCState;
|
17366
17558
|
(function (PCState) {
|
17367
17559
|
PCState[PCState["New"] = 0] = "New";
|
@@ -17398,6 +17590,9 @@ class RTCEngine extends eventsExports.EventEmitter {
|
|
17398
17590
|
this.maxJoinAttempts = 1;
|
17399
17591
|
this.shouldFailNext = false;
|
17400
17592
|
this.log = livekitLogger;
|
17593
|
+
this.reliableDataSequence = 1;
|
17594
|
+
this.reliableMessageBuffer = new DataPacketBuffer();
|
17595
|
+
this.reliableReceivedState = new TTLMap(reliabeReceiveStateTTL);
|
17401
17596
|
this.handleDataChannel = _a => __awaiter(this, [_a], void 0, function (_ref) {
|
17402
17597
|
var _this = this;
|
17403
17598
|
let {
|
@@ -17436,6 +17631,14 @@ class RTCEngine extends eventsExports.EventEmitter {
|
|
17436
17631
|
return;
|
17437
17632
|
}
|
17438
17633
|
const dp = DataPacket.fromBinary(new Uint8Array(buffer));
|
17634
|
+
if (dp.sequence > 0 && dp.participantSid !== '') {
|
17635
|
+
const lastSeq = this.reliableReceivedState.get(dp.participantSid);
|
17636
|
+
if (lastSeq && dp.sequence <= lastSeq) {
|
17637
|
+
// ignore duplicate or out-of-order packets in reliable channel
|
17638
|
+
return;
|
17639
|
+
}
|
17640
|
+
this.reliableReceivedState.set(dp.participantSid, dp.sequence);
|
17641
|
+
}
|
17439
17642
|
if (((_a = dp.value) === null || _a === void 0 ? void 0 : _a.case) === 'speaker') {
|
17440
17643
|
// dispatch speaker updates
|
17441
17644
|
this.emit(EngineEvent.ActiveSpeakersUpdate, dp.value.value.speakers);
|
@@ -17536,6 +17739,9 @@ class RTCEngine extends eventsExports.EventEmitter {
|
|
17536
17739
|
this.isBufferStatusLow = kind => {
|
17537
17740
|
const dc = this.dataChannelForKind(kind);
|
17538
17741
|
if (dc) {
|
17742
|
+
if (kind === DataPacket_Kind.RELIABLE) {
|
17743
|
+
this.reliableMessageBuffer.alignBufferedAmount(dc.bufferedAmount);
|
17744
|
+
}
|
17539
17745
|
return dc.bufferedAmount <= dc.bufferedAmountLowThreshold;
|
17540
17746
|
}
|
17541
17747
|
};
|
@@ -17657,6 +17863,9 @@ class RTCEngine extends eventsExports.EventEmitter {
|
|
17657
17863
|
this.lossyDCSub = undefined;
|
17658
17864
|
this.reliableDC = undefined;
|
17659
17865
|
this.reliableDCSub = undefined;
|
17866
|
+
this.reliableMessageBuffer = new DataPacketBuffer();
|
17867
|
+
this.reliableDataSequence = 1;
|
17868
|
+
this.reliableReceivedState.clear();
|
17660
17869
|
});
|
17661
17870
|
}
|
17662
17871
|
cleanupClient() {
|
@@ -18181,6 +18390,9 @@ class RTCEngine extends eventsExports.EventEmitter {
|
|
18181
18390
|
if (res) {
|
18182
18391
|
const rtcConfig = this.makeRTCConfiguration(res);
|
18183
18392
|
this.pcManager.updateConfiguration(rtcConfig);
|
18393
|
+
if (this.latestJoinResponse) {
|
18394
|
+
this.latestJoinResponse.serverInfo = res.serverInfo;
|
18395
|
+
}
|
18184
18396
|
} else {
|
18185
18397
|
this.log.warn('Did not receive reconnect response', this.logContext);
|
18186
18398
|
}
|
@@ -18200,6 +18412,9 @@ class RTCEngine extends eventsExports.EventEmitter {
|
|
18200
18412
|
if (((_a = this.reliableDC) === null || _a === void 0 ? void 0 : _a.readyState) === 'open' && this.reliableDC.id === null) {
|
18201
18413
|
this.createDataChannels();
|
18202
18414
|
}
|
18415
|
+
if (res === null || res === void 0 ? void 0 : res.lastMessageSeq) {
|
18416
|
+
this.resendReliableMessagesForResume(res.lastMessageSeq);
|
18417
|
+
}
|
18203
18418
|
// resume success
|
18204
18419
|
this.emit(EngineEvent.Resumed);
|
18205
18420
|
});
|
@@ -18272,16 +18487,42 @@ class RTCEngine extends eventsExports.EventEmitter {
|
|
18272
18487
|
/* @internal */
|
18273
18488
|
sendDataPacket(packet, kind) {
|
18274
18489
|
return __awaiter(this, void 0, void 0, function* () {
|
18275
|
-
const msg = packet.toBinary();
|
18276
18490
|
// make sure we do have a data connection
|
18277
18491
|
yield this.ensurePublisherConnected(kind);
|
18492
|
+
if (kind === DataPacket_Kind.RELIABLE) {
|
18493
|
+
packet.sequence = this.reliableDataSequence;
|
18494
|
+
this.reliableDataSequence += 1;
|
18495
|
+
}
|
18496
|
+
const msg = packet.toBinary();
|
18278
18497
|
const dc = this.dataChannelForKind(kind);
|
18279
18498
|
if (dc) {
|
18499
|
+
if (kind === DataPacket_Kind.RELIABLE) {
|
18500
|
+
this.reliableMessageBuffer.push({
|
18501
|
+
data: msg,
|
18502
|
+
sequence: packet.sequence
|
18503
|
+
});
|
18504
|
+
}
|
18505
|
+
if (this.attemptingReconnect) {
|
18506
|
+
return;
|
18507
|
+
}
|
18280
18508
|
dc.send(msg);
|
18281
18509
|
}
|
18282
18510
|
this.updateAndEmitDCBufferStatus(kind);
|
18283
18511
|
});
|
18284
18512
|
}
|
18513
|
+
resendReliableMessagesForResume(lastMessageSeq) {
|
18514
|
+
return __awaiter(this, void 0, void 0, function* () {
|
18515
|
+
yield this.ensurePublisherConnected(DataPacket_Kind.RELIABLE);
|
18516
|
+
const dc = this.dataChannelForKind(DataPacket_Kind.RELIABLE);
|
18517
|
+
if (dc) {
|
18518
|
+
this.reliableMessageBuffer.popToSequence(lastMessageSeq);
|
18519
|
+
this.reliableMessageBuffer.getAll().forEach(msg => {
|
18520
|
+
dc.send(msg.data);
|
18521
|
+
});
|
18522
|
+
}
|
18523
|
+
this.updateAndEmitDCBufferStatus(DataPacket_Kind.RELIABLE);
|
18524
|
+
});
|
18525
|
+
}
|
18285
18526
|
waitForBufferStatusLow(kind) {
|
18286
18527
|
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
18287
18528
|
if (this.isBufferStatusLow(kind)) {
|
@@ -18473,7 +18714,13 @@ class RTCEngine extends eventsExports.EventEmitter {
|
|
18473
18714
|
}),
|
18474
18715
|
publishTracks: getTrackPublicationInfo(localTracks),
|
18475
18716
|
dataChannels: this.dataChannelsInfo(),
|
18476
|
-
trackSidsDisabled
|
18717
|
+
trackSidsDisabled,
|
18718
|
+
datachannelReceiveStates: this.reliableReceivedState.map((seq, sid) => {
|
18719
|
+
return new DataChannelReceiveState({
|
18720
|
+
publisherSid: sid,
|
18721
|
+
lastSeq: seq
|
18722
|
+
});
|
18723
|
+
})
|
18477
18724
|
}));
|
18478
18725
|
}
|
18479
18726
|
/* @internal */
|
@@ -20393,6 +20640,7 @@ class LocalParticipant extends Participant {
|
|
20393
20640
|
}
|
20394
20641
|
});
|
20395
20642
|
this.engine.on(EngineEvent.Connected, this.handleReconnected).on(EngineEvent.SignalConnected, this.handleSignalConnected).on(EngineEvent.SignalRestarted, this.handleReconnected).on(EngineEvent.SignalResumed, this.handleReconnected).on(EngineEvent.Restarting, this.handleReconnecting).on(EngineEvent.Resuming, this.handleReconnecting).on(EngineEvent.LocalTrackUnpublished, this.handleLocalTrackUnpublished).on(EngineEvent.SubscribedQualityUpdate, this.handleSubscribedQualityUpdate).on(EngineEvent.Disconnected, this.handleDisconnected).on(EngineEvent.SignalRequestResponse, this.handleSignalRequestResponse).on(EngineEvent.DataPacketReceived, this.handleDataPacket);
|
20643
|
+
this.signalConnectedFuture = undefined;
|
20396
20644
|
}
|
20397
20645
|
/**
|
20398
20646
|
* Sets and updates the metadata of the local participant.
|
@@ -23583,7 +23831,7 @@ class Room extends eventsExports.EventEmitter {
|
|
23583
23831
|
this.remoteParticipants.forEach((participant, identity) => {
|
23584
23832
|
this.handleParticipantDisconnected(identity, participant);
|
23585
23833
|
});
|
23586
|
-
this.emit(RoomEvent.Moved, roomMoved.room.name
|
23834
|
+
this.emit(RoomEvent.Moved, roomMoved.room.name);
|
23587
23835
|
if (roomMoved.participant) {
|
23588
23836
|
this.handleParticipantUpdates([roomMoved.participant, ...roomMoved.otherParticipants]);
|
23589
23837
|
} else {
|
@@ -24523,6 +24771,36 @@ function mapArgs(args) {
|
|
24523
24771
|
});
|
24524
24772
|
}
|
24525
24773
|
|
24774
|
+
// This file was generated from JSON Schema using quicktype, do not modify it directly.
|
24775
|
+
// The code generation lives at https://github.com/livekit/attribute-definitions
|
24776
|
+
//
|
24777
|
+
// To parse this data:
|
24778
|
+
//
|
24779
|
+
// import { Convert, AgentAttributes, TranscriptionAttributes } from "./file";
|
24780
|
+
//
|
24781
|
+
// const agentAttributes = Convert.toAgentAttributes(json);
|
24782
|
+
// const transcriptionAttributes = Convert.toTranscriptionAttributes(json);
|
24783
|
+
// Converts JSON strings to/from your types
|
24784
|
+
class Convert {
|
24785
|
+
static toAgentAttributes(json) {
|
24786
|
+
return JSON.parse(json);
|
24787
|
+
}
|
24788
|
+
static agentAttributesToJson(value) {
|
24789
|
+
return JSON.stringify(value);
|
24790
|
+
}
|
24791
|
+
static toTranscriptionAttributes(json) {
|
24792
|
+
return JSON.parse(json);
|
24793
|
+
}
|
24794
|
+
static transcriptionAttributesToJson(value) {
|
24795
|
+
return JSON.stringify(value);
|
24796
|
+
}
|
24797
|
+
}
|
24798
|
+
|
24799
|
+
var attributeTypings = /*#__PURE__*/Object.freeze({
|
24800
|
+
__proto__: null,
|
24801
|
+
Convert: Convert
|
24802
|
+
});
|
24803
|
+
|
24526
24804
|
var CheckStatus;
|
24527
24805
|
(function (CheckStatus) {
|
24528
24806
|
CheckStatus[CheckStatus["IDLE"] = 0] = "IDLE";
|
@@ -25337,5 +25615,5 @@ function isFacingModeValue(item) {
|
|
25337
25615
|
return item === undefined || allowedValues.includes(item);
|
25338
25616
|
}
|
25339
25617
|
|
25340
|
-
export { AudioPresets, BackupCodecPolicy, BaseKeyProvider, CheckStatus, Checker, ConnectionCheck, ConnectionError, ConnectionErrorReason, ConnectionQuality, ConnectionState, CriticalTimers, CryptorError, CryptorErrorReason, CryptorEvent, DataPacket_Kind, DefaultReconnectPolicy, DeviceUnsupportedError, DisconnectReason, EncryptionEvent, EngineEvent, ExternalE2EEKeyProvider, KeyHandlerEvent, KeyProviderEvent, LivekitError, LocalAudioTrack, LocalParticipant, LocalTrack, LocalTrackPublication, LocalTrackRecorder, LocalVideoTrack, LogLevel, LoggerNames, MediaDeviceFailure, _ as Mutex, NegotiationError, Participant, ParticipantEvent, ParticipantInfo_Kind as ParticipantKind, PublishDataError, PublishTrackError, RemoteAudioTrack, RemoteParticipant, RemoteTrack, RemoteTrackPublication, RemoteVideoTrack, Room, RoomEvent, RpcError, ScreenSharePresets, SignalRequestError, SubscriptionError, Track, TrackEvent, TrackInvalidError, TrackPublication, TrackType, UnexpectedConnectionState, UnsupportedServer, VideoPreset, VideoPresets, VideoPresets43, VideoQuality, attachToElement, compareVersions, createAudioAnalyser, createE2EEKey, createKeyMaterialFromBuffer, createKeyMaterialFromString, createLocalAudioTrack, createLocalScreenTracks, createLocalTracks, createLocalVideoTrack, deriveKeys, detachTrack, facingModeFromDeviceLabel, facingModeFromLocalTrack, getBrowser, getEmptyAudioStreamTrack, getEmptyVideoStreamTrack, getLogger, importKey, isAudioTrack, isBackupCodec, isBrowserSupported, isE2EESupported, isInsertableStreamSupported, isLocalParticipant, isLocalTrack, isRemoteParticipant, isRemoteTrack, isScriptTransformSupported, isVideoFrame, isVideoTrack, needsRbspUnescaping, parseRbsp, protocolVersion, ratchet, setLogExtension, setLogLevel, supportsAV1, supportsAdaptiveStream, supportsDynacast, supportsVP9, version, videoCodecs, writeRbsp };
|
25618
|
+
export { AudioPresets, BackupCodecPolicy, BaseKeyProvider, CheckStatus, Checker, ConnectionCheck, ConnectionError, ConnectionErrorReason, ConnectionQuality, ConnectionState, CriticalTimers, CryptorError, CryptorErrorReason, CryptorEvent, DataPacket_Kind, DefaultReconnectPolicy, DeviceUnsupportedError, DisconnectReason, EncryptionEvent, EngineEvent, ExternalE2EEKeyProvider, KeyHandlerEvent, KeyProviderEvent, LivekitError, LocalAudioTrack, LocalParticipant, LocalTrack, LocalTrackPublication, LocalTrackRecorder, LocalVideoTrack, LogLevel, LoggerNames, MediaDeviceFailure, _ as Mutex, NegotiationError, Participant, ParticipantEvent, ParticipantInfo_Kind as ParticipantKind, PublishDataError, PublishTrackError, RemoteAudioTrack, RemoteParticipant, RemoteTrack, RemoteTrackPublication, RemoteVideoTrack, Room, RoomEvent, RpcError, ScreenSharePresets, SignalRequestError, SubscriptionError, Track, TrackEvent, TrackInvalidError, TrackPublication, TrackType, UnexpectedConnectionState, UnsupportedServer, VideoPreset, VideoPresets, VideoPresets43, VideoQuality, attachToElement, attributeTypings as attributes, compareVersions, createAudioAnalyser, createE2EEKey, createKeyMaterialFromBuffer, createKeyMaterialFromString, createLocalAudioTrack, createLocalScreenTracks, createLocalTracks, createLocalVideoTrack, deriveKeys, detachTrack, facingModeFromDeviceLabel, facingModeFromLocalTrack, getBrowser, getEmptyAudioStreamTrack, getEmptyVideoStreamTrack, getLogger, importKey, isAudioTrack, isBackupCodec, isBrowserSupported, isE2EESupported, isInsertableStreamSupported, isLocalParticipant, isLocalTrack, isRemoteParticipant, isRemoteTrack, isScriptTransformSupported, isVideoFrame, isVideoTrack, needsRbspUnescaping, parseRbsp, protocolVersion, ratchet, setLogExtension, setLogLevel, supportsAV1, supportsAdaptiveStream, supportsDynacast, supportsVP9, version, videoCodecs, writeRbsp };
|
25341
25619
|
//# sourceMappingURL=livekit-client.esm.mjs.map
|