@moqtap/codec 0.5.0 → 0.7.0
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/README.md +4 -2
- package/dist/{chunk-CXFAQKL3.js → chunk-23KRITJ6.js} +1 -1
- package/dist/{chunk-JL3NEW3O.cjs → chunk-4XLYCT5Q.cjs} +90 -1
- package/dist/{chunk-DLSGOZ6P.js → chunk-5XZKO2U5.js} +34 -34
- package/dist/chunk-APTV6F72.js +2095 -0
- package/dist/{chunk-JB5VDJ2V.cjs → chunk-B56AG5HU.cjs} +37 -37
- package/dist/chunk-CQ65LKPQ.cjs +446 -0
- package/dist/{chunk-4HBKHNU2.cjs → chunk-CZNW3R5E.cjs} +37 -37
- package/dist/{chunk-Q5D6OW6Q.js → chunk-DORX55MO.js} +1 -1
- package/dist/{chunk-OGZTQA24.cjs → chunk-EQAYMCXO.cjs} +64 -64
- package/dist/{chunk-HYI6LFMD.js → chunk-HEO2JG6C.js} +1 -1
- package/dist/{chunk-UP4XPH4J.js → chunk-I55J3KXD.js} +31 -31
- package/dist/{chunk-HZHSO7EW.cjs → chunk-IDV2JYJ6.cjs} +39 -39
- package/dist/{chunk-BAG6YWCP.cjs → chunk-IEJULBKB.cjs} +63 -63
- package/dist/{chunk-Y6KCSM3V.js → chunk-IJAF6PAY.js} +1 -1
- package/dist/{chunk-WMJVSBBE.cjs → chunk-J3ASFPCX.cjs} +57 -57
- package/dist/{chunk-COWGGUL4.js → chunk-JKMYAUGY.js} +1 -1
- package/dist/{chunk-SIYYMFCC.cjs → chunk-KCH4BQXK.cjs} +37 -37
- package/dist/{chunk-VOU7PNHI.js → chunk-KLPWJU6W.js} +89 -0
- package/dist/{chunk-NZ7GYEMT.js → chunk-KNLPX3YA.js} +1 -1
- package/dist/{chunk-A33U4WVS.cjs → chunk-KTVN4P6J.cjs} +67 -67
- package/dist/{chunk-7KBAWOBA.js → chunk-KYVTM5VI.js} +1 -1
- package/dist/{chunk-RZ3UML47.js → chunk-MD2OA7SE.js} +1 -1
- package/dist/chunk-MH7537FB.cjs +2095 -0
- package/dist/{chunk-SHMA4PBY.js → chunk-N2V7Z37J.js} +1 -1
- package/dist/chunk-O5DQ44TM.js +446 -0
- package/dist/{chunk-HO44OANK.cjs → chunk-QGIHC6BA.cjs} +36 -36
- package/dist/{chunk-PKEOQSSZ.cjs → chunk-RIIA4ALQ.cjs} +37 -37
- package/dist/{chunk-XZE5R57R.cjs → chunk-VZHL2U2N.cjs} +37 -37
- package/dist/{chunk-RW4UG7CN.js → chunk-XHAP2YST.js} +1 -1
- package/dist/{chunk-JTRU76JN.cjs → chunk-Y4FRXYX6.cjs} +59 -59
- package/dist/{codec-yJ_axwtp.d.cts → codec-B1snaM9L.d.cts} +1 -1
- package/dist/{codec-Tdey03Bo.d.ts → codec-BLYAy2OP.d.ts} +1 -1
- package/dist/{codec-DqHwYWM-.d.ts → codec-BNS3gS77.d.ts} +1 -1
- package/dist/{codec-CBLLytyP.d.cts → codec-BOtv3R5j.d.cts} +1 -1
- package/dist/{codec-C17JvsEU.d.cts → codec-BOyrk_C9.d.cts} +1 -1
- package/dist/{codec-BsSNjvB3.d.cts → codec-BqqoYdh_.d.cts} +1 -1
- package/dist/{codec-BhW5CGZq.d.ts → codec-CI0BjmHc.d.ts} +1 -1
- package/dist/{codec-BvzKRqiP.d.ts → codec-CWj5iTxA.d.ts} +1 -1
- package/dist/{codec-DbpLHKXN.d.cts → codec-CyApDKwf.d.cts} +1 -1
- package/dist/{codec-6s9d5yZm.d.ts → codec-D2JbI2tp.d.ts} +1 -1
- package/dist/{codec-BzRIVIzS.d.ts → codec-D47r_-Rl.d.ts} +1 -1
- package/dist/{codec-GayA_uN0.d.ts → codec-D49OofBr.d.ts} +1 -1
- package/dist/{codec-MxIhLDR5.d.cts → codec-D89DWXbv.d.cts} +1 -1
- package/dist/{codec-CzBmYisK.d.cts → codec-D95gT98n.d.cts} +1 -1
- package/dist/codec-DAePx2NL.d.ts +30 -0
- package/dist/{codec-D_9X0i31.d.ts → codec-DJmV04i0.d.ts} +1 -1
- package/dist/{codec-Cbv3sG2y.d.ts → codec-DL0njGkL.d.ts} +1 -1
- package/dist/{codec-D2YMCU11.d.cts → codec-DQWQSam3.d.cts} +1 -1
- package/dist/{codec-Bp4HPezr.d.ts → codec-DplRgIKq.d.ts} +1 -1
- package/dist/{codec-3ZgEK-Yj.d.ts → codec-DujHf55Z.d.ts} +1 -1
- package/dist/{codec-DS-As0Pp.d.cts → codec-DvcJgYKq.d.cts} +1 -1
- package/dist/{codec-D5Ss123f.d.cts → codec-NMsTK0GX.d.cts} +1 -1
- package/dist/{codec-BvSmr-Jp.d.ts → codec-WwwUipaU.d.ts} +1 -1
- package/dist/{codec-B6ouUJrm.d.cts → codec-cou9XBMF.d.cts} +1 -1
- package/dist/{codec-R28KwiGM.d.cts → codec-hvkJfCF5.d.cts} +1 -1
- package/dist/codec-xeuGZY77.d.cts +30 -0
- package/dist/draft07-session.d.cts +3 -3
- package/dist/draft07-session.d.ts +3 -3
- package/dist/draft07.cjs +4 -4
- package/dist/draft07.d.cts +3 -3
- package/dist/draft07.d.ts +3 -3
- package/dist/draft07.js +2 -2
- package/dist/draft08-session.d.cts +3 -3
- package/dist/draft08-session.d.ts +3 -3
- package/dist/draft08.cjs +3 -3
- package/dist/draft08.d.cts +4 -4
- package/dist/draft08.d.ts +4 -4
- package/dist/draft08.js +2 -2
- package/dist/draft09-session.d.cts +3 -3
- package/dist/draft09-session.d.ts +3 -3
- package/dist/draft09.cjs +3 -3
- package/dist/draft09.d.cts +4 -4
- package/dist/draft09.d.ts +4 -4
- package/dist/draft09.js +2 -2
- package/dist/draft10-session.d.cts +3 -3
- package/dist/draft10-session.d.ts +3 -3
- package/dist/draft10.cjs +3 -3
- package/dist/draft10.d.cts +4 -4
- package/dist/draft10.d.ts +4 -4
- package/dist/draft10.js +2 -2
- package/dist/draft11-session.d.cts +3 -3
- package/dist/draft11-session.d.ts +3 -3
- package/dist/draft11.cjs +3 -3
- package/dist/draft11.d.cts +4 -4
- package/dist/draft11.d.ts +4 -4
- package/dist/draft11.js +2 -2
- package/dist/draft12-session.d.cts +3 -3
- package/dist/draft12-session.d.ts +3 -3
- package/dist/draft12.cjs +3 -3
- package/dist/draft12.d.cts +4 -4
- package/dist/draft12.d.ts +4 -4
- package/dist/draft12.js +2 -2
- package/dist/draft13-session.d.cts +3 -3
- package/dist/draft13-session.d.ts +3 -3
- package/dist/draft13.cjs +3 -3
- package/dist/draft13.d.cts +4 -4
- package/dist/draft13.d.ts +4 -4
- package/dist/draft13.js +2 -2
- package/dist/draft14-session.d.cts +3 -3
- package/dist/draft14-session.d.ts +3 -3
- package/dist/draft14.cjs +3 -3
- package/dist/draft14.d.cts +4 -4
- package/dist/draft14.d.ts +4 -4
- package/dist/draft14.js +2 -2
- package/dist/draft15-session.d.cts +3 -3
- package/dist/draft15-session.d.ts +3 -3
- package/dist/draft15.cjs +3 -3
- package/dist/draft15.d.cts +4 -4
- package/dist/draft15.d.ts +4 -4
- package/dist/draft15.js +2 -2
- package/dist/draft16-session.d.cts +3 -3
- package/dist/draft16-session.d.ts +3 -3
- package/dist/draft16.cjs +3 -3
- package/dist/draft16.d.cts +4 -4
- package/dist/draft16.d.ts +4 -4
- package/dist/draft16.js +2 -2
- package/dist/draft17-session.d.cts +3 -3
- package/dist/draft17-session.d.ts +3 -3
- package/dist/draft17.cjs +3 -3
- package/dist/draft17.d.cts +3 -3
- package/dist/draft17.d.ts +3 -3
- package/dist/draft17.js +2 -2
- package/dist/draft18-session.d.cts +3 -3
- package/dist/draft18-session.d.ts +3 -3
- package/dist/draft18.cjs +3 -3
- package/dist/draft18.d.cts +3 -3
- package/dist/draft18.d.ts +3 -3
- package/dist/draft18.js +2 -2
- package/dist/draft19-session.cjs +8 -0
- package/dist/draft19-session.d.cts +50 -0
- package/dist/draft19-session.d.ts +50 -0
- package/dist/draft19-session.js +8 -0
- package/dist/draft19.cjs +189 -0
- package/dist/draft19.d.cts +130 -0
- package/dist/draft19.d.ts +130 -0
- package/dist/draft19.js +189 -0
- package/dist/index.cjs +33 -27
- package/dist/index.d.cts +20 -15
- package/dist/index.d.ts +20 -15
- package/dist/index.js +20 -14
- package/dist/{session-types-DBpCRtrL.d.ts → session-types-C0l_-Ups.d.ts} +1 -1
- package/dist/{session-types-sBaTRwDh.d.cts → session-types-KsqyVp6y.d.cts} +1 -1
- package/dist/session.cjs +5 -1
- package/dist/session.d.cts +5 -3
- package/dist/session.d.ts +5 -3
- package/dist/session.js +5 -1
- package/dist/{types-CnBuq68e.d.cts → types-CdCSIfvI.d.cts} +1 -1
- package/dist/{types-CnBuq68e.d.ts → types-CdCSIfvI.d.ts} +1 -1
- package/dist/types-zHgCS6o5.d.cts +265 -0
- package/dist/types-zHgCS6o5.d.ts +265 -0
- package/package.json +14 -2
- package/src/core/buffer-reader.ts +74 -2
- package/src/core/buffer-writer.ts +56 -4
- package/src/core/types.ts +1 -0
- package/src/drafts/draft17/codec.ts +2 -2
- package/src/drafts/draft17/data-streams.ts +2 -2
- package/src/drafts/draft18/codec.ts +2 -2
- package/src/drafts/draft18/data-streams.ts +2 -2
- package/src/drafts/draft19/codec.ts +1425 -0
- package/src/drafts/draft19/data-streams.ts +996 -0
- package/src/drafts/draft19/error-codes.ts +78 -0
- package/src/drafts/draft19/index.ts +126 -0
- package/src/drafts/draft19/messages.ts +58 -0
- package/src/drafts/draft19/rules.ts +85 -0
- package/src/drafts/draft19/session-fsm.ts +451 -0
- package/src/drafts/draft19/session.ts +15 -0
- package/src/drafts/draft19/types.ts +368 -0
- package/src/index.ts +9 -1
- package/src/session.ts +4 -0
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunk4XLYCT5Qcjs = require('./chunk-4XLYCT5Q.cjs');
|
|
8
8
|
|
|
9
9
|
// src/drafts/draft11/data-streams.ts
|
|
10
10
|
var FETCH_STREAM_TYPE = 0x05n;
|
|
11
11
|
function encodeSubgroupStream(stream) {
|
|
12
|
-
const w = new (0,
|
|
12
|
+
const w = new (0, _chunk4XLYCT5Qcjs.BufferWriter)();
|
|
13
13
|
const typeId = stream.streamTypeId;
|
|
14
14
|
w.writeVarInt(BigInt(typeId));
|
|
15
15
|
w.writeVarInt(stream.trackAlias);
|
|
@@ -34,7 +34,7 @@ function encodeSubgroupStream(stream) {
|
|
|
34
34
|
return w.finish();
|
|
35
35
|
}
|
|
36
36
|
function encodeDatagram(dg) {
|
|
37
|
-
const w = new (0,
|
|
37
|
+
const w = new (0, _chunk4XLYCT5Qcjs.BufferWriter)();
|
|
38
38
|
w.writeVarInt(BigInt(dg.streamTypeId));
|
|
39
39
|
w.writeVarInt(dg.trackAlias);
|
|
40
40
|
w.writeVarInt(dg.groupId);
|
|
@@ -55,7 +55,7 @@ function encodeDatagram(dg) {
|
|
|
55
55
|
return w.finish();
|
|
56
56
|
}
|
|
57
57
|
function encodeFetchStream(stream) {
|
|
58
|
-
const w = new (0,
|
|
58
|
+
const w = new (0, _chunk4XLYCT5Qcjs.BufferWriter)();
|
|
59
59
|
w.writeVarInt(FETCH_STREAM_TYPE);
|
|
60
60
|
w.writeVarInt(stream.requestId);
|
|
61
61
|
for (const obj of stream.objects) {
|
|
@@ -77,12 +77,12 @@ function encodeFetchStream(stream) {
|
|
|
77
77
|
}
|
|
78
78
|
function decodeSubgroupStream(bytes) {
|
|
79
79
|
try {
|
|
80
|
-
const r = new (0,
|
|
80
|
+
const r = new (0, _chunk4XLYCT5Qcjs.BufferReader)(bytes);
|
|
81
81
|
const streamTypeId = Number(r.readVarInt());
|
|
82
82
|
if (streamTypeId < 8 || streamTypeId > 13) {
|
|
83
83
|
return {
|
|
84
84
|
ok: false,
|
|
85
|
-
error: new (0,
|
|
85
|
+
error: new (0, _chunk4XLYCT5Qcjs.DecodeError)(
|
|
86
86
|
"CONSTRAINT_VIOLATION",
|
|
87
87
|
`Expected subgroup type 0x08-0x0D, got 0x${streamTypeId.toString(16)}`,
|
|
88
88
|
0
|
|
@@ -152,18 +152,18 @@ function decodeSubgroupStream(bytes) {
|
|
|
152
152
|
bytesRead: r.offset
|
|
153
153
|
};
|
|
154
154
|
} catch (e) {
|
|
155
|
-
if (e instanceof
|
|
155
|
+
if (e instanceof _chunk4XLYCT5Qcjs.DecodeError) return { ok: false, error: e };
|
|
156
156
|
throw e;
|
|
157
157
|
}
|
|
158
158
|
}
|
|
159
159
|
function decodeDatagram(bytes) {
|
|
160
160
|
try {
|
|
161
|
-
const r = new (0,
|
|
161
|
+
const r = new (0, _chunk4XLYCT5Qcjs.BufferReader)(bytes);
|
|
162
162
|
const streamTypeId = Number(r.readVarInt());
|
|
163
163
|
if (streamTypeId < 0 || streamTypeId > 3) {
|
|
164
164
|
return {
|
|
165
165
|
ok: false,
|
|
166
|
-
error: new (0,
|
|
166
|
+
error: new (0, _chunk4XLYCT5Qcjs.DecodeError)(
|
|
167
167
|
"CONSTRAINT_VIOLATION",
|
|
168
168
|
`Expected datagram type 0x00-0x03, got 0x${streamTypeId.toString(16)}`,
|
|
169
169
|
0
|
|
@@ -208,18 +208,18 @@ function decodeDatagram(bytes) {
|
|
|
208
208
|
result.objectStatus = objectStatus;
|
|
209
209
|
return { ok: true, value: result, bytesRead: r.offset };
|
|
210
210
|
} catch (e) {
|
|
211
|
-
if (e instanceof
|
|
211
|
+
if (e instanceof _chunk4XLYCT5Qcjs.DecodeError) return { ok: false, error: e };
|
|
212
212
|
throw e;
|
|
213
213
|
}
|
|
214
214
|
}
|
|
215
215
|
function decodeFetchStream(bytes) {
|
|
216
216
|
try {
|
|
217
|
-
const r = new (0,
|
|
217
|
+
const r = new (0, _chunk4XLYCT5Qcjs.BufferReader)(bytes);
|
|
218
218
|
const streamType = r.readVarInt();
|
|
219
219
|
if (streamType !== FETCH_STREAM_TYPE) {
|
|
220
220
|
return {
|
|
221
221
|
ok: false,
|
|
222
|
-
error: new (0,
|
|
222
|
+
error: new (0, _chunk4XLYCT5Qcjs.DecodeError)(
|
|
223
223
|
"CONSTRAINT_VIOLATION",
|
|
224
224
|
`Expected fetch type 0x05, got 0x${streamType.toString(16)}`,
|
|
225
225
|
0
|
|
@@ -271,7 +271,7 @@ function decodeFetchStream(bytes) {
|
|
|
271
271
|
bytesRead: r.offset
|
|
272
272
|
};
|
|
273
273
|
} catch (e) {
|
|
274
|
-
if (e instanceof
|
|
274
|
+
if (e instanceof _chunk4XLYCT5Qcjs.DecodeError) return { ok: false, error: e };
|
|
275
275
|
throw e;
|
|
276
276
|
}
|
|
277
277
|
}
|
|
@@ -378,11 +378,11 @@ function encodeSetupParams(params, w) {
|
|
|
378
378
|
const id = BigInt(u.id);
|
|
379
379
|
w.writeVarInt(id);
|
|
380
380
|
if (id % 2n === 0n) {
|
|
381
|
-
const raw =
|
|
382
|
-
const tmpReader = new (0,
|
|
381
|
+
const raw = _chunk4XLYCT5Qcjs.hexToBytes.call(void 0, u.raw_hex);
|
|
382
|
+
const tmpReader = new (0, _chunk4XLYCT5Qcjs.BufferReader)(raw);
|
|
383
383
|
w.writeVarInt(tmpReader.readVarInt());
|
|
384
384
|
} else {
|
|
385
|
-
const raw =
|
|
385
|
+
const raw = _chunk4XLYCT5Qcjs.hexToBytes.call(void 0, u.raw_hex);
|
|
386
386
|
w.writeVarInt(raw.byteLength);
|
|
387
387
|
w.writeBytes(raw);
|
|
388
388
|
}
|
|
@@ -400,13 +400,13 @@ function decodeSetupParams(r) {
|
|
|
400
400
|
if (paramType === SETUP_PARAM_MAX_REQUEST_ID) {
|
|
401
401
|
result.max_request_id = value;
|
|
402
402
|
} else {
|
|
403
|
-
const tmpW = new (0,
|
|
403
|
+
const tmpW = new (0, _chunk4XLYCT5Qcjs.BufferWriter)(16);
|
|
404
404
|
tmpW.writeVarInt(value);
|
|
405
405
|
const raw = tmpW.finish();
|
|
406
406
|
unknown.push({
|
|
407
407
|
id: `0x${paramType.toString(16)}`,
|
|
408
408
|
length: raw.byteLength,
|
|
409
|
-
raw_hex:
|
|
409
|
+
raw_hex: _chunk4XLYCT5Qcjs.bytesToHex.call(void 0, raw)
|
|
410
410
|
});
|
|
411
411
|
}
|
|
412
412
|
} else {
|
|
@@ -418,7 +418,7 @@ function decodeSetupParams(r) {
|
|
|
418
418
|
unknown.push({
|
|
419
419
|
id: `0x${paramType.toString(16)}`,
|
|
420
420
|
length,
|
|
421
|
-
raw_hex:
|
|
421
|
+
raw_hex: _chunk4XLYCT5Qcjs.bytesToHex.call(void 0, bytes)
|
|
422
422
|
});
|
|
423
423
|
}
|
|
424
424
|
}
|
|
@@ -435,7 +435,7 @@ function encodeParams(params, w) {
|
|
|
435
435
|
if (params.authorization_token !== void 0) {
|
|
436
436
|
w.writeVarInt(PARAM_AUTHORIZATION_TOKEN);
|
|
437
437
|
const at = params.authorization_token;
|
|
438
|
-
const tmpW = new (0,
|
|
438
|
+
const tmpW = new (0, _chunk4XLYCT5Qcjs.BufferWriter)(64);
|
|
439
439
|
tmpW.writeVarInt(at.alias_type);
|
|
440
440
|
tmpW.writeVarInt(at.token_type);
|
|
441
441
|
tmpW.writeBytes(at.token_value);
|
|
@@ -456,11 +456,11 @@ function encodeParams(params, w) {
|
|
|
456
456
|
const id = BigInt(u.id);
|
|
457
457
|
w.writeVarInt(id);
|
|
458
458
|
if (id % 2n === 0n) {
|
|
459
|
-
const raw =
|
|
460
|
-
const tmpReader = new (0,
|
|
459
|
+
const raw = _chunk4XLYCT5Qcjs.hexToBytes.call(void 0, u.raw_hex);
|
|
460
|
+
const tmpReader = new (0, _chunk4XLYCT5Qcjs.BufferReader)(raw);
|
|
461
461
|
w.writeVarInt(tmpReader.readVarInt());
|
|
462
462
|
} else {
|
|
463
|
-
const raw =
|
|
463
|
+
const raw = _chunk4XLYCT5Qcjs.hexToBytes.call(void 0, u.raw_hex);
|
|
464
464
|
w.writeVarInt(raw.byteLength);
|
|
465
465
|
w.writeBytes(raw);
|
|
466
466
|
}
|
|
@@ -480,13 +480,13 @@ function decodeParams(r) {
|
|
|
480
480
|
} else if (paramType === PARAM_MAX_CACHE_DURATION) {
|
|
481
481
|
result.max_cache_duration = value;
|
|
482
482
|
} else {
|
|
483
|
-
const tmpW = new (0,
|
|
483
|
+
const tmpW = new (0, _chunk4XLYCT5Qcjs.BufferWriter)(16);
|
|
484
484
|
tmpW.writeVarInt(value);
|
|
485
485
|
const raw = tmpW.finish();
|
|
486
486
|
unknown.push({
|
|
487
487
|
id: `0x${paramType.toString(16)}`,
|
|
488
488
|
length: raw.byteLength,
|
|
489
|
-
raw_hex:
|
|
489
|
+
raw_hex: _chunk4XLYCT5Qcjs.bytesToHex.call(void 0, raw)
|
|
490
490
|
});
|
|
491
491
|
}
|
|
492
492
|
} else {
|
|
@@ -507,7 +507,7 @@ function decodeParams(r) {
|
|
|
507
507
|
unknown.push({
|
|
508
508
|
id: `0x${paramType.toString(16)}`,
|
|
509
509
|
length,
|
|
510
|
-
raw_hex:
|
|
510
|
+
raw_hex: _chunk4XLYCT5Qcjs.bytesToHex.call(void 0, bytes)
|
|
511
511
|
});
|
|
512
512
|
}
|
|
513
513
|
}
|
|
@@ -675,7 +675,7 @@ function encodeRequestsBlockedPayload(msg, w) {
|
|
|
675
675
|
function decodeClientSetupPayload(r) {
|
|
676
676
|
const numVersions = Number(r.readVarInt());
|
|
677
677
|
if (numVersions === 0) {
|
|
678
|
-
throw new (0,
|
|
678
|
+
throw new (0, _chunk4XLYCT5Qcjs.DecodeError)("CONSTRAINT_VIOLATION", "supported_versions must not be empty", r.offset);
|
|
679
679
|
}
|
|
680
680
|
const supported_versions = [];
|
|
681
681
|
for (let i = 0; i < numVersions; i++) supported_versions.push(r.readVarInt());
|
|
@@ -698,7 +698,7 @@ function decodeSubscribePayload(r) {
|
|
|
698
698
|
const filter_type = r.readVarInt();
|
|
699
699
|
const ft = Number(filter_type);
|
|
700
700
|
if (ft < 1 || ft > 4) {
|
|
701
|
-
throw new (0,
|
|
701
|
+
throw new (0, _chunk4XLYCT5Qcjs.DecodeError)("CONSTRAINT_VIOLATION", `Invalid filter_type: ${ft}`, r.offset);
|
|
702
702
|
}
|
|
703
703
|
let start_group;
|
|
704
704
|
let start_object;
|
|
@@ -863,7 +863,7 @@ function decodeFetchPayload(r) {
|
|
|
863
863
|
const fetch_type = r.readVarInt();
|
|
864
864
|
const ft = Number(fetch_type);
|
|
865
865
|
if (ft < 1 || ft > 3) {
|
|
866
|
-
throw new (0,
|
|
866
|
+
throw new (0, _chunk4XLYCT5Qcjs.DecodeError)("CONSTRAINT_VIOLATION", `Invalid fetch_type: ${ft}`, r.offset);
|
|
867
867
|
}
|
|
868
868
|
let standalone;
|
|
869
869
|
let joining;
|
|
@@ -995,13 +995,13 @@ var payloadDecoders = /* @__PURE__ */ new Map([
|
|
|
995
995
|
function encodeMessage(message) {
|
|
996
996
|
const typeId = MESSAGE_ID_MAP.get(message.type);
|
|
997
997
|
if (typeId === void 0) throw new Error(`Unknown message type: ${message.type}`);
|
|
998
|
-
const payloadWriter = new (0,
|
|
998
|
+
const payloadWriter = new (0, _chunk4XLYCT5Qcjs.BufferWriter)();
|
|
999
999
|
encodePayload(message, payloadWriter);
|
|
1000
1000
|
const payload = payloadWriter.finishView();
|
|
1001
1001
|
if (payload.byteLength > 65535) {
|
|
1002
1002
|
throw new Error(`Payload too large for 16-bit length: ${payload.byteLength}`);
|
|
1003
1003
|
}
|
|
1004
|
-
const writer = new (0,
|
|
1004
|
+
const writer = new (0, _chunk4XLYCT5Qcjs.BufferWriter)(payload.byteLength + 16);
|
|
1005
1005
|
writer.writeVarInt(typeId);
|
|
1006
1006
|
writer.writeUint8(payload.byteLength >> 8 & 255);
|
|
1007
1007
|
writer.writeUint8(payload.byteLength & 255);
|
|
@@ -1070,18 +1070,18 @@ function encodePayload(msg, w) {
|
|
|
1070
1070
|
}
|
|
1071
1071
|
function decodeMessage(bytes) {
|
|
1072
1072
|
try {
|
|
1073
|
-
const reader = new (0,
|
|
1073
|
+
const reader = new (0, _chunk4XLYCT5Qcjs.BufferReader)(bytes);
|
|
1074
1074
|
const typeId = reader.readVarInt();
|
|
1075
1075
|
const lenHi = reader.readUint8();
|
|
1076
1076
|
const lenLo = reader.readUint8();
|
|
1077
1077
|
const payloadLength = lenHi << 8 | lenLo;
|
|
1078
1078
|
const payloadBytes = reader.readBytes(payloadLength);
|
|
1079
|
-
const payloadReader = new (0,
|
|
1079
|
+
const payloadReader = new (0, _chunk4XLYCT5Qcjs.BufferReader)(payloadBytes);
|
|
1080
1080
|
const decoder = payloadDecoders.get(typeId);
|
|
1081
1081
|
if (!decoder) {
|
|
1082
1082
|
return {
|
|
1083
1083
|
ok: false,
|
|
1084
|
-
error: new (0,
|
|
1084
|
+
error: new (0, _chunk4XLYCT5Qcjs.DecodeError)(
|
|
1085
1085
|
"UNKNOWN_MESSAGE_TYPE",
|
|
1086
1086
|
`Unknown message type ID: 0x${typeId.toString(16)}`,
|
|
1087
1087
|
0
|
|
@@ -1091,7 +1091,7 @@ function decodeMessage(bytes) {
|
|
|
1091
1091
|
const message = decoder(payloadReader);
|
|
1092
1092
|
return { ok: true, value: message, bytesRead: reader.offset };
|
|
1093
1093
|
} catch (e) {
|
|
1094
|
-
if (e instanceof
|
|
1094
|
+
if (e instanceof _chunk4XLYCT5Qcjs.DecodeError) return { ok: false, error: e };
|
|
1095
1095
|
throw e;
|
|
1096
1096
|
}
|
|
1097
1097
|
}
|
|
@@ -1121,7 +1121,7 @@ function createStreamDecoder() {
|
|
|
1121
1121
|
},
|
|
1122
1122
|
flush(controller) {
|
|
1123
1123
|
if (offset < buffer.length)
|
|
1124
|
-
controller.error(new (0,
|
|
1124
|
+
controller.error(new (0, _chunk4XLYCT5Qcjs.DecodeError)("UNEXPECTED_END", "Stream ended with incomplete data", 0));
|
|
1125
1125
|
}
|
|
1126
1126
|
});
|
|
1127
1127
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunk4XLYCT5Qcjs = require('./chunk-4XLYCT5Q.cjs');
|
|
8
8
|
|
|
9
9
|
// src/drafts/draft10/data-streams.ts
|
|
10
10
|
var SUBGROUP_STREAM_TYPE = 0x04n;
|
|
@@ -12,7 +12,7 @@ var DATAGRAM_TYPE = 0x01n;
|
|
|
12
12
|
var DATAGRAM_STATUS_TYPE = 0x02n;
|
|
13
13
|
var FETCH_STREAM_TYPE = 0x05n;
|
|
14
14
|
function encodeSubgroupStream(stream) {
|
|
15
|
-
const w = new (0,
|
|
15
|
+
const w = new (0, _chunk4XLYCT5Qcjs.BufferWriter)();
|
|
16
16
|
w.writeVarInt(SUBGROUP_STREAM_TYPE);
|
|
17
17
|
w.writeVarInt(stream.trackAlias);
|
|
18
18
|
w.writeVarInt(stream.groupId);
|
|
@@ -32,7 +32,7 @@ function encodeSubgroupStream(stream) {
|
|
|
32
32
|
return w.finish();
|
|
33
33
|
}
|
|
34
34
|
function encodeDatagram(dg) {
|
|
35
|
-
const w = new (0,
|
|
35
|
+
const w = new (0, _chunk4XLYCT5Qcjs.BufferWriter)();
|
|
36
36
|
w.writeVarInt(DATAGRAM_TYPE);
|
|
37
37
|
w.writeVarInt(dg.trackAlias);
|
|
38
38
|
w.writeVarInt(dg.groupId);
|
|
@@ -44,7 +44,7 @@ function encodeDatagram(dg) {
|
|
|
44
44
|
return w.finish();
|
|
45
45
|
}
|
|
46
46
|
function encodeDatagramStatus(dg) {
|
|
47
|
-
const w = new (0,
|
|
47
|
+
const w = new (0, _chunk4XLYCT5Qcjs.BufferWriter)();
|
|
48
48
|
w.writeVarInt(DATAGRAM_STATUS_TYPE);
|
|
49
49
|
w.writeVarInt(dg.trackAlias);
|
|
50
50
|
w.writeVarInt(dg.groupId);
|
|
@@ -56,7 +56,7 @@ function encodeDatagramStatus(dg) {
|
|
|
56
56
|
return w.finish();
|
|
57
57
|
}
|
|
58
58
|
function encodeFetchStream(stream) {
|
|
59
|
-
const w = new (0,
|
|
59
|
+
const w = new (0, _chunk4XLYCT5Qcjs.BufferWriter)();
|
|
60
60
|
w.writeVarInt(FETCH_STREAM_TYPE);
|
|
61
61
|
w.writeVarInt(stream.subscribeId);
|
|
62
62
|
for (const obj of stream.objects) {
|
|
@@ -77,12 +77,12 @@ function encodeFetchStream(stream) {
|
|
|
77
77
|
}
|
|
78
78
|
function decodeSubgroupStream(bytes) {
|
|
79
79
|
try {
|
|
80
|
-
const r = new (0,
|
|
80
|
+
const r = new (0, _chunk4XLYCT5Qcjs.BufferReader)(bytes);
|
|
81
81
|
const streamType = Number(r.readVarInt());
|
|
82
82
|
if (streamType !== 4) {
|
|
83
83
|
return {
|
|
84
84
|
ok: false,
|
|
85
|
-
error: new (0,
|
|
85
|
+
error: new (0, _chunk4XLYCT5Qcjs.DecodeError)(
|
|
86
86
|
"CONSTRAINT_VIOLATION",
|
|
87
87
|
`Expected subgroup type 0x04, got 0x${streamType.toString(16)}`,
|
|
88
88
|
0
|
|
@@ -138,18 +138,18 @@ function decodeSubgroupStream(bytes) {
|
|
|
138
138
|
bytesRead: r.offset
|
|
139
139
|
};
|
|
140
140
|
} catch (e) {
|
|
141
|
-
if (e instanceof
|
|
141
|
+
if (e instanceof _chunk4XLYCT5Qcjs.DecodeError) return { ok: false, error: e };
|
|
142
142
|
throw e;
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
145
|
function decodeDatagram(bytes) {
|
|
146
146
|
try {
|
|
147
|
-
const r = new (0,
|
|
147
|
+
const r = new (0, _chunk4XLYCT5Qcjs.BufferReader)(bytes);
|
|
148
148
|
const streamType = Number(r.readVarInt());
|
|
149
149
|
if (streamType !== 1) {
|
|
150
150
|
return {
|
|
151
151
|
ok: false,
|
|
152
|
-
error: new (0,
|
|
152
|
+
error: new (0, _chunk4XLYCT5Qcjs.DecodeError)(
|
|
153
153
|
"CONSTRAINT_VIOLATION",
|
|
154
154
|
`Expected datagram type 0x01, got 0x${streamType.toString(16)}`,
|
|
155
155
|
0
|
|
@@ -179,18 +179,18 @@ function decodeDatagram(bytes) {
|
|
|
179
179
|
bytesRead: r.offset
|
|
180
180
|
};
|
|
181
181
|
} catch (e) {
|
|
182
|
-
if (e instanceof
|
|
182
|
+
if (e instanceof _chunk4XLYCT5Qcjs.DecodeError) return { ok: false, error: e };
|
|
183
183
|
throw e;
|
|
184
184
|
}
|
|
185
185
|
}
|
|
186
186
|
function decodeDatagramStatus(bytes) {
|
|
187
187
|
try {
|
|
188
|
-
const r = new (0,
|
|
188
|
+
const r = new (0, _chunk4XLYCT5Qcjs.BufferReader)(bytes);
|
|
189
189
|
const streamType = Number(r.readVarInt());
|
|
190
190
|
if (streamType !== 2) {
|
|
191
191
|
return {
|
|
192
192
|
ok: false,
|
|
193
|
-
error: new (0,
|
|
193
|
+
error: new (0, _chunk4XLYCT5Qcjs.DecodeError)(
|
|
194
194
|
"CONSTRAINT_VIOLATION",
|
|
195
195
|
`Expected datagram_status type 0x02, got 0x${streamType.toString(16)}`,
|
|
196
196
|
0
|
|
@@ -220,18 +220,18 @@ function decodeDatagramStatus(bytes) {
|
|
|
220
220
|
bytesRead: r.offset
|
|
221
221
|
};
|
|
222
222
|
} catch (e) {
|
|
223
|
-
if (e instanceof
|
|
223
|
+
if (e instanceof _chunk4XLYCT5Qcjs.DecodeError) return { ok: false, error: e };
|
|
224
224
|
throw e;
|
|
225
225
|
}
|
|
226
226
|
}
|
|
227
227
|
function decodeFetchStream(bytes) {
|
|
228
228
|
try {
|
|
229
|
-
const r = new (0,
|
|
229
|
+
const r = new (0, _chunk4XLYCT5Qcjs.BufferReader)(bytes);
|
|
230
230
|
const streamType = r.readVarInt();
|
|
231
231
|
if (streamType !== FETCH_STREAM_TYPE) {
|
|
232
232
|
return {
|
|
233
233
|
ok: false,
|
|
234
|
-
error: new (0,
|
|
234
|
+
error: new (0, _chunk4XLYCT5Qcjs.DecodeError)(
|
|
235
235
|
"CONSTRAINT_VIOLATION",
|
|
236
236
|
`Expected fetch type 0x05, got 0x${streamType.toString(16)}`,
|
|
237
237
|
0
|
|
@@ -282,7 +282,7 @@ function decodeFetchStream(bytes) {
|
|
|
282
282
|
bytesRead: r.offset
|
|
283
283
|
};
|
|
284
284
|
} catch (e) {
|
|
285
|
-
if (e instanceof
|
|
285
|
+
if (e instanceof _chunk4XLYCT5Qcjs.DecodeError) return { ok: false, error: e };
|
|
286
286
|
throw e;
|
|
287
287
|
}
|
|
288
288
|
}
|
|
@@ -384,7 +384,7 @@ function encodeSetupParams(params, w) {
|
|
|
384
384
|
}
|
|
385
385
|
if (params.max_subscribe_id !== void 0) {
|
|
386
386
|
w.writeVarInt(SETUP_PARAM_MAX_SUBSCRIBE_ID);
|
|
387
|
-
const tmpW = new (0,
|
|
387
|
+
const tmpW = new (0, _chunk4XLYCT5Qcjs.BufferWriter)(16);
|
|
388
388
|
tmpW.writeVarInt(params.max_subscribe_id);
|
|
389
389
|
const raw = tmpW.finish();
|
|
390
390
|
w.writeVarInt(raw.byteLength);
|
|
@@ -393,7 +393,7 @@ function encodeSetupParams(params, w) {
|
|
|
393
393
|
if (params.unknown) {
|
|
394
394
|
for (const u of params.unknown) {
|
|
395
395
|
w.writeVarInt(BigInt(u.id));
|
|
396
|
-
const raw =
|
|
396
|
+
const raw = _chunk4XLYCT5Qcjs.hexToBytes.call(void 0, u.raw_hex);
|
|
397
397
|
w.writeVarInt(raw.byteLength);
|
|
398
398
|
w.writeBytes(raw);
|
|
399
399
|
}
|
|
@@ -411,14 +411,14 @@ function decodeSetupParams(r) {
|
|
|
411
411
|
result.path = textDecoder.decode(bytes);
|
|
412
412
|
} else if (paramType === SETUP_PARAM_MAX_SUBSCRIBE_ID) {
|
|
413
413
|
const blob = r.readBytes(length);
|
|
414
|
-
const tmpReader = new (0,
|
|
414
|
+
const tmpReader = new (0, _chunk4XLYCT5Qcjs.BufferReader)(blob);
|
|
415
415
|
result.max_subscribe_id = tmpReader.readVarInt();
|
|
416
416
|
} else {
|
|
417
417
|
const bytes = r.readBytes(length);
|
|
418
418
|
unknown.push({
|
|
419
419
|
id: `0x${paramType.toString(16)}`,
|
|
420
420
|
length,
|
|
421
|
-
raw_hex:
|
|
421
|
+
raw_hex: _chunk4XLYCT5Qcjs.bytesToHex.call(void 0, bytes)
|
|
422
422
|
});
|
|
423
423
|
}
|
|
424
424
|
}
|
|
@@ -439,7 +439,7 @@ function encodeParams(params, w) {
|
|
|
439
439
|
}
|
|
440
440
|
if (params.delivery_timeout !== void 0) {
|
|
441
441
|
w.writeVarInt(PARAM_DELIVERY_TIMEOUT);
|
|
442
|
-
const tmpW = new (0,
|
|
442
|
+
const tmpW = new (0, _chunk4XLYCT5Qcjs.BufferWriter)(16);
|
|
443
443
|
tmpW.writeVarInt(params.delivery_timeout);
|
|
444
444
|
const raw = tmpW.finish();
|
|
445
445
|
w.writeVarInt(raw.byteLength);
|
|
@@ -447,7 +447,7 @@ function encodeParams(params, w) {
|
|
|
447
447
|
}
|
|
448
448
|
if (params.max_cache_duration !== void 0) {
|
|
449
449
|
w.writeVarInt(PARAM_MAX_CACHE_DURATION);
|
|
450
|
-
const tmpW = new (0,
|
|
450
|
+
const tmpW = new (0, _chunk4XLYCT5Qcjs.BufferWriter)(16);
|
|
451
451
|
tmpW.writeVarInt(params.max_cache_duration);
|
|
452
452
|
const raw = tmpW.finish();
|
|
453
453
|
w.writeVarInt(raw.byteLength);
|
|
@@ -456,7 +456,7 @@ function encodeParams(params, w) {
|
|
|
456
456
|
if (params.unknown) {
|
|
457
457
|
for (const u of params.unknown) {
|
|
458
458
|
w.writeVarInt(BigInt(u.id));
|
|
459
|
-
const raw =
|
|
459
|
+
const raw = _chunk4XLYCT5Qcjs.hexToBytes.call(void 0, u.raw_hex);
|
|
460
460
|
w.writeVarInt(raw.byteLength);
|
|
461
461
|
w.writeBytes(raw);
|
|
462
462
|
}
|
|
@@ -474,18 +474,18 @@ function decodeParams(r) {
|
|
|
474
474
|
result.authorization_info = textDecoder.decode(bytes);
|
|
475
475
|
} else if (paramType === PARAM_DELIVERY_TIMEOUT) {
|
|
476
476
|
const blob = r.readBytes(length);
|
|
477
|
-
const tmpReader = new (0,
|
|
477
|
+
const tmpReader = new (0, _chunk4XLYCT5Qcjs.BufferReader)(blob);
|
|
478
478
|
result.delivery_timeout = tmpReader.readVarInt();
|
|
479
479
|
} else if (paramType === PARAM_MAX_CACHE_DURATION) {
|
|
480
480
|
const blob = r.readBytes(length);
|
|
481
|
-
const tmpReader = new (0,
|
|
481
|
+
const tmpReader = new (0, _chunk4XLYCT5Qcjs.BufferReader)(blob);
|
|
482
482
|
result.max_cache_duration = tmpReader.readVarInt();
|
|
483
483
|
} else {
|
|
484
484
|
const bytes = r.readBytes(length);
|
|
485
485
|
unknown.push({
|
|
486
486
|
id: `0x${paramType.toString(16)}`,
|
|
487
487
|
length,
|
|
488
|
-
raw_hex:
|
|
488
|
+
raw_hex: _chunk4XLYCT5Qcjs.bytesToHex.call(void 0, bytes)
|
|
489
489
|
});
|
|
490
490
|
}
|
|
491
491
|
}
|
|
@@ -646,7 +646,7 @@ function encodeSubscribesBlockedPayload(msg, w) {
|
|
|
646
646
|
function decodeClientSetupPayload(r) {
|
|
647
647
|
const numVersions = Number(r.readVarInt());
|
|
648
648
|
if (numVersions === 0) {
|
|
649
|
-
throw new (0,
|
|
649
|
+
throw new (0, _chunk4XLYCT5Qcjs.DecodeError)("CONSTRAINT_VIOLATION", "supported_versions must not be empty", r.offset);
|
|
650
650
|
}
|
|
651
651
|
const supported_versions = [];
|
|
652
652
|
for (let i = 0; i < numVersions; i++) supported_versions.push(r.readVarInt());
|
|
@@ -668,7 +668,7 @@ function decodeSubscribePayload(r) {
|
|
|
668
668
|
const filter_type = r.readVarInt();
|
|
669
669
|
const ft = Number(filter_type);
|
|
670
670
|
if (ft < 2 || ft > 4) {
|
|
671
|
-
throw new (0,
|
|
671
|
+
throw new (0, _chunk4XLYCT5Qcjs.DecodeError)("CONSTRAINT_VIOLATION", `Invalid filter_type: ${ft}`, r.offset);
|
|
672
672
|
}
|
|
673
673
|
let start_group;
|
|
674
674
|
let start_object;
|
|
@@ -824,7 +824,7 @@ function decodeFetchPayload(r) {
|
|
|
824
824
|
const fetch_type = r.readVarInt();
|
|
825
825
|
const ft = Number(fetch_type);
|
|
826
826
|
if (ft < 1 || ft > 2) {
|
|
827
|
-
throw new (0,
|
|
827
|
+
throw new (0, _chunk4XLYCT5Qcjs.DecodeError)("CONSTRAINT_VIOLATION", `Invalid fetch_type: ${ft}`, r.offset);
|
|
828
828
|
}
|
|
829
829
|
let standalone;
|
|
830
830
|
let joining;
|
|
@@ -950,10 +950,10 @@ var payloadDecoders = /* @__PURE__ */ new Map([
|
|
|
950
950
|
function encodeMessage(message) {
|
|
951
951
|
const typeId = MESSAGE_ID_MAP.get(message.type);
|
|
952
952
|
if (typeId === void 0) throw new Error(`Unknown message type: ${message.type}`);
|
|
953
|
-
const payloadWriter = new (0,
|
|
953
|
+
const payloadWriter = new (0, _chunk4XLYCT5Qcjs.BufferWriter)();
|
|
954
954
|
encodePayload(message, payloadWriter);
|
|
955
955
|
const payload = payloadWriter.finishView();
|
|
956
|
-
const writer = new (0,
|
|
956
|
+
const writer = new (0, _chunk4XLYCT5Qcjs.BufferWriter)(payload.byteLength + 16);
|
|
957
957
|
writer.writeVarInt(typeId);
|
|
958
958
|
writer.writeVarInt(payload.byteLength);
|
|
959
959
|
writer.writeBytes(payload);
|
|
@@ -1021,16 +1021,16 @@ function encodePayload(msg, w) {
|
|
|
1021
1021
|
}
|
|
1022
1022
|
function decodeMessage(bytes) {
|
|
1023
1023
|
try {
|
|
1024
|
-
const reader = new (0,
|
|
1024
|
+
const reader = new (0, _chunk4XLYCT5Qcjs.BufferReader)(bytes);
|
|
1025
1025
|
const typeId = reader.readVarInt();
|
|
1026
1026
|
const payloadLength = Number(reader.readVarInt());
|
|
1027
1027
|
const payloadBytes = reader.readBytes(payloadLength);
|
|
1028
|
-
const payloadReader = new (0,
|
|
1028
|
+
const payloadReader = new (0, _chunk4XLYCT5Qcjs.BufferReader)(payloadBytes);
|
|
1029
1029
|
const decoder = payloadDecoders.get(typeId);
|
|
1030
1030
|
if (!decoder) {
|
|
1031
1031
|
return {
|
|
1032
1032
|
ok: false,
|
|
1033
|
-
error: new (0,
|
|
1033
|
+
error: new (0, _chunk4XLYCT5Qcjs.DecodeError)(
|
|
1034
1034
|
"UNKNOWN_MESSAGE_TYPE",
|
|
1035
1035
|
`Unknown message type ID: 0x${typeId.toString(16)}`,
|
|
1036
1036
|
0
|
|
@@ -1040,7 +1040,7 @@ function decodeMessage(bytes) {
|
|
|
1040
1040
|
const message = decoder(payloadReader);
|
|
1041
1041
|
return { ok: true, value: message, bytesRead: reader.offset };
|
|
1042
1042
|
} catch (e) {
|
|
1043
|
-
if (e instanceof
|
|
1043
|
+
if (e instanceof _chunk4XLYCT5Qcjs.DecodeError) return { ok: false, error: e };
|
|
1044
1044
|
throw e;
|
|
1045
1045
|
}
|
|
1046
1046
|
}
|
|
@@ -1070,7 +1070,7 @@ function createStreamDecoder() {
|
|
|
1070
1070
|
},
|
|
1071
1071
|
flush(controller) {
|
|
1072
1072
|
if (offset < buffer.length)
|
|
1073
|
-
controller.error(new (0,
|
|
1073
|
+
controller.error(new (0, _chunk4XLYCT5Qcjs.DecodeError)("UNEXPECTED_END", "Stream ended with incomplete data", 0));
|
|
1074
1074
|
}
|
|
1075
1075
|
});
|
|
1076
1076
|
}
|