@moqtap/codec 0.2.3 → 0.4.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.
Files changed (313) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +100 -99
  3. package/dist/{chunk-RZHAPEXO.js → chunk-2A57DRXV.js} +36 -10
  4. package/dist/{chunk-73MWUKSJ.js → chunk-2UTVXWFF.js} +190 -102
  5. package/dist/{chunk-JTVCOMBI.cjs → chunk-3XKO6PCR.cjs} +290 -183
  6. package/dist/{chunk-ACQ4CUJP.cjs → chunk-4BDEU3D4.cjs} +237 -158
  7. package/dist/{chunk-4N4INRE7.cjs → chunk-4HBKHNU2.cjs} +144 -110
  8. package/dist/{chunk-2ZT6CVSE.js → chunk-4IVZZOY3.js} +269 -162
  9. package/dist/{chunk-GLBQDG4L.cjs → chunk-5O764MBD.cjs} +508 -117
  10. package/dist/chunk-7KBAWOBA.js +1212 -0
  11. package/dist/{chunk-JSQM2MG3.js → chunk-7QOPNSDF.js} +44 -12
  12. package/dist/{chunk-SYHW3FLI.cjs → chunk-7RE6KSIY.cjs} +28 -8
  13. package/dist/{chunk-YG5KJESI.js → chunk-AY6IAHUM.js} +28 -8
  14. package/dist/{chunk-EFM5T7OM.js → chunk-BLQDWOSG.js} +36 -10
  15. package/dist/{chunk-UYXTY6ZQ.cjs → chunk-E65QKRSN.cjs} +20 -12
  16. package/dist/{chunk-BISI45MN.cjs → chunk-EAHE3IOG.cjs} +44 -12
  17. package/dist/{chunk-PZBPH2D7.js → chunk-GCBFHZW6.js} +216 -137
  18. package/dist/{chunk-GXEW4COZ.cjs → chunk-H5NSL4MO.cjs} +36 -10
  19. package/dist/chunk-HZHSO7EW.cjs +1212 -0
  20. package/dist/{chunk-KZCYQ7ED.cjs → chunk-IILNSDEQ.cjs} +69 -41
  21. package/dist/{chunk-4XYGE53S.cjs → chunk-J3XCPBW3.cjs} +36 -10
  22. package/dist/{chunk-6AEHWULA.cjs → chunk-JKOEJZ5B.cjs} +28 -8
  23. package/dist/{chunk-RUPCJTC3.cjs → chunk-JL3NEW3O.cjs} +23 -1
  24. package/dist/{chunk-G7GI7LJA.js → chunk-LORZMJJB.js} +36 -10
  25. package/dist/{chunk-DUBCL3WF.cjs → chunk-LV5C6MEC.cjs} +36 -10
  26. package/dist/{chunk-ENURAVHI.cjs → chunk-MYXAD5JC.cjs} +44 -12
  27. package/dist/{chunk-FXZ2MYKJ.js → chunk-MZ7HUCGJ.js} +20 -12
  28. package/dist/{chunk-S74DWJE2.cjs → chunk-OKG2HT25.cjs} +277 -88
  29. package/dist/{chunk-BGWGVINJ.cjs → chunk-PKEOQSSZ.cjs} +144 -110
  30. package/dist/{chunk-2GODRVT5.js → chunk-Q46ZURKX.js} +325 -48
  31. package/dist/{chunk-UR6JKS56.js → chunk-Q7IGWV3P.js} +41 -9
  32. package/dist/{chunk-XSNX2IUJ.js → chunk-RW4UG7CN.js} +121 -87
  33. package/dist/{chunk-DWK5ZQZ4.js → chunk-RZTLQAKF.js} +28 -8
  34. package/dist/{chunk-UNS34PTA.cjs → chunk-S6IPIN66.cjs} +44 -12
  35. package/dist/{chunk-YIG2C3LF.cjs → chunk-SDWRXXOO.cjs} +214 -126
  36. package/dist/{chunk-CEH7ESNC.js → chunk-SHMA4PBY.js} +121 -87
  37. package/dist/{chunk-MC7W6PMI.js → chunk-U3ZVLT5L.js} +483 -135
  38. package/dist/{chunk-VJUUZ4W2.cjs → chunk-UJU63EFY.cjs} +374 -97
  39. package/dist/{chunk-7L43FE6P.js → chunk-VOU7PNHI.js} +23 -1
  40. package/dist/{chunk-E6E3NQYU.js → chunk-WRHGCVYN.js} +44 -12
  41. package/dist/{chunk-FPISPJ5N.cjs → chunk-XNWYLVGU.cjs} +529 -181
  42. package/dist/{chunk-U3IPZYPX.js → chunk-XS77RBY7.js} +228 -39
  43. package/dist/{chunk-JGG7CMSZ.cjs → chunk-XZE5R57R.cjs} +144 -110
  44. package/dist/{chunk-77MNXX3M.js → chunk-Y6KCSM3V.js} +121 -87
  45. package/dist/{chunk-TLYNOOQP.cjs → chunk-YTPZZI2M.cjs} +41 -9
  46. package/dist/{chunk-7DUBLRXC.js → chunk-YWRCSQBA.js} +44 -12
  47. package/dist/{chunk-MRJWLGYH.js → chunk-Z3VKP3PJ.js} +69 -41
  48. package/dist/{chunk-E6P74GDT.js → chunk-Z6U26IRI.js} +464 -73
  49. package/dist/{codec-FvGCxIhr.d.ts → codec-25u4_1HS.d.ts} +4 -4
  50. package/dist/{codec-DRcsBCsb.d.ts → codec-3Ppy_5Gd.d.ts} +4 -4
  51. package/dist/{codec-BdVMRMOI.d.ts → codec-BB0U8MF2.d.cts} +4 -4
  52. package/dist/{codec-B2cH-f5V.d.cts → codec-BHHfBTnV.d.ts} +4 -4
  53. package/dist/{codec-B5K73Bdj.d.ts → codec-BN6jk0Td.d.cts} +4 -4
  54. package/dist/{codec-R8GrCPt2.d.ts → codec-BU0gaSZm.d.ts} +4 -4
  55. package/dist/{codec-Bq-tLtfP.d.ts → codec-C-Yk2RNa.d.ts} +4 -4
  56. package/dist/codec-CFWQY9Lj.d.cts +18 -0
  57. package/dist/{codec-CPlK3Pi5.d.ts → codec-COy4uuPO.d.cts} +4 -4
  58. package/dist/codec-CewFCsEy.d.ts +18 -0
  59. package/dist/{codec-KXHvXZVb.d.cts → codec-Ck7ZwFF1.d.cts} +4 -4
  60. package/dist/{codec-DZhZSIii.d.cts → codec-D2QVSH9D.d.ts} +4 -4
  61. package/dist/{codec-BwFgpeQu.d.ts → codec-DDUBJGn0.d.cts} +4 -4
  62. package/dist/{codec-BFeliJFc.d.ts → codec-DNfml-se.d.ts} +4 -4
  63. package/dist/{codec-C4n1PS09.d.cts → codec-DoOGjjDq.d.cts} +4 -4
  64. package/dist/{codec-Bap882Fh.d.cts → codec-J7ekOSMc.d.ts} +4 -4
  65. package/dist/{codec-SKBeHQk7.d.ts → codec-R9TJCq-E.d.cts} +4 -4
  66. package/dist/{codec-DNUIgLqc.d.cts → codec-ZwV-Njt6.d.ts} +4 -4
  67. package/dist/{codec-HgBgHkFI.d.cts → codec-j819z_hL.d.cts} +4 -4
  68. package/dist/{codec-DY4QH364.d.cts → codec-w8z2j_uo.d.cts} +4 -4
  69. package/dist/{codec-CPvPq0sb.d.cts → codec-wtt6WF1K.d.ts} +4 -4
  70. package/dist/{codec-BUMjz0J4.d.cts → codec-z6_2PSzi.d.cts} +4 -4
  71. package/dist/{draft7-session.cjs → draft07-session.cjs} +2 -2
  72. package/dist/draft07-session.d.cts +8 -0
  73. package/dist/draft07-session.d.ts +8 -0
  74. package/dist/{draft7-session.js → draft07-session.js} +1 -1
  75. package/dist/draft07.cjs +129 -0
  76. package/dist/draft07.d.cts +67 -0
  77. package/dist/draft07.d.ts +67 -0
  78. package/dist/draft07.js +129 -0
  79. package/dist/draft08-session.cjs +6 -0
  80. package/dist/draft08-session.d.cts +8 -0
  81. package/dist/draft08-session.d.ts +8 -0
  82. package/dist/{draft8-session.js → draft08-session.js} +1 -1
  83. package/dist/draft08.cjs +119 -0
  84. package/dist/{draft8.d.cts → draft08.d.cts} +15 -13
  85. package/dist/{draft8.d.ts → draft08.d.ts} +15 -13
  86. package/dist/{draft8.js → draft08.js} +7 -4
  87. package/dist/draft09-session.cjs +6 -0
  88. package/dist/draft09-session.d.cts +8 -0
  89. package/dist/draft09-session.d.ts +8 -0
  90. package/dist/{draft9-session.js → draft09-session.js} +1 -1
  91. package/dist/draft09.cjs +119 -0
  92. package/dist/{draft9.d.cts → draft09.d.cts} +15 -13
  93. package/dist/{draft9.d.ts → draft09.d.ts} +15 -13
  94. package/dist/{draft9.js → draft09.js} +7 -4
  95. package/dist/draft10-session.cjs +2 -2
  96. package/dist/draft10-session.d.cts +6 -6
  97. package/dist/draft10-session.d.ts +6 -6
  98. package/dist/draft10-session.js +1 -1
  99. package/dist/draft10.cjs +8 -5
  100. package/dist/draft10.d.cts +14 -12
  101. package/dist/draft10.d.ts +14 -12
  102. package/dist/draft10.js +16 -13
  103. package/dist/draft11-session.cjs +2 -2
  104. package/dist/draft11-session.d.cts +6 -6
  105. package/dist/draft11-session.d.ts +6 -6
  106. package/dist/draft11-session.js +1 -1
  107. package/dist/draft11.cjs +8 -5
  108. package/dist/draft11.d.cts +14 -12
  109. package/dist/draft11.d.ts +14 -12
  110. package/dist/draft11.js +16 -13
  111. package/dist/draft12-session.cjs +2 -2
  112. package/dist/draft12-session.d.cts +6 -6
  113. package/dist/draft12-session.d.ts +6 -6
  114. package/dist/draft12-session.js +1 -1
  115. package/dist/draft12.cjs +8 -5
  116. package/dist/draft12.d.cts +16 -14
  117. package/dist/draft12.d.ts +16 -14
  118. package/dist/draft12.js +16 -13
  119. package/dist/draft13-session.cjs +2 -2
  120. package/dist/draft13-session.d.cts +6 -6
  121. package/dist/draft13-session.d.ts +6 -6
  122. package/dist/draft13-session.js +1 -1
  123. package/dist/draft13.cjs +8 -5
  124. package/dist/draft13.d.cts +16 -14
  125. package/dist/draft13.d.ts +16 -14
  126. package/dist/draft13.js +16 -13
  127. package/dist/draft14-session.cjs +2 -2
  128. package/dist/draft14-session.d.cts +6 -6
  129. package/dist/draft14-session.d.ts +6 -6
  130. package/dist/draft14-session.js +1 -1
  131. package/dist/draft14.cjs +14 -5
  132. package/dist/draft14.d.cts +14 -12
  133. package/dist/draft14.d.ts +14 -12
  134. package/dist/draft14.js +13 -4
  135. package/dist/draft15-session.cjs +2 -2
  136. package/dist/draft15-session.d.cts +6 -6
  137. package/dist/draft15-session.d.ts +6 -6
  138. package/dist/draft15-session.js +1 -1
  139. package/dist/draft15.cjs +8 -5
  140. package/dist/draft15.d.cts +14 -12
  141. package/dist/draft15.d.ts +14 -12
  142. package/dist/draft15.js +16 -13
  143. package/dist/draft16-session.cjs +2 -2
  144. package/dist/draft16-session.d.cts +6 -6
  145. package/dist/draft16-session.d.ts +6 -6
  146. package/dist/draft16-session.js +1 -1
  147. package/dist/draft16.cjs +8 -5
  148. package/dist/draft16.d.cts +14 -12
  149. package/dist/draft16.d.ts +14 -12
  150. package/dist/draft16.js +16 -13
  151. package/dist/draft17-session.cjs +2 -2
  152. package/dist/draft17-session.d.cts +7 -7
  153. package/dist/draft17-session.d.ts +7 -7
  154. package/dist/draft17-session.js +1 -1
  155. package/dist/draft17.cjs +8 -5
  156. package/dist/draft17.d.cts +11 -9
  157. package/dist/draft17.d.ts +11 -9
  158. package/dist/draft17.js +16 -13
  159. package/dist/index.cjs +52 -74
  160. package/dist/index.d.cts +41 -60
  161. package/dist/index.d.ts +41 -60
  162. package/dist/index.js +40 -62
  163. package/dist/{session-types-CJIFbTPd.d.ts → session-types-C7UONex5.d.cts} +28 -27
  164. package/dist/{session-types-Cbq8IGCP.d.cts → session-types-X-IYEGoG.d.ts} +28 -27
  165. package/dist/session.cjs +46 -13
  166. package/dist/session.d.cts +29 -11
  167. package/dist/session.d.ts +29 -11
  168. package/dist/session.js +46 -13
  169. package/dist/{types-DxSFvL2b.d.cts → types--Q7_DcvP.d.cts} +43 -39
  170. package/dist/{types-DxSFvL2b.d.ts → types--Q7_DcvP.d.ts} +43 -39
  171. package/dist/{types-B0FT5Qs2.d.cts → types-0IWbU9Z_.d.cts} +36 -36
  172. package/dist/{types-B0FT5Qs2.d.ts → types-0IWbU9Z_.d.ts} +36 -36
  173. package/dist/{types-gQsr0AAA.d.cts → types-B3g5G9KP.d.cts} +36 -36
  174. package/dist/{types-gQsr0AAA.d.ts → types-B3g5G9KP.d.ts} +36 -36
  175. package/dist/{types-Pme7sua0.d.cts → types-BFpFNM_m.d.cts} +57 -32
  176. package/dist/{types-Pme7sua0.d.ts → types-BFpFNM_m.d.ts} +57 -32
  177. package/dist/{types-8gUGeMgs.d.cts → types-Br7fm2mf.d.cts} +48 -26
  178. package/dist/{types-8gUGeMgs.d.ts → types-Br7fm2mf.d.ts} +48 -26
  179. package/dist/{types-BeAVNU-F.d.cts → types-C2qKTRR_.d.cts} +50 -45
  180. package/dist/{types-BeAVNU-F.d.ts → types-C2qKTRR_.d.ts} +50 -45
  181. package/dist/{types-DKpsfD3i.d.cts → types-DEaypVsD.d.cts} +115 -55
  182. package/dist/{types-DKpsfD3i.d.ts → types-DEaypVsD.d.ts} +115 -55
  183. package/dist/types-Dl4IaAHR.d.cts +282 -0
  184. package/dist/types-Dl4IaAHR.d.ts +282 -0
  185. package/dist/{types-CDa7F5ct.d.cts → types-DrQpTW1G.d.cts} +58 -50
  186. package/dist/{types-CDa7F5ct.d.ts → types-DrQpTW1G.d.ts} +58 -50
  187. package/dist/types-DuIO7cWK.d.cts +25 -0
  188. package/dist/types-DuIO7cWK.d.ts +25 -0
  189. package/dist/{types-B9A2g05r.d.cts → types-DuxfOYiO.d.cts} +47 -31
  190. package/dist/{types-B9A2g05r.d.ts → types-DuxfOYiO.d.ts} +47 -31
  191. package/dist/{types-D1dI_oTX.d.cts → types-jV1yDDBA.d.cts} +36 -36
  192. package/dist/{types-D1dI_oTX.d.ts → types-jV1yDDBA.d.ts} +36 -36
  193. package/package.json +192 -192
  194. package/src/core/buffer-reader.ts +130 -130
  195. package/src/core/buffer-writer.ts +100 -100
  196. package/src/core/errors.ts +1 -1
  197. package/src/core/hex.ts +21 -21
  198. package/src/core/session-types.ts +61 -59
  199. package/src/core/types.ts +18 -361
  200. package/src/drafts/draft07/codec.ts +1058 -938
  201. package/src/drafts/draft07/data-streams.ts +240 -240
  202. package/src/drafts/draft07/index.ts +124 -89
  203. package/src/drafts/draft07/messages.ts +76 -42
  204. package/src/drafts/draft07/rules.ts +107 -101
  205. package/src/drafts/draft07/session-fsm.ts +315 -287
  206. package/src/drafts/draft07/session.ts +8 -6
  207. package/src/drafts/draft07/types.ts +406 -72
  208. package/src/drafts/draft07/varint.ts +51 -51
  209. package/src/drafts/draft08/codec.ts +985 -953
  210. package/src/drafts/draft08/data-streams.ts +363 -359
  211. package/src/drafts/draft08/index.ts +10 -9
  212. package/src/drafts/draft08/messages.ts +59 -59
  213. package/src/drafts/draft08/rules.ts +73 -73
  214. package/src/drafts/draft08/session-fsm.ts +335 -303
  215. package/src/drafts/draft08/session.ts +6 -7
  216. package/src/drafts/draft08/types.ts +380 -384
  217. package/src/drafts/draft09/codec.ts +977 -945
  218. package/src/drafts/draft09/data-streams.ts +336 -332
  219. package/src/drafts/draft09/index.ts +10 -9
  220. package/src/drafts/draft09/messages.ts +59 -59
  221. package/src/drafts/draft09/rules.ts +73 -73
  222. package/src/drafts/draft09/session-fsm.ts +335 -303
  223. package/src/drafts/draft09/session.ts +6 -7
  224. package/src/drafts/draft09/types.ts +380 -384
  225. package/src/drafts/draft10/codec.ts +977 -945
  226. package/src/drafts/draft10/data-streams.ts +336 -332
  227. package/src/drafts/draft10/index.ts +10 -9
  228. package/src/drafts/draft10/messages.ts +59 -59
  229. package/src/drafts/draft10/rules.ts +73 -73
  230. package/src/drafts/draft10/session-fsm.ts +335 -303
  231. package/src/drafts/draft10/session.ts +6 -7
  232. package/src/drafts/draft10/types.ts +380 -384
  233. package/src/drafts/draft11/codec.ts +1054 -988
  234. package/src/drafts/draft11/data-streams.ts +316 -269
  235. package/src/drafts/draft11/index.ts +10 -9
  236. package/src/drafts/draft11/messages.ts +60 -59
  237. package/src/drafts/draft11/rules.ts +73 -73
  238. package/src/drafts/draft11/session-fsm.ts +359 -333
  239. package/src/drafts/draft11/session.ts +6 -7
  240. package/src/drafts/draft11/types.ts +385 -381
  241. package/src/drafts/draft12/codec.ts +1178 -1122
  242. package/src/drafts/draft12/data-streams.ts +324 -275
  243. package/src/drafts/draft12/index.ts +10 -9
  244. package/src/drafts/draft12/messages.ts +67 -66
  245. package/src/drafts/draft12/rules.ts +79 -79
  246. package/src/drafts/draft12/session-fsm.ts +384 -358
  247. package/src/drafts/draft12/session.ts +6 -7
  248. package/src/drafts/draft12/types.ts +424 -419
  249. package/src/drafts/draft13/codec.ts +1296 -1206
  250. package/src/drafts/draft13/data-streams.ts +326 -275
  251. package/src/drafts/draft13/index.ts +10 -9
  252. package/src/drafts/draft13/messages.ts +73 -68
  253. package/src/drafts/draft13/rules.ts +81 -81
  254. package/src/drafts/draft13/session-fsm.ts +392 -366
  255. package/src/drafts/draft13/session.ts +6 -7
  256. package/src/drafts/draft13/types.ts +447 -438
  257. package/src/drafts/draft14/codec.ts +1347 -1043
  258. package/src/drafts/draft14/data-streams.ts +831 -813
  259. package/src/drafts/draft14/index.ts +17 -9
  260. package/src/drafts/draft14/messages.ts +65 -65
  261. package/src/drafts/draft14/rules.ts +81 -81
  262. package/src/drafts/draft14/session-fsm.ts +415 -405
  263. package/src/drafts/draft14/session.ts +6 -7
  264. package/src/drafts/draft14/types.ts +451 -381
  265. package/src/drafts/draft15/codec.ts +1138 -978
  266. package/src/drafts/draft15/data-streams.ts +842 -794
  267. package/src/drafts/draft15/index.ts +10 -9
  268. package/src/drafts/draft15/messages.ts +54 -53
  269. package/src/drafts/draft15/rules.ts +67 -67
  270. package/src/drafts/draft15/session-fsm.ts +319 -299
  271. package/src/drafts/draft15/session.ts +6 -7
  272. package/src/drafts/draft15/types.ts +357 -339
  273. package/src/drafts/draft16/codec.ts +1242 -966
  274. package/src/drafts/draft16/data-streams.ts +835 -789
  275. package/src/drafts/draft16/index.ts +10 -9
  276. package/src/drafts/draft16/messages.ts +56 -55
  277. package/src/drafts/draft16/rules.ts +69 -69
  278. package/src/drafts/draft16/session-fsm.ts +319 -299
  279. package/src/drafts/draft16/session.ts +6 -7
  280. package/src/drafts/draft16/types.ts +386 -357
  281. package/src/drafts/draft17/codec.ts +1209 -971
  282. package/src/drafts/draft17/data-streams.ts +969 -758
  283. package/src/drafts/draft17/index.ts +9 -7
  284. package/src/drafts/draft17/messages.ts +43 -42
  285. package/src/drafts/draft17/rules.ts +58 -58
  286. package/src/drafts/draft17/session-fsm.ts +248 -216
  287. package/src/drafts/draft17/session.ts +5 -5
  288. package/src/drafts/draft17/types.ts +337 -313
  289. package/src/index.ts +85 -274
  290. package/src/session.ts +63 -25
  291. package/dist/chunk-FZDIEHQL.cjs +0 -1042
  292. package/dist/chunk-HDWJ2GDE.js +0 -24
  293. package/dist/chunk-KNDYS3DK.cjs +0 -24
  294. package/dist/chunk-N2KBF5Q2.js +0 -1042
  295. package/dist/draft7-session.d.cts +0 -7
  296. package/dist/draft7-session.d.ts +0 -7
  297. package/dist/draft7.cjs +0 -72
  298. package/dist/draft7.d.cts +0 -148
  299. package/dist/draft7.d.ts +0 -148
  300. package/dist/draft7.js +0 -72
  301. package/dist/draft8-session.cjs +0 -6
  302. package/dist/draft8-session.d.cts +0 -8
  303. package/dist/draft8-session.d.ts +0 -8
  304. package/dist/draft8.cjs +0 -116
  305. package/dist/draft9-session.cjs +0 -6
  306. package/dist/draft9-session.d.cts +0 -8
  307. package/dist/draft9-session.d.ts +0 -8
  308. package/dist/draft9.cjs +0 -116
  309. package/dist/types-QNXoxC9Y.d.cts +0 -236
  310. package/dist/types-QNXoxC9Y.d.ts +0 -236
  311. package/src/drafts/draft07/announce-fsm.ts +0 -2
  312. package/src/drafts/draft07/parameters.ts +0 -12
  313. package/src/drafts/draft07/subscription-fsm.ts +0 -3
@@ -1,86 +1,10 @@
1
- import {
2
- bytesToHex,
3
- hexToBytes
4
- } from "./chunk-HDWJ2GDE.js";
5
1
  import {
6
2
  BufferReader,
7
3
  BufferWriter,
8
- DecodeError
9
- } from "./chunk-7L43FE6P.js";
10
-
11
- // src/drafts/draft12/messages.ts
12
- var MSG_SUBSCRIBE_UPDATE = 0x02n;
13
- var MSG_SUBSCRIBE = 0x03n;
14
- var MSG_SUBSCRIBE_OK = 0x04n;
15
- var MSG_SUBSCRIBE_ERROR = 0x05n;
16
- var MSG_ANNOUNCE = 0x06n;
17
- var MSG_ANNOUNCE_OK = 0x07n;
18
- var MSG_ANNOUNCE_ERROR = 0x08n;
19
- var MSG_UNANNOUNCE = 0x09n;
20
- var MSG_UNSUBSCRIBE = 0x0an;
21
- var MSG_SUBSCRIBE_DONE = 0x0bn;
22
- var MSG_ANNOUNCE_CANCEL = 0x0cn;
23
- var MSG_TRACK_STATUS_REQUEST = 0x0dn;
24
- var MSG_TRACK_STATUS = 0x0en;
25
- var MSG_GOAWAY = 0x10n;
26
- var MSG_SUBSCRIBE_ANNOUNCES = 0x11n;
27
- var MSG_SUBSCRIBE_ANNOUNCES_OK = 0x12n;
28
- var MSG_SUBSCRIBE_ANNOUNCES_ERROR = 0x13n;
29
- var MSG_UNSUBSCRIBE_ANNOUNCES = 0x14n;
30
- var MSG_MAX_REQUEST_ID = 0x15n;
31
- var MSG_FETCH = 0x16n;
32
- var MSG_FETCH_CANCEL = 0x17n;
33
- var MSG_FETCH_OK = 0x18n;
34
- var MSG_FETCH_ERROR = 0x19n;
35
- var MSG_REQUESTS_BLOCKED = 0x1an;
36
- var MSG_PUBLISH = 0x1dn;
37
- var MSG_PUBLISH_OK = 0x1en;
38
- var MSG_PUBLISH_ERROR = 0x1fn;
39
- var MSG_CLIENT_SETUP = 0x20n;
40
- var MSG_SERVER_SETUP = 0x21n;
41
- var SETUP_PARAM_PATH = 0x01n;
42
- var SETUP_PARAM_MAX_REQUEST_ID = 0x02n;
43
- var PARAM_AUTHORIZATION_TOKEN = 0x01n;
44
- var PARAM_DELIVERY_TIMEOUT = 0x03n;
45
- var VARINT_FRAMED_MESSAGES = /* @__PURE__ */ new Set([
46
- MSG_PUBLISH,
47
- MSG_PUBLISH_OK,
48
- MSG_PUBLISH_ERROR
49
- ]);
50
- var MESSAGE_TYPE_MAP = /* @__PURE__ */ new Map([
51
- [MSG_CLIENT_SETUP, "client_setup"],
52
- [MSG_SERVER_SETUP, "server_setup"],
53
- [MSG_SUBSCRIBE, "subscribe"],
54
- [MSG_SUBSCRIBE_OK, "subscribe_ok"],
55
- [MSG_SUBSCRIBE_ERROR, "subscribe_error"],
56
- [MSG_SUBSCRIBE_UPDATE, "subscribe_update"],
57
- [MSG_SUBSCRIBE_DONE, "subscribe_done"],
58
- [MSG_UNSUBSCRIBE, "unsubscribe"],
59
- [MSG_ANNOUNCE, "announce"],
60
- [MSG_ANNOUNCE_OK, "announce_ok"],
61
- [MSG_ANNOUNCE_ERROR, "announce_error"],
62
- [MSG_UNANNOUNCE, "unannounce"],
63
- [MSG_ANNOUNCE_CANCEL, "announce_cancel"],
64
- [MSG_SUBSCRIBE_ANNOUNCES, "subscribe_announces"],
65
- [MSG_SUBSCRIBE_ANNOUNCES_OK, "subscribe_announces_ok"],
66
- [MSG_SUBSCRIBE_ANNOUNCES_ERROR, "subscribe_announces_error"],
67
- [MSG_UNSUBSCRIBE_ANNOUNCES, "unsubscribe_announces"],
68
- [MSG_FETCH, "fetch"],
69
- [MSG_FETCH_OK, "fetch_ok"],
70
- [MSG_FETCH_ERROR, "fetch_error"],
71
- [MSG_FETCH_CANCEL, "fetch_cancel"],
72
- [MSG_PUBLISH, "publish"],
73
- [MSG_PUBLISH_OK, "publish_ok"],
74
- [MSG_PUBLISH_ERROR, "publish_error"],
75
- [MSG_TRACK_STATUS_REQUEST, "track_status_request"],
76
- [MSG_TRACK_STATUS, "track_status"],
77
- [MSG_GOAWAY, "goaway"],
78
- [MSG_MAX_REQUEST_ID, "max_request_id"],
79
- [MSG_REQUESTS_BLOCKED, "requests_blocked"]
80
- ]);
81
- var MESSAGE_ID_MAP = new Map(
82
- [...MESSAGE_TYPE_MAP.entries()].map(([id, name]) => [name, id])
83
- );
4
+ DecodeError,
5
+ bytesToHex,
6
+ hexToBytes
7
+ } from "./chunk-VOU7PNHI.js";
84
8
 
85
9
  // src/drafts/draft12/data-streams.ts
86
10
  var FETCH_STREAM_TYPE = 0x05n;
@@ -116,7 +40,14 @@ function encodeDatagram(dg) {
116
40
  w.writeVarInt(dg.groupId);
117
41
  w.writeVarInt(dg.objectId);
118
42
  w.writeUint8(dg.publisherPriority);
119
- if (dg.streamTypeId === 2) {
43
+ const extensionsPresent = (dg.streamTypeId & 1) !== 0;
44
+ if (extensionsPresent) {
45
+ const extData = dg.extensionData ?? new Uint8Array(0);
46
+ w.writeVarInt(extData.byteLength);
47
+ if (extData.byteLength > 0) w.writeBytes(extData);
48
+ }
49
+ const isStatus = dg.streamTypeId === 2 || dg.streamTypeId === 3;
50
+ if (isStatus) {
120
51
  w.writeVarInt(dg.objectStatus ?? 0n);
121
52
  } else {
122
53
  w.writeBytes(dg.payload);
@@ -135,7 +66,12 @@ function encodeFetchStream(stream) {
135
66
  w.writeVarInt(BigInt(obj.extensionData.length));
136
67
  if (obj.extensionData.length > 0) w.writeBytes(obj.extensionData);
137
68
  w.writeVarInt(obj.payloadLength);
138
- w.writeBytes(obj.payload);
69
+ if (obj.payloadLength === 0) {
70
+ const status = obj.objectStatus;
71
+ w.writeVarInt(status ?? 0n);
72
+ } else {
73
+ w.writeBytes(obj.payload);
74
+ }
139
75
  }
140
76
  return w.finish();
141
77
  }
@@ -173,9 +109,10 @@ function decodeSubgroupStream(bytes) {
173
109
  }
174
110
  firstObject = false;
175
111
  let extensionData = new Uint8Array(0);
112
+ let extensionHeadersLength;
176
113
  if (extensionsPresent) {
177
- const extLen = Number(r.readVarInt());
178
- extensionData = extLen > 0 ? r.readBytesView(extLen) : new Uint8Array(0);
114
+ extensionHeadersLength = r.readVarInt();
115
+ extensionData = extensionHeadersLength > 0n ? r.readBytesView(Number(extensionHeadersLength)) : new Uint8Array(0);
179
116
  }
180
117
  const payloadLength = Number(r.readVarInt());
181
118
  let payload;
@@ -189,7 +126,17 @@ function decodeSubgroupStream(bytes) {
189
126
  payloadByteOffset = r.offset;
190
127
  payload = r.readBytesView(payloadLength);
191
128
  }
192
- const obj = { type: "object", byteOffset, payloadByteOffset, objectId, payloadLength, extensionData, payload };
129
+ const obj = {
130
+ type: "object",
131
+ byteOffset,
132
+ payloadByteOffset,
133
+ objectId,
134
+ payloadLength,
135
+ extensionData,
136
+ payload
137
+ };
138
+ if (extensionHeadersLength !== void 0)
139
+ obj.extensionHeadersLength = extensionHeadersLength;
193
140
  if (status !== void 0) obj.status = status;
194
141
  objects.push(obj);
195
142
  }
@@ -215,23 +162,31 @@ function decodeDatagram(bytes) {
215
162
  try {
216
163
  const r = new BufferReader(bytes);
217
164
  const streamTypeId = Number(r.readVarInt());
218
- if (streamTypeId !== 0 && streamTypeId !== 2) {
165
+ if (streamTypeId < 0 || streamTypeId > 3) {
219
166
  return {
220
167
  ok: false,
221
168
  error: new DecodeError(
222
169
  "CONSTRAINT_VIOLATION",
223
- `Expected datagram type 0x00 or 0x02, got 0x${streamTypeId.toString(16)}`,
170
+ `Expected datagram type 0x00-0x03, got 0x${streamTypeId.toString(16)}`,
224
171
  0
225
172
  )
226
173
  };
227
174
  }
175
+ const extensionsPresent = (streamTypeId & 1) !== 0;
176
+ const isStatus = streamTypeId === 2 || streamTypeId === 3;
228
177
  const trackAlias = r.readVarInt();
229
178
  const groupId = r.readVarInt();
230
179
  const objectId = r.readVarInt();
231
180
  const publisherPriority = r.readUint8();
181
+ let extensionHeadersLength;
182
+ let extensionData;
183
+ if (extensionsPresent) {
184
+ extensionHeadersLength = r.readVarInt();
185
+ extensionData = extensionHeadersLength > 0n ? r.readBytesView(Number(extensionHeadersLength)) : new Uint8Array(0);
186
+ }
232
187
  let objectStatus;
233
188
  let payload;
234
- if (streamTypeId === 2) {
189
+ if (isStatus) {
235
190
  objectStatus = r.readVarInt();
236
191
  payload = new Uint8Array(0);
237
192
  } else {
@@ -247,6 +202,10 @@ function decodeDatagram(bytes) {
247
202
  payloadLength: payload.byteLength,
248
203
  payload
249
204
  };
205
+ if (extensionHeadersLength !== void 0)
206
+ result.extensionHeadersLength = extensionHeadersLength;
207
+ if (extensionData !== void 0)
208
+ result.extensionData = extensionData;
250
209
  if (objectStatus !== void 0)
251
210
  result.objectStatus = objectStatus;
252
211
  return { ok: true, value: result, bytesRead: r.offset };
@@ -299,6 +258,7 @@ function decodeFetchStream(bytes) {
299
258
  subgroupId,
300
259
  objectId,
301
260
  publisherPriority,
261
+ extensionHeadersLength,
302
262
  extensionData,
303
263
  payloadLength,
304
264
  payload
@@ -307,7 +267,11 @@ function decodeFetchStream(bytes) {
307
267
  obj.objectStatus = objectStatus;
308
268
  objects.push(obj);
309
269
  }
310
- return { ok: true, value: { type: "fetch", requestId, objects }, bytesRead: r.offset };
270
+ return {
271
+ ok: true,
272
+ value: { type: "fetch", requestId, objects },
273
+ bytesRead: r.offset
274
+ };
311
275
  } catch (e) {
312
276
  if (e instanceof DecodeError) return { ok: false, error: e };
313
277
  throw e;
@@ -328,6 +292,81 @@ function decodeDataStream(streamType, bytes) {
328
292
  }
329
293
  }
330
294
 
295
+ // src/drafts/draft12/messages.ts
296
+ var MSG_SUBSCRIBE_UPDATE = 0x02n;
297
+ var MSG_SUBSCRIBE = 0x03n;
298
+ var MSG_SUBSCRIBE_OK = 0x04n;
299
+ var MSG_SUBSCRIBE_ERROR = 0x05n;
300
+ var MSG_ANNOUNCE = 0x06n;
301
+ var MSG_ANNOUNCE_OK = 0x07n;
302
+ var MSG_ANNOUNCE_ERROR = 0x08n;
303
+ var MSG_UNANNOUNCE = 0x09n;
304
+ var MSG_UNSUBSCRIBE = 0x0an;
305
+ var MSG_SUBSCRIBE_DONE = 0x0bn;
306
+ var MSG_ANNOUNCE_CANCEL = 0x0cn;
307
+ var MSG_TRACK_STATUS_REQUEST = 0x0dn;
308
+ var MSG_TRACK_STATUS = 0x0en;
309
+ var MSG_GOAWAY = 0x10n;
310
+ var MSG_SUBSCRIBE_ANNOUNCES = 0x11n;
311
+ var MSG_SUBSCRIBE_ANNOUNCES_OK = 0x12n;
312
+ var MSG_SUBSCRIBE_ANNOUNCES_ERROR = 0x13n;
313
+ var MSG_UNSUBSCRIBE_ANNOUNCES = 0x14n;
314
+ var MSG_MAX_REQUEST_ID = 0x15n;
315
+ var MSG_FETCH = 0x16n;
316
+ var MSG_FETCH_CANCEL = 0x17n;
317
+ var MSG_FETCH_OK = 0x18n;
318
+ var MSG_FETCH_ERROR = 0x19n;
319
+ var MSG_REQUESTS_BLOCKED = 0x1an;
320
+ var MSG_PUBLISH = 0x1dn;
321
+ var MSG_PUBLISH_OK = 0x1en;
322
+ var MSG_PUBLISH_ERROR = 0x1fn;
323
+ var MSG_CLIENT_SETUP = 0x20n;
324
+ var MSG_SERVER_SETUP = 0x21n;
325
+ var SETUP_PARAM_PATH = 0x01n;
326
+ var SETUP_PARAM_MAX_REQUEST_ID = 0x02n;
327
+ var PARAM_DELIVERY_TIMEOUT = 0x02n;
328
+ var PARAM_AUTHORIZATION_TOKEN = 0x03n;
329
+ var PARAM_MAX_CACHE_DURATION = 0x04n;
330
+ var VARINT_FRAMED_MESSAGES = /* @__PURE__ */ new Set([
331
+ MSG_PUBLISH,
332
+ MSG_PUBLISH_OK,
333
+ MSG_PUBLISH_ERROR
334
+ ]);
335
+ var MESSAGE_TYPE_MAP = /* @__PURE__ */ new Map([
336
+ [MSG_CLIENT_SETUP, "client_setup"],
337
+ [MSG_SERVER_SETUP, "server_setup"],
338
+ [MSG_SUBSCRIBE, "subscribe"],
339
+ [MSG_SUBSCRIBE_OK, "subscribe_ok"],
340
+ [MSG_SUBSCRIBE_ERROR, "subscribe_error"],
341
+ [MSG_SUBSCRIBE_UPDATE, "subscribe_update"],
342
+ [MSG_SUBSCRIBE_DONE, "subscribe_done"],
343
+ [MSG_UNSUBSCRIBE, "unsubscribe"],
344
+ [MSG_ANNOUNCE, "announce"],
345
+ [MSG_ANNOUNCE_OK, "announce_ok"],
346
+ [MSG_ANNOUNCE_ERROR, "announce_error"],
347
+ [MSG_UNANNOUNCE, "unannounce"],
348
+ [MSG_ANNOUNCE_CANCEL, "announce_cancel"],
349
+ [MSG_SUBSCRIBE_ANNOUNCES, "subscribe_announces"],
350
+ [MSG_SUBSCRIBE_ANNOUNCES_OK, "subscribe_announces_ok"],
351
+ [MSG_SUBSCRIBE_ANNOUNCES_ERROR, "subscribe_announces_error"],
352
+ [MSG_UNSUBSCRIBE_ANNOUNCES, "unsubscribe_announces"],
353
+ [MSG_FETCH, "fetch"],
354
+ [MSG_FETCH_OK, "fetch_ok"],
355
+ [MSG_FETCH_ERROR, "fetch_error"],
356
+ [MSG_FETCH_CANCEL, "fetch_cancel"],
357
+ [MSG_PUBLISH, "publish"],
358
+ [MSG_PUBLISH_OK, "publish_ok"],
359
+ [MSG_PUBLISH_ERROR, "publish_error"],
360
+ [MSG_TRACK_STATUS_REQUEST, "track_status_request"],
361
+ [MSG_TRACK_STATUS, "track_status"],
362
+ [MSG_GOAWAY, "goaway"],
363
+ [MSG_MAX_REQUEST_ID, "max_request_id"],
364
+ [MSG_REQUESTS_BLOCKED, "requests_blocked"]
365
+ ]);
366
+ var MESSAGE_ID_MAP = new Map(
367
+ [...MESSAGE_TYPE_MAP.entries()].map(([id, name]) => [name, id])
368
+ );
369
+
331
370
  // src/drafts/draft12/codec.ts
332
371
  var textEncoder = /* @__PURE__ */ new TextEncoder();
333
372
  var textDecoder = /* @__PURE__ */ new TextDecoder();
@@ -389,7 +428,11 @@ function decodeSetupParams(r) {
389
428
  if (paramType === SETUP_PARAM_PATH) {
390
429
  result.path = textDecoder.decode(bytes);
391
430
  } else {
392
- unknown.push({ id: `0x${paramType.toString(16)}`, length, raw_hex: bytesToHex(bytes) });
431
+ unknown.push({
432
+ id: `0x${paramType.toString(16)}`,
433
+ length,
434
+ raw_hex: bytesToHex(bytes)
435
+ });
393
436
  }
394
437
  }
395
438
  }
@@ -398,9 +441,14 @@ function decodeSetupParams(r) {
398
441
  }
399
442
  function encodeParams(params, w) {
400
443
  let count = params.unknown ? params.unknown.length : 0;
401
- if (params.authorization_token !== void 0) count++;
402
444
  if (params.delivery_timeout !== void 0) count++;
445
+ if (params.authorization_token !== void 0) count++;
446
+ if (params.max_cache_duration !== void 0) count++;
403
447
  w.writeVarInt(count);
448
+ if (params.delivery_timeout !== void 0) {
449
+ w.writeVarInt(PARAM_DELIVERY_TIMEOUT);
450
+ w.writeVarInt(params.delivery_timeout);
451
+ }
404
452
  if (params.authorization_token !== void 0) {
405
453
  w.writeVarInt(PARAM_AUTHORIZATION_TOKEN);
406
454
  const at = params.authorization_token;
@@ -413,13 +461,9 @@ function encodeParams(params, w) {
413
461
  w.writeVarInt(raw.byteLength);
414
462
  w.writeBytes(raw);
415
463
  }
416
- if (params.delivery_timeout !== void 0) {
417
- w.writeVarInt(PARAM_DELIVERY_TIMEOUT);
418
- const tmpW = new BufferWriter(16);
419
- tmpW.writeVarInt(params.delivery_timeout);
420
- const raw = tmpW.finish();
421
- w.writeVarInt(raw.byteLength);
422
- w.writeBytes(raw);
464
+ if (params.max_cache_duration !== void 0) {
465
+ w.writeVarInt(PARAM_MAX_CACHE_DURATION);
466
+ w.writeVarInt(params.max_cache_duration);
423
467
  }
424
468
  if (params.unknown) {
425
469
  for (const u of params.unknown) {
@@ -445,14 +489,20 @@ function decodeParams(r) {
445
489
  const paramType = r.readVarInt();
446
490
  if (paramType % 2n === 0n) {
447
491
  const value = r.readVarInt();
448
- const tmpW = new BufferWriter(16);
449
- tmpW.writeVarInt(value);
450
- const raw = tmpW.finish();
451
- unknown.push({
452
- id: `0x${paramType.toString(16)}`,
453
- length: raw.byteLength,
454
- raw_hex: bytesToHex(raw)
455
- });
492
+ if (paramType === PARAM_DELIVERY_TIMEOUT) {
493
+ result.delivery_timeout = value;
494
+ } else if (paramType === PARAM_MAX_CACHE_DURATION) {
495
+ result.max_cache_duration = value;
496
+ } else {
497
+ const tmpW = new BufferWriter(16);
498
+ tmpW.writeVarInt(value);
499
+ const raw = tmpW.finish();
500
+ unknown.push({
501
+ id: `0x${paramType.toString(16)}`,
502
+ length: raw.byteLength,
503
+ raw_hex: bytesToHex(raw)
504
+ });
505
+ }
456
506
  } else {
457
507
  const length = Number(r.readVarInt());
458
508
  const startOff = r.offset;
@@ -466,13 +516,13 @@ function decodeParams(r) {
466
516
  token_type,
467
517
  token_value: textDecoder.decode(tokenBytes)
468
518
  };
469
- } else if (paramType === PARAM_DELIVERY_TIMEOUT) {
470
- const blob = r.readBytes(length);
471
- const tmpReader = new BufferReader(blob);
472
- result.delivery_timeout = tmpReader.readVarInt();
473
519
  } else {
474
520
  const bytes = r.readBytes(length);
475
- unknown.push({ id: `0x${paramType.toString(16)}`, length, raw_hex: bytesToHex(bytes) });
521
+ unknown.push({
522
+ id: `0x${paramType.toString(16)}`,
523
+ length,
524
+ raw_hex: bytesToHex(bytes)
525
+ });
476
526
  }
477
527
  }
478
528
  }
@@ -493,7 +543,7 @@ function encodeSubscribePayload(msg, w) {
493
543
  w.writeTuple(msg.track_namespace);
494
544
  w.writeString(msg.track_name);
495
545
  w.writeUint8(msg.subscriber_priority);
496
- w.writeVarInt(msg.group_order);
546
+ w.writeUint8(msg.group_order);
497
547
  w.writeVarInt(msg.forward);
498
548
  w.writeVarInt(msg.filter_type);
499
549
  const ft = Number(msg.filter_type);
@@ -510,7 +560,7 @@ function encodeSubscribeOkPayload(msg, w) {
510
560
  w.writeVarInt(msg.request_id);
511
561
  w.writeVarInt(msg.track_alias);
512
562
  w.writeVarInt(msg.expires);
513
- w.writeVarInt(msg.group_order);
563
+ w.writeUint8(msg.group_order);
514
564
  w.writeVarInt(msg.content_exists);
515
565
  if (msg.content_exists === 1n && msg.largest_location) {
516
566
  w.writeVarInt(msg.largest_location.group);
@@ -583,7 +633,7 @@ function encodePublishPayload(msg, w) {
583
633
  w.writeTuple(msg.track_namespace);
584
634
  w.writeString(msg.track_name);
585
635
  w.writeVarInt(msg.track_alias);
586
- w.writeVarInt(msg.group_order);
636
+ w.writeUint8(msg.group_order);
587
637
  w.writeVarInt(msg.content_exists);
588
638
  if (msg.content_exists === 1n && msg.largest_location) {
589
639
  w.writeVarInt(msg.largest_location.group);
@@ -596,7 +646,7 @@ function encodePublishOkPayload(msg, w) {
596
646
  w.writeVarInt(msg.request_id);
597
647
  w.writeVarInt(msg.forward);
598
648
  w.writeUint8(msg.subscriber_priority);
599
- w.writeVarInt(msg.group_order);
649
+ w.writeUint8(msg.group_order);
600
650
  w.writeVarInt(msg.filter_type);
601
651
  const ft = Number(msg.filter_type);
602
652
  if (ft === 3 || ft === 4) {
@@ -616,7 +666,7 @@ function encodePublishErrorPayload(msg, w) {
616
666
  function encodeFetchPayload(msg, w) {
617
667
  w.writeVarInt(msg.request_id);
618
668
  w.writeUint8(msg.subscriber_priority);
619
- w.writeVarInt(msg.group_order);
669
+ w.writeUint8(msg.group_order);
620
670
  w.writeVarInt(msg.fetch_type);
621
671
  const ft = Number(msg.fetch_type);
622
672
  if (ft === 1 && msg.standalone) {
@@ -634,7 +684,7 @@ function encodeFetchPayload(msg, w) {
634
684
  }
635
685
  function encodeFetchOkPayload(msg, w) {
636
686
  w.writeVarInt(msg.request_id);
637
- w.writeVarInt(msg.group_order);
687
+ w.writeUint8(msg.group_order);
638
688
  w.writeVarInt(msg.end_of_track);
639
689
  w.writeVarInt(msg.end_location.group);
640
690
  w.writeVarInt(msg.end_location.object);
@@ -690,7 +740,7 @@ function decodeSubscribePayload(r) {
690
740
  const track_namespace = r.readTuple();
691
741
  const track_name = r.readString();
692
742
  const subscriber_priority = r.readUint8();
693
- const group_order = r.readVarInt();
743
+ const group_order = r.readUint8();
694
744
  const forward = r.readVarInt();
695
745
  const filter_type = r.readVarInt();
696
746
  const ft = Number(filter_type);
@@ -728,7 +778,7 @@ function decodeSubscribeOkPayload(r) {
728
778
  const request_id = r.readVarInt();
729
779
  const track_alias = r.readVarInt();
730
780
  const expires = r.readVarInt();
731
- const group_order = r.readVarInt();
781
+ const group_order = r.readUint8();
732
782
  const content_exists = r.readVarInt();
733
783
  let largest_location;
734
784
  if (content_exists === 1n) {
@@ -779,7 +829,13 @@ function decodeSubscribeDonePayload(r) {
779
829
  const status_code = r.readVarInt();
780
830
  const stream_count = r.readVarInt();
781
831
  const reason_phrase = r.readString();
782
- return { type: "subscribe_done", request_id, status_code, stream_count, reason_phrase };
832
+ return {
833
+ type: "subscribe_done",
834
+ request_id,
835
+ status_code,
836
+ stream_count,
837
+ reason_phrase
838
+ };
783
839
  }
784
840
  function decodeUnsubscribePayload(r) {
785
841
  const request_id = r.readVarInt();
@@ -815,7 +871,12 @@ function decodeSubscribeAnnouncesPayload(r) {
815
871
  const request_id = r.readVarInt();
816
872
  const track_namespace_prefix = r.readTuple();
817
873
  const parameters = decodeParams(r);
818
- return { type: "subscribe_announces", request_id, track_namespace_prefix, parameters };
874
+ return {
875
+ type: "subscribe_announces",
876
+ request_id,
877
+ track_namespace_prefix,
878
+ parameters
879
+ };
819
880
  }
820
881
  function decodeSubscribeAnnouncesOkPayload(r) {
821
882
  const request_id = r.readVarInt();
@@ -825,7 +886,12 @@ function decodeSubscribeAnnouncesErrorPayload(r) {
825
886
  const request_id = r.readVarInt();
826
887
  const error_code = r.readVarInt();
827
888
  const reason_phrase = r.readString();
828
- return { type: "subscribe_announces_error", request_id, error_code, reason_phrase };
889
+ return {
890
+ type: "subscribe_announces_error",
891
+ request_id,
892
+ error_code,
893
+ reason_phrase
894
+ };
829
895
  }
830
896
  function decodeUnsubscribeAnnouncesPayload(r) {
831
897
  const track_namespace_prefix = r.readTuple();
@@ -836,7 +902,7 @@ function decodePublishPayload(r) {
836
902
  const track_namespace = r.readTuple();
837
903
  const track_name = r.readString();
838
904
  const track_alias = r.readVarInt();
839
- const group_order = r.readVarInt();
905
+ const group_order = r.readUint8();
840
906
  const content_exists = r.readVarInt();
841
907
  let largest_location;
842
908
  if (content_exists === 1n) {
@@ -864,7 +930,7 @@ function decodePublishOkPayload(r) {
864
930
  const request_id = r.readVarInt();
865
931
  const forward = r.readVarInt();
866
932
  const subscriber_priority = r.readUint8();
867
- const group_order = r.readVarInt();
933
+ const group_order = r.readUint8();
868
934
  const filter_type = r.readVarInt();
869
935
  const ft = Number(filter_type);
870
936
  let start_group;
@@ -901,7 +967,7 @@ function decodePublishErrorPayload(r) {
901
967
  function decodeFetchPayload(r) {
902
968
  const request_id = r.readVarInt();
903
969
  const subscriber_priority = r.readUint8();
904
- const group_order = r.readVarInt();
970
+ const group_order = r.readUint8();
905
971
  const fetch_type = r.readVarInt();
906
972
  const ft = Number(fetch_type);
907
973
  if (ft < 1 || ft > 3) {
@@ -916,7 +982,14 @@ function decodeFetchPayload(r) {
916
982
  const start_object = r.readVarInt();
917
983
  const end_group = r.readVarInt();
918
984
  const end_object = r.readVarInt();
919
- standalone = { track_namespace, track_name, start_group, start_object, end_group, end_object };
985
+ standalone = {
986
+ track_namespace,
987
+ track_name,
988
+ start_group,
989
+ start_object,
990
+ end_group,
991
+ end_object
992
+ };
920
993
  } else {
921
994
  const joining_subscribe_id = r.readVarInt();
922
995
  const joining_start = r.readVarInt();
@@ -936,7 +1009,7 @@ function decodeFetchPayload(r) {
936
1009
  }
937
1010
  function decodeFetchOkPayload(r) {
938
1011
  const request_id = r.readVarInt();
939
- const group_order = r.readVarInt();
1012
+ const group_order = r.readUint8();
940
1013
  const end_of_track = r.readVarInt();
941
1014
  const group = r.readVarInt();
942
1015
  const object = r.readVarInt();
@@ -965,7 +1038,13 @@ function decodeTrackStatusRequestPayload(r) {
965
1038
  const track_namespace = r.readTuple();
966
1039
  const track_name = r.readString();
967
1040
  const parameters = decodeParams(r);
968
- return { type: "track_status_request", request_id, track_namespace, track_name, parameters };
1041
+ return {
1042
+ type: "track_status_request",
1043
+ request_id,
1044
+ track_namespace,
1045
+ track_name,
1046
+ parameters
1047
+ };
969
1048
  }
970
1049
  function decodeTrackStatusPayload(r) {
971
1050
  const request_id = r.readVarInt();
@@ -1165,7 +1244,7 @@ function createStreamDecoder() {
1165
1244
  }
1166
1245
  function createDraft12Codec() {
1167
1246
  return {
1168
- draft: "draft-ietf-moq-transport-12",
1247
+ draft: "12",
1169
1248
  encodeMessage,
1170
1249
  decodeMessage,
1171
1250
  encodeSubgroupStream,
@@ -1180,6 +1259,13 @@ function createDraft12Codec() {
1180
1259
  }
1181
1260
 
1182
1261
  export {
1262
+ encodeSubgroupStream,
1263
+ encodeDatagram,
1264
+ encodeFetchStream,
1265
+ decodeSubgroupStream,
1266
+ decodeDatagram,
1267
+ decodeFetchStream,
1268
+ decodeDataStream,
1183
1269
  MSG_SUBSCRIBE_UPDATE,
1184
1270
  MSG_SUBSCRIBE,
1185
1271
  MSG_SUBSCRIBE_OK,
@@ -1211,18 +1297,11 @@ export {
1211
1297
  MSG_SERVER_SETUP,
1212
1298
  SETUP_PARAM_PATH,
1213
1299
  SETUP_PARAM_MAX_REQUEST_ID,
1214
- PARAM_AUTHORIZATION_TOKEN,
1215
1300
  PARAM_DELIVERY_TIMEOUT,
1301
+ PARAM_AUTHORIZATION_TOKEN,
1216
1302
  VARINT_FRAMED_MESSAGES,
1217
1303
  MESSAGE_TYPE_MAP,
1218
1304
  MESSAGE_ID_MAP,
1219
- encodeSubgroupStream,
1220
- encodeDatagram,
1221
- encodeFetchStream,
1222
- decodeSubgroupStream,
1223
- decodeDatagram,
1224
- decodeFetchStream,
1225
- decodeDataStream,
1226
1305
  encodeMessage,
1227
1306
  decodeMessage,
1228
1307
  createStreamDecoder,