@moqtap/codec 0.2.3 → 0.3.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/LICENSE +21 -21
- package/README.md +100 -99
- package/dist/{chunk-RZHAPEXO.js → chunk-2A57DRXV.js} +36 -10
- package/dist/{chunk-73MWUKSJ.js → chunk-2UTVXWFF.js} +190 -102
- package/dist/{chunk-JTVCOMBI.cjs → chunk-3XKO6PCR.cjs} +290 -183
- package/dist/{chunk-ACQ4CUJP.cjs → chunk-4BDEU3D4.cjs} +237 -158
- package/dist/{chunk-4N4INRE7.cjs → chunk-4HBKHNU2.cjs} +144 -110
- package/dist/{chunk-2ZT6CVSE.js → chunk-4IVZZOY3.js} +269 -162
- package/dist/{chunk-GLBQDG4L.cjs → chunk-5O764MBD.cjs} +508 -117
- package/dist/chunk-7KBAWOBA.js +1212 -0
- package/dist/{chunk-JSQM2MG3.js → chunk-7QOPNSDF.js} +44 -12
- package/dist/{chunk-SYHW3FLI.cjs → chunk-7RE6KSIY.cjs} +28 -8
- package/dist/{chunk-YG5KJESI.js → chunk-AY6IAHUM.js} +28 -8
- package/dist/{chunk-EFM5T7OM.js → chunk-BLQDWOSG.js} +36 -10
- package/dist/{chunk-UYXTY6ZQ.cjs → chunk-E65QKRSN.cjs} +20 -12
- package/dist/{chunk-BISI45MN.cjs → chunk-EAHE3IOG.cjs} +44 -12
- package/dist/{chunk-PZBPH2D7.js → chunk-GCBFHZW6.js} +216 -137
- package/dist/{chunk-GXEW4COZ.cjs → chunk-H5NSL4MO.cjs} +36 -10
- package/dist/chunk-HZHSO7EW.cjs +1212 -0
- package/dist/{chunk-KZCYQ7ED.cjs → chunk-IILNSDEQ.cjs} +69 -41
- package/dist/{chunk-4XYGE53S.cjs → chunk-J3XCPBW3.cjs} +36 -10
- package/dist/{chunk-6AEHWULA.cjs → chunk-JKOEJZ5B.cjs} +28 -8
- package/dist/{chunk-RUPCJTC3.cjs → chunk-JL3NEW3O.cjs} +23 -1
- package/dist/{chunk-G7GI7LJA.js → chunk-LORZMJJB.js} +36 -10
- package/dist/{chunk-DUBCL3WF.cjs → chunk-LV5C6MEC.cjs} +36 -10
- package/dist/{chunk-ENURAVHI.cjs → chunk-MYXAD5JC.cjs} +44 -12
- package/dist/{chunk-FXZ2MYKJ.js → chunk-MZ7HUCGJ.js} +20 -12
- package/dist/{chunk-S74DWJE2.cjs → chunk-OKG2HT25.cjs} +277 -88
- package/dist/{chunk-BGWGVINJ.cjs → chunk-PKEOQSSZ.cjs} +144 -110
- package/dist/{chunk-2GODRVT5.js → chunk-Q46ZURKX.js} +325 -48
- package/dist/{chunk-UR6JKS56.js → chunk-Q7IGWV3P.js} +41 -9
- package/dist/{chunk-XSNX2IUJ.js → chunk-RW4UG7CN.js} +121 -87
- package/dist/{chunk-DWK5ZQZ4.js → chunk-RZTLQAKF.js} +28 -8
- package/dist/{chunk-UNS34PTA.cjs → chunk-S6IPIN66.cjs} +44 -12
- package/dist/{chunk-YIG2C3LF.cjs → chunk-SDWRXXOO.cjs} +214 -126
- package/dist/{chunk-CEH7ESNC.js → chunk-SHMA4PBY.js} +121 -87
- package/dist/{chunk-MC7W6PMI.js → chunk-U3ZVLT5L.js} +483 -135
- package/dist/{chunk-VJUUZ4W2.cjs → chunk-UJU63EFY.cjs} +374 -97
- package/dist/{chunk-7L43FE6P.js → chunk-VOU7PNHI.js} +23 -1
- package/dist/{chunk-E6E3NQYU.js → chunk-WRHGCVYN.js} +44 -12
- package/dist/{chunk-FPISPJ5N.cjs → chunk-XNWYLVGU.cjs} +529 -181
- package/dist/{chunk-U3IPZYPX.js → chunk-XS77RBY7.js} +228 -39
- package/dist/{chunk-JGG7CMSZ.cjs → chunk-XZE5R57R.cjs} +144 -110
- package/dist/{chunk-77MNXX3M.js → chunk-Y6KCSM3V.js} +121 -87
- package/dist/{chunk-TLYNOOQP.cjs → chunk-YTPZZI2M.cjs} +41 -9
- package/dist/{chunk-7DUBLRXC.js → chunk-YWRCSQBA.js} +44 -12
- package/dist/{chunk-MRJWLGYH.js → chunk-Z3VKP3PJ.js} +69 -41
- package/dist/{chunk-E6P74GDT.js → chunk-Z6U26IRI.js} +464 -73
- package/dist/{codec-FvGCxIhr.d.ts → codec-25u4_1HS.d.ts} +4 -4
- package/dist/{codec-DRcsBCsb.d.ts → codec-3Ppy_5Gd.d.ts} +4 -4
- package/dist/{codec-BdVMRMOI.d.ts → codec-BB0U8MF2.d.cts} +4 -4
- package/dist/{codec-B2cH-f5V.d.cts → codec-BHHfBTnV.d.ts} +4 -4
- package/dist/{codec-B5K73Bdj.d.ts → codec-BN6jk0Td.d.cts} +4 -4
- package/dist/{codec-R8GrCPt2.d.ts → codec-BU0gaSZm.d.ts} +4 -4
- package/dist/{codec-Bq-tLtfP.d.ts → codec-C-Yk2RNa.d.ts} +4 -4
- package/dist/codec-CFWQY9Lj.d.cts +18 -0
- package/dist/{codec-CPlK3Pi5.d.ts → codec-COy4uuPO.d.cts} +4 -4
- package/dist/codec-CewFCsEy.d.ts +18 -0
- package/dist/{codec-KXHvXZVb.d.cts → codec-Ck7ZwFF1.d.cts} +4 -4
- package/dist/{codec-DZhZSIii.d.cts → codec-D2QVSH9D.d.ts} +4 -4
- package/dist/{codec-BwFgpeQu.d.ts → codec-DDUBJGn0.d.cts} +4 -4
- package/dist/{codec-BFeliJFc.d.ts → codec-DNfml-se.d.ts} +4 -4
- package/dist/{codec-C4n1PS09.d.cts → codec-DoOGjjDq.d.cts} +4 -4
- package/dist/{codec-Bap882Fh.d.cts → codec-J7ekOSMc.d.ts} +4 -4
- package/dist/{codec-SKBeHQk7.d.ts → codec-R9TJCq-E.d.cts} +4 -4
- package/dist/{codec-DNUIgLqc.d.cts → codec-ZwV-Njt6.d.ts} +4 -4
- package/dist/{codec-HgBgHkFI.d.cts → codec-j819z_hL.d.cts} +4 -4
- package/dist/{codec-DY4QH364.d.cts → codec-w8z2j_uo.d.cts} +4 -4
- package/dist/{codec-CPvPq0sb.d.cts → codec-wtt6WF1K.d.ts} +4 -4
- package/dist/{codec-BUMjz0J4.d.cts → codec-z6_2PSzi.d.cts} +4 -4
- package/dist/draft10-session.cjs +2 -2
- package/dist/draft10-session.d.cts +6 -6
- package/dist/draft10-session.d.ts +6 -6
- package/dist/draft10-session.js +1 -1
- package/dist/draft10.cjs +8 -5
- package/dist/draft10.d.cts +14 -12
- package/dist/draft10.d.ts +14 -12
- package/dist/draft10.js +16 -13
- package/dist/draft11-session.cjs +2 -2
- package/dist/draft11-session.d.cts +6 -6
- package/dist/draft11-session.d.ts +6 -6
- package/dist/draft11-session.js +1 -1
- package/dist/draft11.cjs +8 -5
- package/dist/draft11.d.cts +14 -12
- package/dist/draft11.d.ts +14 -12
- package/dist/draft11.js +16 -13
- package/dist/draft12-session.cjs +2 -2
- package/dist/draft12-session.d.cts +6 -6
- package/dist/draft12-session.d.ts +6 -6
- package/dist/draft12-session.js +1 -1
- package/dist/draft12.cjs +8 -5
- package/dist/draft12.d.cts +16 -14
- package/dist/draft12.d.ts +16 -14
- package/dist/draft12.js +16 -13
- package/dist/draft13-session.cjs +2 -2
- package/dist/draft13-session.d.cts +6 -6
- package/dist/draft13-session.d.ts +6 -6
- package/dist/draft13-session.js +1 -1
- package/dist/draft13.cjs +8 -5
- package/dist/draft13.d.cts +16 -14
- package/dist/draft13.d.ts +16 -14
- package/dist/draft13.js +16 -13
- package/dist/draft14-session.cjs +2 -2
- package/dist/draft14-session.d.cts +6 -6
- package/dist/draft14-session.d.ts +6 -6
- package/dist/draft14-session.js +1 -1
- package/dist/draft14.cjs +14 -5
- package/dist/draft14.d.cts +14 -12
- package/dist/draft14.d.ts +14 -12
- package/dist/draft14.js +13 -4
- package/dist/draft15-session.cjs +2 -2
- package/dist/draft15-session.d.cts +6 -6
- package/dist/draft15-session.d.ts +6 -6
- package/dist/draft15-session.js +1 -1
- package/dist/draft15.cjs +8 -5
- package/dist/draft15.d.cts +14 -12
- package/dist/draft15.d.ts +14 -12
- package/dist/draft15.js +16 -13
- package/dist/draft16-session.cjs +2 -2
- package/dist/draft16-session.d.cts +6 -6
- package/dist/draft16-session.d.ts +6 -6
- package/dist/draft16-session.js +1 -1
- package/dist/draft16.cjs +8 -5
- package/dist/draft16.d.cts +14 -12
- package/dist/draft16.d.ts +14 -12
- package/dist/draft16.js +16 -13
- package/dist/draft17-session.cjs +2 -2
- package/dist/draft17-session.d.cts +7 -7
- package/dist/draft17-session.d.ts +7 -7
- package/dist/draft17-session.js +1 -1
- package/dist/draft17.cjs +8 -5
- package/dist/draft17.d.cts +11 -9
- package/dist/draft17.d.ts +11 -9
- package/dist/draft17.js +16 -13
- package/dist/draft7-session.cjs +2 -2
- package/dist/draft7-session.d.cts +6 -5
- package/dist/draft7-session.d.ts +6 -5
- package/dist/draft7-session.js +1 -1
- package/dist/draft7.cjs +71 -14
- package/dist/draft7.d.cts +53 -134
- package/dist/draft7.d.ts +53 -134
- package/dist/draft7.js +76 -19
- package/dist/draft8-session.cjs +2 -2
- package/dist/draft8-session.d.cts +6 -6
- package/dist/draft8-session.d.ts +6 -6
- package/dist/draft8-session.js +1 -1
- package/dist/draft8.cjs +8 -5
- package/dist/draft8.d.cts +14 -12
- package/dist/draft8.d.ts +14 -12
- package/dist/draft8.js +7 -4
- package/dist/draft9-session.cjs +2 -2
- package/dist/draft9-session.d.cts +6 -6
- package/dist/draft9-session.d.ts +6 -6
- package/dist/draft9-session.js +1 -1
- package/dist/draft9.cjs +8 -5
- package/dist/draft9.d.cts +14 -12
- package/dist/draft9.d.ts +14 -12
- package/dist/draft9.js +7 -4
- package/dist/index.cjs +52 -74
- package/dist/index.d.cts +41 -60
- package/dist/index.d.ts +41 -60
- package/dist/index.js +40 -62
- package/dist/{session-types-CJIFbTPd.d.ts → session-types-C7UONex5.d.cts} +28 -27
- package/dist/{session-types-Cbq8IGCP.d.cts → session-types-X-IYEGoG.d.ts} +28 -27
- package/dist/session.cjs +46 -13
- package/dist/session.d.cts +28 -9
- package/dist/session.d.ts +28 -9
- package/dist/session.js +46 -13
- package/dist/{types-DxSFvL2b.d.cts → types--Q7_DcvP.d.cts} +43 -39
- package/dist/{types-DxSFvL2b.d.ts → types--Q7_DcvP.d.ts} +43 -39
- package/dist/{types-B0FT5Qs2.d.ts → types-0IWbU9Z_.d.cts} +36 -36
- package/dist/{types-B0FT5Qs2.d.cts → types-0IWbU9Z_.d.ts} +36 -36
- package/dist/{types-gQsr0AAA.d.cts → types-B3g5G9KP.d.cts} +36 -36
- package/dist/{types-gQsr0AAA.d.ts → types-B3g5G9KP.d.ts} +36 -36
- package/dist/{types-Pme7sua0.d.cts → types-BFpFNM_m.d.cts} +57 -32
- package/dist/{types-Pme7sua0.d.ts → types-BFpFNM_m.d.ts} +57 -32
- package/dist/{types-8gUGeMgs.d.ts → types-Br7fm2mf.d.cts} +48 -26
- package/dist/{types-8gUGeMgs.d.cts → types-Br7fm2mf.d.ts} +48 -26
- package/dist/{types-BeAVNU-F.d.cts → types-C2qKTRR_.d.cts} +50 -45
- package/dist/{types-BeAVNU-F.d.ts → types-C2qKTRR_.d.ts} +50 -45
- package/dist/{types-DKpsfD3i.d.cts → types-DEaypVsD.d.cts} +115 -55
- package/dist/{types-DKpsfD3i.d.ts → types-DEaypVsD.d.ts} +115 -55
- package/dist/types-Dl4IaAHR.d.cts +282 -0
- package/dist/types-Dl4IaAHR.d.ts +282 -0
- package/dist/{types-CDa7F5ct.d.cts → types-DrQpTW1G.d.cts} +58 -50
- package/dist/{types-CDa7F5ct.d.ts → types-DrQpTW1G.d.ts} +58 -50
- package/dist/types-DuIO7cWK.d.cts +25 -0
- package/dist/types-DuIO7cWK.d.ts +25 -0
- package/dist/{types-B9A2g05r.d.cts → types-DuxfOYiO.d.cts} +47 -31
- package/dist/{types-B9A2g05r.d.ts → types-DuxfOYiO.d.ts} +47 -31
- package/dist/{types-D1dI_oTX.d.cts → types-jV1yDDBA.d.cts} +36 -36
- package/dist/{types-D1dI_oTX.d.ts → types-jV1yDDBA.d.ts} +36 -36
- package/package.json +192 -192
- package/src/core/buffer-reader.ts +130 -130
- package/src/core/buffer-writer.ts +100 -100
- package/src/core/errors.ts +1 -1
- package/src/core/hex.ts +21 -21
- package/src/core/session-types.ts +61 -59
- package/src/core/types.ts +18 -361
- package/src/drafts/draft07/codec.ts +1058 -938
- package/src/drafts/draft07/data-streams.ts +240 -240
- package/src/drafts/draft07/index.ts +124 -89
- package/src/drafts/draft07/messages.ts +76 -42
- package/src/drafts/draft07/rules.ts +107 -101
- package/src/drafts/draft07/session-fsm.ts +315 -287
- package/src/drafts/draft07/session.ts +8 -6
- package/src/drafts/draft07/types.ts +406 -72
- package/src/drafts/draft07/varint.ts +51 -51
- package/src/drafts/draft08/codec.ts +985 -953
- package/src/drafts/draft08/data-streams.ts +363 -359
- package/src/drafts/draft08/index.ts +10 -9
- package/src/drafts/draft08/messages.ts +59 -59
- package/src/drafts/draft08/rules.ts +73 -73
- package/src/drafts/draft08/session-fsm.ts +335 -303
- package/src/drafts/draft08/session.ts +6 -7
- package/src/drafts/draft08/types.ts +380 -384
- package/src/drafts/draft09/codec.ts +977 -945
- package/src/drafts/draft09/data-streams.ts +336 -332
- package/src/drafts/draft09/index.ts +10 -9
- package/src/drafts/draft09/messages.ts +59 -59
- package/src/drafts/draft09/rules.ts +73 -73
- package/src/drafts/draft09/session-fsm.ts +335 -303
- package/src/drafts/draft09/session.ts +6 -7
- package/src/drafts/draft09/types.ts +380 -384
- package/src/drafts/draft10/codec.ts +977 -945
- package/src/drafts/draft10/data-streams.ts +336 -332
- package/src/drafts/draft10/index.ts +10 -9
- package/src/drafts/draft10/messages.ts +59 -59
- package/src/drafts/draft10/rules.ts +73 -73
- package/src/drafts/draft10/session-fsm.ts +335 -303
- package/src/drafts/draft10/session.ts +6 -7
- package/src/drafts/draft10/types.ts +380 -384
- package/src/drafts/draft11/codec.ts +1054 -988
- package/src/drafts/draft11/data-streams.ts +316 -269
- package/src/drafts/draft11/index.ts +10 -9
- package/src/drafts/draft11/messages.ts +60 -59
- package/src/drafts/draft11/rules.ts +73 -73
- package/src/drafts/draft11/session-fsm.ts +359 -333
- package/src/drafts/draft11/session.ts +6 -7
- package/src/drafts/draft11/types.ts +385 -381
- package/src/drafts/draft12/codec.ts +1178 -1122
- package/src/drafts/draft12/data-streams.ts +324 -275
- package/src/drafts/draft12/index.ts +10 -9
- package/src/drafts/draft12/messages.ts +67 -66
- package/src/drafts/draft12/rules.ts +79 -79
- package/src/drafts/draft12/session-fsm.ts +384 -358
- package/src/drafts/draft12/session.ts +6 -7
- package/src/drafts/draft12/types.ts +424 -419
- package/src/drafts/draft13/codec.ts +1296 -1206
- package/src/drafts/draft13/data-streams.ts +326 -275
- package/src/drafts/draft13/index.ts +10 -9
- package/src/drafts/draft13/messages.ts +73 -68
- package/src/drafts/draft13/rules.ts +81 -81
- package/src/drafts/draft13/session-fsm.ts +392 -366
- package/src/drafts/draft13/session.ts +6 -7
- package/src/drafts/draft13/types.ts +447 -438
- package/src/drafts/draft14/codec.ts +1347 -1043
- package/src/drafts/draft14/data-streams.ts +831 -813
- package/src/drafts/draft14/index.ts +17 -9
- package/src/drafts/draft14/messages.ts +65 -65
- package/src/drafts/draft14/rules.ts +81 -81
- package/src/drafts/draft14/session-fsm.ts +415 -405
- package/src/drafts/draft14/session.ts +6 -7
- package/src/drafts/draft14/types.ts +451 -381
- package/src/drafts/draft15/codec.ts +1138 -978
- package/src/drafts/draft15/data-streams.ts +842 -794
- package/src/drafts/draft15/index.ts +10 -9
- package/src/drafts/draft15/messages.ts +54 -53
- package/src/drafts/draft15/rules.ts +67 -67
- package/src/drafts/draft15/session-fsm.ts +319 -299
- package/src/drafts/draft15/session.ts +6 -7
- package/src/drafts/draft15/types.ts +357 -339
- package/src/drafts/draft16/codec.ts +1242 -966
- package/src/drafts/draft16/data-streams.ts +835 -789
- package/src/drafts/draft16/index.ts +10 -9
- package/src/drafts/draft16/messages.ts +56 -55
- package/src/drafts/draft16/rules.ts +69 -69
- package/src/drafts/draft16/session-fsm.ts +319 -299
- package/src/drafts/draft16/session.ts +6 -7
- package/src/drafts/draft16/types.ts +386 -357
- package/src/drafts/draft17/codec.ts +1209 -971
- package/src/drafts/draft17/data-streams.ts +969 -758
- package/src/drafts/draft17/index.ts +9 -7
- package/src/drafts/draft17/messages.ts +43 -42
- package/src/drafts/draft17/rules.ts +58 -58
- package/src/drafts/draft17/session-fsm.ts +248 -216
- package/src/drafts/draft17/session.ts +5 -5
- package/src/drafts/draft17/types.ts +337 -313
- package/src/index.ts +85 -274
- package/src/session.ts +62 -23
- package/dist/chunk-FZDIEHQL.cjs +0 -1042
- package/dist/chunk-HDWJ2GDE.js +0 -24
- package/dist/chunk-KNDYS3DK.cjs +0 -24
- package/dist/chunk-N2KBF5Q2.js +0 -1042
- package/dist/types-QNXoxC9Y.d.cts +0 -236
- package/dist/types-QNXoxC9Y.d.ts +0 -236
- package/src/drafts/draft07/announce-fsm.ts +0 -2
- package/src/drafts/draft07/parameters.ts +0 -12
- package/src/drafts/draft07/subscription-fsm.ts +0 -3
|
@@ -310,7 +310,11 @@ var Draft13SessionFSM = (_class = class {
|
|
|
310
310
|
};
|
|
311
311
|
}
|
|
312
312
|
this._phase = "ready";
|
|
313
|
-
return {
|
|
313
|
+
return {
|
|
314
|
+
ok: true,
|
|
315
|
+
phase: this._phase,
|
|
316
|
+
sideEffects: [{ type: "session-ready" }]
|
|
317
|
+
};
|
|
314
318
|
}
|
|
315
319
|
handleGoAway(message, sideEffects) {
|
|
316
320
|
if (this._phase !== "ready" && this._phase !== "draining") {
|
|
@@ -326,7 +330,10 @@ var Draft13SessionFSM = (_class = class {
|
|
|
326
330
|
}
|
|
327
331
|
this._phase = "draining";
|
|
328
332
|
const goaway = message;
|
|
329
|
-
sideEffects.push({
|
|
333
|
+
sideEffects.push({
|
|
334
|
+
type: "session-draining",
|
|
335
|
+
goAwayUri: goaway.new_session_uri
|
|
336
|
+
});
|
|
330
337
|
return { ok: true, phase: this._phase, sideEffects };
|
|
331
338
|
}
|
|
332
339
|
requireReady(msgType) {
|
|
@@ -384,7 +391,10 @@ var Draft13SessionFSM = (_class = class {
|
|
|
384
391
|
)
|
|
385
392
|
};
|
|
386
393
|
this._subscriptions.set(ok.request_id, { ...existing, phase: "active" });
|
|
387
|
-
sideEffects.push({
|
|
394
|
+
sideEffects.push({
|
|
395
|
+
type: "subscription-activated",
|
|
396
|
+
subscribeId: ok.request_id
|
|
397
|
+
});
|
|
388
398
|
return { ok: true, phase: this._phase, sideEffects };
|
|
389
399
|
}
|
|
390
400
|
handleSubscribeError(message, sideEffects) {
|
|
@@ -508,7 +518,10 @@ var Draft13SessionFSM = (_class = class {
|
|
|
508
518
|
const ann = message;
|
|
509
519
|
const nsKey = ann.track_namespace.join("/");
|
|
510
520
|
this._requestIds.add(ann.request_id);
|
|
511
|
-
this._announces.set(nsKey, {
|
|
521
|
+
this._announces.set(nsKey, {
|
|
522
|
+
namespace: ann.track_namespace,
|
|
523
|
+
phase: "pending"
|
|
524
|
+
});
|
|
512
525
|
return { ok: true, phase: this._phase, sideEffects };
|
|
513
526
|
}
|
|
514
527
|
handleAnnounceOk(message, sideEffects) {
|
|
@@ -535,7 +548,10 @@ var Draft13SessionFSM = (_class = class {
|
|
|
535
548
|
const existing = this._announces.get(nsKey);
|
|
536
549
|
if (existing) {
|
|
537
550
|
this._announces.delete(nsKey);
|
|
538
|
-
sideEffects.push({
|
|
551
|
+
sideEffects.push({
|
|
552
|
+
type: "announce-ended",
|
|
553
|
+
namespace: unann.track_namespace
|
|
554
|
+
});
|
|
539
555
|
}
|
|
540
556
|
return { ok: true, phase: this._phase, sideEffects };
|
|
541
557
|
}
|
|
@@ -547,7 +563,10 @@ var Draft13SessionFSM = (_class = class {
|
|
|
547
563
|
const existing = this._announces.get(nsKey);
|
|
548
564
|
if (existing) {
|
|
549
565
|
this._announces.delete(nsKey);
|
|
550
|
-
sideEffects.push({
|
|
566
|
+
sideEffects.push({
|
|
567
|
+
type: "announce-ended",
|
|
568
|
+
namespace: cancel.track_namespace
|
|
569
|
+
});
|
|
551
570
|
}
|
|
552
571
|
return { ok: true, phase: this._phase, sideEffects };
|
|
553
572
|
}
|
|
@@ -585,7 +604,10 @@ var Draft13SessionFSM = (_class = class {
|
|
|
585
604
|
const dupErr = this.checkDuplicateRequestId(fetch.request_id, message.type);
|
|
586
605
|
if (dupErr) return { ok: false, violation: dupErr };
|
|
587
606
|
this._requestIds.add(fetch.request_id);
|
|
588
|
-
this._fetches.set(fetch.request_id, {
|
|
607
|
+
this._fetches.set(fetch.request_id, {
|
|
608
|
+
requestId: fetch.request_id,
|
|
609
|
+
phase: "pending"
|
|
610
|
+
});
|
|
589
611
|
return { ok: true, phase: this._phase, sideEffects };
|
|
590
612
|
}
|
|
591
613
|
handleFetchOk(message, sideEffects) {
|
|
@@ -662,7 +684,11 @@ var Draft13SessionFSM = (_class = class {
|
|
|
662
684
|
)
|
|
663
685
|
};
|
|
664
686
|
this._fetches.set(cancel.request_id, { ...existing, phase: "cancelled" });
|
|
665
|
-
sideEffects.push({
|
|
687
|
+
sideEffects.push({
|
|
688
|
+
type: "fetch-ended",
|
|
689
|
+
requestId: cancel.request_id,
|
|
690
|
+
reason: "cancelled"
|
|
691
|
+
});
|
|
666
692
|
return { ok: true, phase: this._phase, sideEffects };
|
|
667
693
|
}
|
|
668
694
|
// ─── Track status lifecycle ───
|
|
@@ -733,8 +759,8 @@ var Draft13SessionFSM = (_class = class {
|
|
|
733
759
|
}, _class);
|
|
734
760
|
|
|
735
761
|
// src/drafts/draft13/session.ts
|
|
736
|
-
function createDraft13SessionState(
|
|
737
|
-
return new Draft13SessionFSM(
|
|
762
|
+
function createDraft13SessionState(role) {
|
|
763
|
+
return new Draft13SessionFSM(role);
|
|
738
764
|
}
|
|
739
765
|
|
|
740
766
|
|
|
@@ -277,7 +277,11 @@ var Draft08SessionFSM = (_class = class {
|
|
|
277
277
|
};
|
|
278
278
|
}
|
|
279
279
|
this._phase = "ready";
|
|
280
|
-
return {
|
|
280
|
+
return {
|
|
281
|
+
ok: true,
|
|
282
|
+
phase: this._phase,
|
|
283
|
+
sideEffects: [{ type: "session-ready" }]
|
|
284
|
+
};
|
|
281
285
|
}
|
|
282
286
|
handleGoAway(message, sideEffects) {
|
|
283
287
|
if (this._phase !== "ready" && this._phase !== "draining") {
|
|
@@ -293,7 +297,10 @@ var Draft08SessionFSM = (_class = class {
|
|
|
293
297
|
}
|
|
294
298
|
this._phase = "draining";
|
|
295
299
|
const goaway = message;
|
|
296
|
-
sideEffects.push({
|
|
300
|
+
sideEffects.push({
|
|
301
|
+
type: "session-draining",
|
|
302
|
+
goAwayUri: goaway.new_session_uri
|
|
303
|
+
});
|
|
297
304
|
return { ok: true, phase: this._phase, sideEffects };
|
|
298
305
|
}
|
|
299
306
|
requireReady(msgType) {
|
|
@@ -351,7 +358,10 @@ var Draft08SessionFSM = (_class = class {
|
|
|
351
358
|
)
|
|
352
359
|
};
|
|
353
360
|
this._subscriptions.set(ok.subscribe_id, { ...existing, phase: "active" });
|
|
354
|
-
sideEffects.push({
|
|
361
|
+
sideEffects.push({
|
|
362
|
+
type: "subscription-activated",
|
|
363
|
+
subscribeId: ok.subscribe_id
|
|
364
|
+
});
|
|
355
365
|
return { ok: true, phase: this._phase, sideEffects };
|
|
356
366
|
}
|
|
357
367
|
handleSubscribeError(message, sideEffects) {
|
|
@@ -381,7 +391,10 @@ var Draft08SessionFSM = (_class = class {
|
|
|
381
391
|
message.type
|
|
382
392
|
)
|
|
383
393
|
};
|
|
384
|
-
this._subscriptions.set(subErr.subscribe_id, {
|
|
394
|
+
this._subscriptions.set(subErr.subscribe_id, {
|
|
395
|
+
...existing,
|
|
396
|
+
phase: "error"
|
|
397
|
+
});
|
|
385
398
|
sideEffects.push({
|
|
386
399
|
type: "subscription-ended",
|
|
387
400
|
subscribeId: subErr.subscribe_id,
|
|
@@ -474,7 +487,10 @@ var Draft08SessionFSM = (_class = class {
|
|
|
474
487
|
if (err) return { ok: false, violation: err };
|
|
475
488
|
const ann = message;
|
|
476
489
|
const nsKey = ann.track_namespace.join("/");
|
|
477
|
-
this._announces.set(nsKey, {
|
|
490
|
+
this._announces.set(nsKey, {
|
|
491
|
+
namespace: ann.track_namespace,
|
|
492
|
+
phase: "pending"
|
|
493
|
+
});
|
|
478
494
|
return { ok: true, phase: this._phase, sideEffects };
|
|
479
495
|
}
|
|
480
496
|
handleAnnounceOk(message, sideEffects) {
|
|
@@ -533,7 +549,10 @@ var Draft08SessionFSM = (_class = class {
|
|
|
533
549
|
)
|
|
534
550
|
};
|
|
535
551
|
this._announces.set(nsKey, { ...existing, phase: "error" });
|
|
536
|
-
sideEffects.push({
|
|
552
|
+
sideEffects.push({
|
|
553
|
+
type: "announce-ended",
|
|
554
|
+
namespace: annErr.track_namespace
|
|
555
|
+
});
|
|
537
556
|
return { ok: true, phase: this._phase, sideEffects };
|
|
538
557
|
}
|
|
539
558
|
handleUnannounce(message, sideEffects) {
|
|
@@ -544,7 +563,10 @@ var Draft08SessionFSM = (_class = class {
|
|
|
544
563
|
const existing = this._announces.get(nsKey);
|
|
545
564
|
if (existing) {
|
|
546
565
|
this._announces.delete(nsKey);
|
|
547
|
-
sideEffects.push({
|
|
566
|
+
sideEffects.push({
|
|
567
|
+
type: "announce-ended",
|
|
568
|
+
namespace: unann.track_namespace
|
|
569
|
+
});
|
|
548
570
|
}
|
|
549
571
|
return { ok: true, phase: this._phase, sideEffects };
|
|
550
572
|
}
|
|
@@ -556,7 +578,10 @@ var Draft08SessionFSM = (_class = class {
|
|
|
556
578
|
const existing = this._announces.get(nsKey);
|
|
557
579
|
if (existing) {
|
|
558
580
|
this._announces.delete(nsKey);
|
|
559
|
-
sideEffects.push({
|
|
581
|
+
sideEffects.push({
|
|
582
|
+
type: "announce-ended",
|
|
583
|
+
namespace: cancel.track_namespace
|
|
584
|
+
});
|
|
560
585
|
}
|
|
561
586
|
return { ok: true, phase: this._phase, sideEffects };
|
|
562
587
|
}
|
|
@@ -568,7 +593,10 @@ var Draft08SessionFSM = (_class = class {
|
|
|
568
593
|
const dupErr = this.checkDuplicateSubscribeId(fetch.subscribe_id, message.type);
|
|
569
594
|
if (dupErr) return { ok: false, violation: dupErr };
|
|
570
595
|
this._subscribeIds.add(fetch.subscribe_id);
|
|
571
|
-
this._fetches.set(fetch.subscribe_id, {
|
|
596
|
+
this._fetches.set(fetch.subscribe_id, {
|
|
597
|
+
requestId: fetch.subscribe_id,
|
|
598
|
+
phase: "pending"
|
|
599
|
+
});
|
|
572
600
|
return { ok: true, phase: this._phase, sideEffects };
|
|
573
601
|
}
|
|
574
602
|
handleFetchOk(message, sideEffects) {
|
|
@@ -645,7 +673,11 @@ var Draft08SessionFSM = (_class = class {
|
|
|
645
673
|
)
|
|
646
674
|
};
|
|
647
675
|
this._fetches.set(cancel.subscribe_id, { ...existing, phase: "cancelled" });
|
|
648
|
-
sideEffects.push({
|
|
676
|
+
sideEffects.push({
|
|
677
|
+
type: "fetch-ended",
|
|
678
|
+
requestId: cancel.subscribe_id,
|
|
679
|
+
reason: "cancelled"
|
|
680
|
+
});
|
|
649
681
|
return { ok: true, phase: this._phase, sideEffects };
|
|
650
682
|
}
|
|
651
683
|
// ─── Generic ready-phase handler ───
|
|
@@ -664,8 +696,8 @@ var Draft08SessionFSM = (_class = class {
|
|
|
664
696
|
}, _class);
|
|
665
697
|
|
|
666
698
|
// src/drafts/draft08/session.ts
|
|
667
|
-
function createDraft08SessionState(
|
|
668
|
-
return new Draft08SessionFSM(
|
|
699
|
+
function createDraft08SessionState(role) {
|
|
700
|
+
return new Draft08SessionFSM(role);
|
|
669
701
|
}
|
|
670
702
|
|
|
671
703
|
|
|
@@ -316,7 +316,11 @@ var Draft14SessionFSM = class {
|
|
|
316
316
|
};
|
|
317
317
|
}
|
|
318
318
|
this._phase = "ready";
|
|
319
|
-
return {
|
|
319
|
+
return {
|
|
320
|
+
ok: true,
|
|
321
|
+
phase: this._phase,
|
|
322
|
+
sideEffects: [{ type: "session-ready" }]
|
|
323
|
+
};
|
|
320
324
|
}
|
|
321
325
|
handleGoAway(message, _direction, sideEffects) {
|
|
322
326
|
if (this._phase !== "ready" && this._phase !== "draining") {
|
|
@@ -332,7 +336,10 @@ var Draft14SessionFSM = class {
|
|
|
332
336
|
}
|
|
333
337
|
this._phase = "draining";
|
|
334
338
|
const goaway = message;
|
|
335
|
-
sideEffects.push({
|
|
339
|
+
sideEffects.push({
|
|
340
|
+
type: "session-draining",
|
|
341
|
+
goAwayUri: goaway.new_session_uri
|
|
342
|
+
});
|
|
336
343
|
return { ok: true, phase: this._phase, sideEffects };
|
|
337
344
|
}
|
|
338
345
|
requireReady(msgType) {
|
|
@@ -392,7 +399,10 @@ var Draft14SessionFSM = class {
|
|
|
392
399
|
};
|
|
393
400
|
}
|
|
394
401
|
this._subscriptions.set(ok.request_id, { ...existing, phase: "active" });
|
|
395
|
-
sideEffects.push({
|
|
402
|
+
sideEffects.push({
|
|
403
|
+
type: "subscription-activated",
|
|
404
|
+
subscribeId: ok.request_id
|
|
405
|
+
});
|
|
396
406
|
return { ok: true, phase: this._phase, sideEffects };
|
|
397
407
|
}
|
|
398
408
|
handleSubscribeError(message, _direction, sideEffects) {
|
|
@@ -702,7 +712,11 @@ var Draft14SessionFSM = class {
|
|
|
702
712
|
};
|
|
703
713
|
}
|
|
704
714
|
this._fetches.set(cancel.request_id, { ...existing, phase: "cancelled" });
|
|
705
|
-
sideEffects.push({
|
|
715
|
+
sideEffects.push({
|
|
716
|
+
type: "fetch-ended",
|
|
717
|
+
requestId: cancel.request_id,
|
|
718
|
+
reason: "cancelled"
|
|
719
|
+
});
|
|
706
720
|
return { ok: true, phase: this._phase, sideEffects };
|
|
707
721
|
}
|
|
708
722
|
// ─── Publish namespace lifecycle ──────────────────────────────────────────────
|
|
@@ -734,17 +748,11 @@ var Draft14SessionFSM = class {
|
|
|
734
748
|
handlePublishNamespaceDone(message, sideEffects) {
|
|
735
749
|
const err = this.requireReady(message.type);
|
|
736
750
|
if (err) return { ok: false, violation: err };
|
|
737
|
-
const done = message;
|
|
738
|
-
const idErr = this.checkKnownRequestId(done.request_id, message.type);
|
|
739
|
-
if (idErr) return { ok: false, violation: idErr };
|
|
740
751
|
return { ok: true, phase: this._phase, sideEffects };
|
|
741
752
|
}
|
|
742
753
|
handlePublishNamespaceCancel(message, sideEffects) {
|
|
743
754
|
const err = this.requireReady(message.type);
|
|
744
755
|
if (err) return { ok: false, violation: err };
|
|
745
|
-
const cancel = message;
|
|
746
|
-
const idErr = this.checkKnownRequestId(cancel.request_id, message.type);
|
|
747
|
-
if (idErr) return { ok: false, violation: idErr };
|
|
748
756
|
return { ok: true, phase: this._phase, sideEffects };
|
|
749
757
|
}
|
|
750
758
|
// ─── Subscribe namespace lifecycle ──────────────────────────────────────────────
|
|
@@ -820,8 +828,8 @@ var Draft14SessionFSM = class {
|
|
|
820
828
|
};
|
|
821
829
|
|
|
822
830
|
// src/drafts/draft14/session.ts
|
|
823
|
-
function createDraft14SessionState(
|
|
824
|
-
return new Draft14SessionFSM(
|
|
831
|
+
function createDraft14SessionState(role) {
|
|
832
|
+
return new Draft14SessionFSM(role);
|
|
825
833
|
}
|
|
826
834
|
|
|
827
835
|
export {
|