@moqtap/codec 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (576) hide show
  1. package/dist/{chunk-LH4NTURO.js → chunk-2GODRVT5.js} +699 -589
  2. package/dist/{chunk-4RIXXEII.js → chunk-2ZT6CVSE.js} +274 -242
  3. package/dist/{chunk-XUUCOLWU.cjs → chunk-4N4INRE7.cjs} +332 -321
  4. package/dist/{chunk-PJRA2TQ5.js → chunk-73MWUKSJ.js} +274 -228
  5. package/dist/{chunk-NGVE2RZT.js → chunk-77MNXX3M.js} +549 -538
  6. package/dist/{chunk-A27S7HW7.js → chunk-7L43FE6P.js} +24 -3
  7. package/dist/{chunk-RVJAGE4S.cjs → chunk-ACQ4CUJP.cjs} +297 -265
  8. package/dist/{chunk-IBVM4DMJ.cjs → chunk-BGWGVINJ.cjs} +332 -321
  9. package/dist/{chunk-KFTCU2P6.js → chunk-C6KUWLQC.js} +0 -3
  10. package/dist/{chunk-CXDHOMHG.js → chunk-CEH7ESNC.js} +549 -538
  11. package/dist/{chunk-ZBKE2QRQ.js → chunk-E6P74GDT.js} +686 -599
  12. package/dist/{chunk-FUFTMAQD.cjs → chunk-FPISPJ5N.cjs} +785 -497
  13. package/dist/{chunk-7IVGHMKJ.cjs → chunk-FZDIEHQL.cjs} +300 -124
  14. package/dist/{chunk-ZSPO2GF2.cjs → chunk-GLBQDG4L.cjs} +971 -884
  15. package/dist/chunk-HDWJ2GDE.js +24 -0
  16. package/dist/{chunk-4YJANAXU.cjs → chunk-JGG7CMSZ.cjs} +469 -434
  17. package/dist/{chunk-IV2H5CFI.cjs → chunk-JTVCOMBI.cjs} +298 -266
  18. package/dist/chunk-KNDYS3DK.cjs +24 -0
  19. package/dist/{chunk-BPNL5YFQ.cjs → chunk-KZCYQ7ED.cjs} +5 -5
  20. package/dist/{chunk-U2B3B42P.js → chunk-MC7W6PMI.js} +709 -421
  21. package/dist/{chunk-MFAP7R6L.js → chunk-MRJWLGYH.js} +1 -1
  22. package/dist/{chunk-RWQ43Z4F.cjs → chunk-MZ7VU52O.cjs} +0 -3
  23. package/dist/{chunk-TMNGRIPL.js → chunk-N2KBF5Q2.js} +285 -109
  24. package/dist/{chunk-IV2HRJVT.js → chunk-PZBPH2D7.js} +274 -242
  25. package/dist/{chunk-FWISIR26.cjs → chunk-RUPCJTC3.cjs} +24 -3
  26. package/dist/{chunk-G26SJ6XS.cjs → chunk-S74DWJE2.cjs} +1001 -925
  27. package/dist/{chunk-NUX5BHWO.js → chunk-U3IPZYPX.js} +1113 -1037
  28. package/dist/{chunk-HSVYF6XX.cjs → chunk-VJUUZ4W2.cjs} +1106 -996
  29. package/dist/{chunk-ST24APEO.js → chunk-XSNX2IUJ.js} +574 -539
  30. package/dist/{chunk-K4OLITS2.cjs → chunk-YIG2C3LF.cjs} +295 -249
  31. package/dist/{drafts/draft15/codec.d.ts → codec-B2cH-f5V.d.cts} +11 -10
  32. package/dist/codec-B5K73Bdj.d.ts +30 -0
  33. package/dist/{codec-C_HMXNK_.d.ts → codec-BFeliJFc.d.ts} +4 -10
  34. package/dist/codec-BUMjz0J4.d.cts +30 -0
  35. package/dist/{codec-D0x8-SCw.d.cts → codec-Bap882Fh.d.cts} +3 -9
  36. package/dist/codec-BdVMRMOI.d.ts +34 -0
  37. package/dist/codec-Bq-tLtfP.d.ts +30 -0
  38. package/dist/codec-BwFgpeQu.d.ts +23 -0
  39. package/dist/{codec-95k8CAu5.d.cts → codec-C4n1PS09.d.cts} +3 -9
  40. package/dist/{codec-BECYPfY8.d.ts → codec-CPlK3Pi5.d.ts} +3 -9
  41. package/dist/{drafts/draft08/codec.d.ts → codec-CPvPq0sb.d.cts} +11 -9
  42. package/dist/codec-DNUIgLqc.d.cts +23 -0
  43. package/dist/codec-DRcsBCsb.d.ts +23 -0
  44. package/dist/{codec-CAevkgf5.d.cts → codec-DY4QH364.d.cts} +4 -10
  45. package/dist/codec-DZhZSIii.d.cts +30 -0
  46. package/dist/{drafts/draft14/codec.d.ts → codec-FvGCxIhr.d.ts} +11 -10
  47. package/dist/codec-HgBgHkFI.d.cts +23 -0
  48. package/dist/codec-KXHvXZVb.d.cts +35 -0
  49. package/dist/{codec-BC5jfvMb.d.ts → codec-R8GrCPt2.d.ts} +3 -9
  50. package/dist/{codec-BsPU1vNC.d.ts → codec-SKBeHQk7.d.ts} +3 -11
  51. package/dist/draft10-session.d.cts +1 -1
  52. package/dist/draft10-session.d.ts +1 -1
  53. package/dist/draft10.cjs +4 -3
  54. package/dist/draft10.d.cts +15 -5
  55. package/dist/draft10.d.ts +15 -5
  56. package/dist/draft10.js +3 -2
  57. package/dist/draft11-session.d.cts +1 -1
  58. package/dist/draft11-session.d.ts +1 -1
  59. package/dist/draft11.cjs +4 -3
  60. package/dist/draft11.d.cts +13 -5
  61. package/dist/draft11.d.ts +13 -5
  62. package/dist/draft11.js +3 -2
  63. package/dist/draft12-session.d.cts +1 -1
  64. package/dist/draft12-session.d.ts +1 -1
  65. package/dist/draft12.cjs +4 -3
  66. package/dist/draft12.d.cts +13 -5
  67. package/dist/draft12.d.ts +13 -5
  68. package/dist/draft12.js +3 -2
  69. package/dist/draft13-session.d.cts +1 -1
  70. package/dist/draft13-session.d.ts +1 -1
  71. package/dist/draft13.cjs +4 -3
  72. package/dist/draft13.d.cts +13 -5
  73. package/dist/draft13.d.ts +13 -5
  74. package/dist/draft13.js +3 -2
  75. package/dist/draft14-session.d.cts +1 -1
  76. package/dist/draft14-session.d.ts +1 -1
  77. package/dist/draft14.cjs +4 -3
  78. package/dist/draft14.d.cts +59 -5
  79. package/dist/draft14.d.ts +59 -5
  80. package/dist/draft14.js +3 -2
  81. package/dist/draft15-session.d.cts +1 -1
  82. package/dist/draft15-session.d.ts +1 -1
  83. package/dist/draft15.cjs +4 -3
  84. package/dist/draft15.d.cts +48 -5
  85. package/dist/draft15.d.ts +48 -5
  86. package/dist/draft15.js +3 -2
  87. package/dist/draft16-session.d.cts +1 -1
  88. package/dist/draft16-session.d.ts +1 -1
  89. package/dist/draft16.cjs +4 -3
  90. package/dist/draft16.d.cts +37 -5
  91. package/dist/draft16.d.ts +37 -5
  92. package/dist/draft16.js +3 -2
  93. package/dist/draft17-session.d.cts +1 -1
  94. package/dist/draft17-session.d.ts +1 -1
  95. package/dist/draft17.cjs +4 -3
  96. package/dist/draft17.d.cts +16 -5
  97. package/dist/draft17.d.ts +16 -5
  98. package/dist/draft17.js +3 -2
  99. package/dist/draft7-session.cjs +3 -3
  100. package/dist/draft7-session.js +2 -2
  101. package/dist/draft7.cjs +18 -6
  102. package/dist/draft7.d.cts +84 -8
  103. package/dist/draft7.d.ts +84 -8
  104. package/dist/draft7.js +15 -3
  105. package/dist/draft8-session.d.cts +1 -1
  106. package/dist/draft8-session.d.ts +1 -1
  107. package/dist/draft8.cjs +4 -3
  108. package/dist/draft8.d.cts +15 -5
  109. package/dist/draft8.d.ts +15 -5
  110. package/dist/draft8.js +3 -2
  111. package/dist/draft9-session.d.cts +1 -1
  112. package/dist/draft9-session.d.ts +1 -1
  113. package/dist/draft9.cjs +4 -3
  114. package/dist/draft9.d.cts +15 -5
  115. package/dist/draft9.d.ts +15 -5
  116. package/dist/draft9.js +3 -2
  117. package/dist/index.cjs +25 -24
  118. package/dist/index.d.cts +20 -20
  119. package/dist/index.d.ts +38 -46
  120. package/dist/index.js +111 -93
  121. package/dist/session.cjs +3 -3
  122. package/dist/session.d.ts +8 -4
  123. package/dist/session.js +26 -32
  124. package/dist/{types-ERexTpT8.d.cts → types-8gUGeMgs.d.cts} +4 -1
  125. package/dist/{types-ERexTpT8.d.ts → types-8gUGeMgs.d.ts} +4 -1
  126. package/dist/{types-Cw4WE9dh.d.ts → types-B0FT5Qs2.d.cts} +9 -1
  127. package/dist/{types-Cw4WE9dh.d.cts → types-B0FT5Qs2.d.ts} +9 -1
  128. package/dist/{types-DqCDFqgB.d.cts → types-B9A2g05r.d.cts} +4 -1
  129. package/dist/{types-DqCDFqgB.d.ts → types-B9A2g05r.d.ts} +4 -1
  130. package/dist/{types-Bg6QYNVt.d.cts → types-BeAVNU-F.d.cts} +7 -2
  131. package/dist/{types-Bg6QYNVt.d.ts → types-BeAVNU-F.d.ts} +7 -2
  132. package/dist/{types-C_1HrqBl.d.ts → types-CDa7F5ct.d.cts} +7 -2
  133. package/dist/{types-C_1HrqBl.d.cts → types-CDa7F5ct.d.ts} +7 -2
  134. package/dist/{types-r-CasCf1.d.cts → types-D1dI_oTX.d.cts} +8 -1
  135. package/dist/{types-r-CasCf1.d.ts → types-D1dI_oTX.d.ts} +8 -1
  136. package/dist/{types-BTFeKYCb.d.ts → types-DKpsfD3i.d.cts} +19 -4
  137. package/dist/{types-BTFeKYCb.d.cts → types-DKpsfD3i.d.ts} +19 -4
  138. package/dist/{types-4VxSL2Ho.d.ts → types-DxSFvL2b.d.cts} +7 -1
  139. package/dist/{types-4VxSL2Ho.d.cts → types-DxSFvL2b.d.ts} +7 -1
  140. package/dist/{types-B2afJZM-.d.ts → types-Pme7sua0.d.cts} +4 -1
  141. package/dist/{types-B2afJZM-.d.cts → types-Pme7sua0.d.ts} +4 -1
  142. package/dist/{types-D5gNQiDj.d.ts → types-gQsr0AAA.d.cts} +9 -1
  143. package/dist/{types-D5gNQiDj.d.cts → types-gQsr0AAA.d.ts} +9 -1
  144. package/package.json +192 -192
  145. package/src/core/buffer-reader.ts +130 -114
  146. package/src/core/buffer-writer.ts +100 -91
  147. package/src/core/hex.ts +7 -3
  148. package/src/drafts/draft07/codec.ts +14 -9
  149. package/src/drafts/draft07/data-streams.ts +240 -240
  150. package/src/drafts/draft07/varint.ts +51 -23
  151. package/src/drafts/draft08/codec.ts +19 -10
  152. package/src/drafts/draft08/data-streams.ts +359 -359
  153. package/src/drafts/draft09/codec.ts +19 -10
  154. package/src/drafts/draft09/data-streams.ts +332 -332
  155. package/src/drafts/draft10/codec.ts +19 -10
  156. package/src/drafts/draft10/data-streams.ts +332 -332
  157. package/src/drafts/draft11/codec.ts +19 -10
  158. package/src/drafts/draft11/data-streams.ts +269 -269
  159. package/src/drafts/draft12/codec.ts +19 -10
  160. package/src/drafts/draft12/data-streams.ts +275 -275
  161. package/src/drafts/draft13/codec.ts +19 -10
  162. package/src/drafts/draft13/data-streams.ts +275 -275
  163. package/src/drafts/draft14/codec.ts +19 -10
  164. package/src/drafts/draft14/data-streams.ts +813 -798
  165. package/src/drafts/draft15/codec.ts +21 -12
  166. package/src/drafts/draft15/data-streams.ts +794 -778
  167. package/src/drafts/draft16/codec.ts +21 -12
  168. package/src/drafts/draft16/data-streams.ts +789 -773
  169. package/src/drafts/draft17/codec.ts +21 -12
  170. package/src/drafts/draft17/data-streams.ts +758 -742
  171. package/dist/codec-AFuOxfsO.d.ts +0 -60
  172. package/dist/codec-B-UJ5Iow.d.cts +0 -75
  173. package/dist/codec-BvpuF-6u.d.cts +0 -39
  174. package/dist/codec-C8jZI5Cx.d.cts +0 -39
  175. package/dist/codec-CSUqCrRs.d.ts +0 -39
  176. package/dist/codec-CpuvYTSV.d.cts +0 -86
  177. package/dist/codec-D7ARhpG1.d.ts +0 -75
  178. package/dist/codec-DNAUGshO.d.cts +0 -60
  179. package/dist/codec-DPx_QNn0.d.ts +0 -31
  180. package/dist/codec-DRhCx_hw.d.ts +0 -86
  181. package/dist/codec-Db7YPe3l.d.ts +0 -31
  182. package/dist/codec-axkJpb7D.d.cts +0 -31
  183. package/dist/codec-ujAbFaep.d.cts +0 -31
  184. package/dist/core/buffer-reader.d.ts +0 -15
  185. package/dist/core/buffer-reader.d.ts.map +0 -1
  186. package/dist/core/buffer-reader.js +0 -98
  187. package/dist/core/buffer-reader.js.map +0 -1
  188. package/dist/core/buffer-writer.d.ts +0 -16
  189. package/dist/core/buffer-writer.d.ts.map +0 -1
  190. package/dist/core/buffer-writer.js +0 -86
  191. package/dist/core/buffer-writer.js.map +0 -1
  192. package/dist/core/errors.d.ts +0 -2
  193. package/dist/core/errors.d.ts.map +0 -1
  194. package/dist/core/errors.js +0 -2
  195. package/dist/core/errors.js.map +0 -1
  196. package/dist/core/hex.d.ts +0 -5
  197. package/dist/core/hex.d.ts.map +0 -1
  198. package/dist/core/hex.js +0 -17
  199. package/dist/core/hex.js.map +0 -1
  200. package/dist/core/session-types.d.ts +0 -99
  201. package/dist/core/session-types.d.ts.map +0 -1
  202. package/dist/core/session-types.js +0 -2
  203. package/dist/core/session-types.js.map +0 -1
  204. package/dist/core/types.d.ts +0 -235
  205. package/dist/core/types.d.ts.map +0 -1
  206. package/dist/core/types.js +0 -11
  207. package/dist/core/types.js.map +0 -1
  208. package/dist/drafts/draft07/announce-fsm.d.ts +0 -2
  209. package/dist/drafts/draft07/announce-fsm.d.ts.map +0 -1
  210. package/dist/drafts/draft07/announce-fsm.js +0 -2
  211. package/dist/drafts/draft07/announce-fsm.js.map +0 -1
  212. package/dist/drafts/draft07/codec.d.ts +0 -17
  213. package/dist/drafts/draft07/codec.d.ts.map +0 -1
  214. package/dist/drafts/draft07/codec.js +0 -722
  215. package/dist/drafts/draft07/codec.js.map +0 -1
  216. package/dist/drafts/draft07/data-streams.d.ts +0 -9
  217. package/dist/drafts/draft07/data-streams.d.ts.map +0 -1
  218. package/dist/drafts/draft07/data-streams.js +0 -228
  219. package/dist/drafts/draft07/data-streams.js.map +0 -1
  220. package/dist/drafts/draft07/index.d.ts +0 -14
  221. package/dist/drafts/draft07/index.d.ts.map +0 -1
  222. package/dist/drafts/draft07/index.js +0 -18
  223. package/dist/drafts/draft07/index.js.map +0 -1
  224. package/dist/drafts/draft07/messages.d.ts +0 -32
  225. package/dist/drafts/draft07/messages.d.ts.map +0 -1
  226. package/dist/drafts/draft07/messages.js +0 -42
  227. package/dist/drafts/draft07/messages.js.map +0 -1
  228. package/dist/drafts/draft07/parameters.d.ts +0 -4
  229. package/dist/drafts/draft07/parameters.d.ts.map +0 -1
  230. package/dist/drafts/draft07/parameters.js +0 -10
  231. package/dist/drafts/draft07/parameters.js.map +0 -1
  232. package/dist/drafts/draft07/rules.d.ts +0 -8
  233. package/dist/drafts/draft07/rules.d.ts.map +0 -1
  234. package/dist/drafts/draft07/rules.js +0 -95
  235. package/dist/drafts/draft07/rules.js.map +0 -1
  236. package/dist/drafts/draft07/session-fsm.d.ts +0 -38
  237. package/dist/drafts/draft07/session-fsm.d.ts.map +0 -1
  238. package/dist/drafts/draft07/session-fsm.js +0 -354
  239. package/dist/drafts/draft07/session-fsm.js.map +0 -1
  240. package/dist/drafts/draft07/session.d.ts +0 -4
  241. package/dist/drafts/draft07/session.d.ts.map +0 -1
  242. package/dist/drafts/draft07/session.js +0 -5
  243. package/dist/drafts/draft07/session.js.map +0 -1
  244. package/dist/drafts/draft07/subscription-fsm.d.ts +0 -2
  245. package/dist/drafts/draft07/subscription-fsm.d.ts.map +0 -1
  246. package/dist/drafts/draft07/subscription-fsm.js +0 -2
  247. package/dist/drafts/draft07/subscription-fsm.js.map +0 -1
  248. package/dist/drafts/draft07/types.d.ts +0 -61
  249. package/dist/drafts/draft07/types.d.ts.map +0 -1
  250. package/dist/drafts/draft07/types.js +0 -4
  251. package/dist/drafts/draft07/types.js.map +0 -1
  252. package/dist/drafts/draft07/varint.d.ts +0 -4
  253. package/dist/drafts/draft07/varint.d.ts.map +0 -1
  254. package/dist/drafts/draft07/varint.js +0 -22
  255. package/dist/drafts/draft07/varint.js.map +0 -1
  256. package/dist/drafts/draft08/codec.d.ts.map +0 -1
  257. package/dist/drafts/draft08/codec.js +0 -729
  258. package/dist/drafts/draft08/codec.js.map +0 -1
  259. package/dist/drafts/draft08/data-streams.d.ts +0 -12
  260. package/dist/drafts/draft08/data-streams.d.ts.map +0 -1
  261. package/dist/drafts/draft08/data-streams.js +0 -345
  262. package/dist/drafts/draft08/data-streams.js.map +0 -1
  263. package/dist/drafts/draft08/index.d.ts +0 -9
  264. package/dist/drafts/draft08/index.d.ts.map +0 -1
  265. package/dist/drafts/draft08/index.js +0 -7
  266. package/dist/drafts/draft08/index.js.map +0 -1
  267. package/dist/drafts/draft08/messages.d.ts +0 -34
  268. package/dist/drafts/draft08/messages.d.ts.map +0 -1
  269. package/dist/drafts/draft08/messages.js +0 -66
  270. package/dist/drafts/draft08/messages.js.map +0 -1
  271. package/dist/drafts/draft08/rules.d.ts +0 -8
  272. package/dist/drafts/draft08/rules.d.ts.map +0 -1
  273. package/dist/drafts/draft08/rules.js +0 -83
  274. package/dist/drafts/draft08/rules.js.map +0 -1
  275. package/dist/drafts/draft08/session-fsm.d.ts +0 -47
  276. package/dist/drafts/draft08/session-fsm.d.ts.map +0 -1
  277. package/dist/drafts/draft08/session-fsm.js +0 -483
  278. package/dist/drafts/draft08/session-fsm.js.map +0 -1
  279. package/dist/drafts/draft08/session.d.ts +0 -5
  280. package/dist/drafts/draft08/session.d.ts.map +0 -1
  281. package/dist/drafts/draft08/session.js +0 -5
  282. package/dist/drafts/draft08/session.js.map +0 -1
  283. package/dist/drafts/draft08/types.d.ts +0 -268
  284. package/dist/drafts/draft08/types.d.ts.map +0 -1
  285. package/dist/drafts/draft08/types.js +0 -4
  286. package/dist/drafts/draft08/types.js.map +0 -1
  287. package/dist/drafts/draft09/codec.d.ts +0 -21
  288. package/dist/drafts/draft09/codec.d.ts.map +0 -1
  289. package/dist/drafts/draft09/codec.js +0 -721
  290. package/dist/drafts/draft09/codec.js.map +0 -1
  291. package/dist/drafts/draft09/data-streams.d.ts +0 -12
  292. package/dist/drafts/draft09/data-streams.d.ts.map +0 -1
  293. package/dist/drafts/draft09/data-streams.js +0 -307
  294. package/dist/drafts/draft09/data-streams.js.map +0 -1
  295. package/dist/drafts/draft09/index.d.ts +0 -9
  296. package/dist/drafts/draft09/index.d.ts.map +0 -1
  297. package/dist/drafts/draft09/index.js +0 -7
  298. package/dist/drafts/draft09/index.js.map +0 -1
  299. package/dist/drafts/draft09/messages.d.ts +0 -34
  300. package/dist/drafts/draft09/messages.d.ts.map +0 -1
  301. package/dist/drafts/draft09/messages.js +0 -66
  302. package/dist/drafts/draft09/messages.js.map +0 -1
  303. package/dist/drafts/draft09/rules.d.ts +0 -8
  304. package/dist/drafts/draft09/rules.d.ts.map +0 -1
  305. package/dist/drafts/draft09/rules.js +0 -83
  306. package/dist/drafts/draft09/rules.js.map +0 -1
  307. package/dist/drafts/draft09/session-fsm.d.ts +0 -47
  308. package/dist/drafts/draft09/session-fsm.d.ts.map +0 -1
  309. package/dist/drafts/draft09/session-fsm.js +0 -483
  310. package/dist/drafts/draft09/session-fsm.js.map +0 -1
  311. package/dist/drafts/draft09/session.d.ts +0 -5
  312. package/dist/drafts/draft09/session.d.ts.map +0 -1
  313. package/dist/drafts/draft09/session.js +0 -5
  314. package/dist/drafts/draft09/session.js.map +0 -1
  315. package/dist/drafts/draft09/types.d.ts +0 -268
  316. package/dist/drafts/draft09/types.d.ts.map +0 -1
  317. package/dist/drafts/draft09/types.js +0 -4
  318. package/dist/drafts/draft09/types.js.map +0 -1
  319. package/dist/drafts/draft10/codec.d.ts +0 -21
  320. package/dist/drafts/draft10/codec.d.ts.map +0 -1
  321. package/dist/drafts/draft10/codec.js +0 -721
  322. package/dist/drafts/draft10/codec.js.map +0 -1
  323. package/dist/drafts/draft10/data-streams.d.ts +0 -12
  324. package/dist/drafts/draft10/data-streams.d.ts.map +0 -1
  325. package/dist/drafts/draft10/data-streams.js +0 -307
  326. package/dist/drafts/draft10/data-streams.js.map +0 -1
  327. package/dist/drafts/draft10/index.d.ts +0 -9
  328. package/dist/drafts/draft10/index.d.ts.map +0 -1
  329. package/dist/drafts/draft10/index.js +0 -7
  330. package/dist/drafts/draft10/index.js.map +0 -1
  331. package/dist/drafts/draft10/messages.d.ts +0 -34
  332. package/dist/drafts/draft10/messages.d.ts.map +0 -1
  333. package/dist/drafts/draft10/messages.js +0 -66
  334. package/dist/drafts/draft10/messages.js.map +0 -1
  335. package/dist/drafts/draft10/rules.d.ts +0 -8
  336. package/dist/drafts/draft10/rules.d.ts.map +0 -1
  337. package/dist/drafts/draft10/rules.js +0 -83
  338. package/dist/drafts/draft10/rules.js.map +0 -1
  339. package/dist/drafts/draft10/session-fsm.d.ts +0 -47
  340. package/dist/drafts/draft10/session-fsm.d.ts.map +0 -1
  341. package/dist/drafts/draft10/session-fsm.js +0 -483
  342. package/dist/drafts/draft10/session-fsm.js.map +0 -1
  343. package/dist/drafts/draft10/session.d.ts +0 -5
  344. package/dist/drafts/draft10/session.d.ts.map +0 -1
  345. package/dist/drafts/draft10/session.js +0 -5
  346. package/dist/drafts/draft10/session.js.map +0 -1
  347. package/dist/drafts/draft10/types.d.ts +0 -268
  348. package/dist/drafts/draft10/types.d.ts.map +0 -1
  349. package/dist/drafts/draft10/types.js +0 -4
  350. package/dist/drafts/draft10/types.js.map +0 -1
  351. package/dist/drafts/draft11/codec.d.ts +0 -25
  352. package/dist/drafts/draft11/codec.d.ts.map +0 -1
  353. package/dist/drafts/draft11/codec.js +0 -775
  354. package/dist/drafts/draft11/codec.js.map +0 -1
  355. package/dist/drafts/draft11/data-streams.d.ts +0 -10
  356. package/dist/drafts/draft11/data-streams.d.ts.map +0 -1
  357. package/dist/drafts/draft11/data-streams.js +0 -253
  358. package/dist/drafts/draft11/data-streams.js.map +0 -1
  359. package/dist/drafts/draft11/index.d.ts +0 -9
  360. package/dist/drafts/draft11/index.d.ts.map +0 -1
  361. package/dist/drafts/draft11/index.js +0 -7
  362. package/dist/drafts/draft11/index.js.map +0 -1
  363. package/dist/drafts/draft11/messages.d.ts +0 -33
  364. package/dist/drafts/draft11/messages.d.ts.map +0 -1
  365. package/dist/drafts/draft11/messages.js +0 -65
  366. package/dist/drafts/draft11/messages.js.map +0 -1
  367. package/dist/drafts/draft11/rules.d.ts +0 -8
  368. package/dist/drafts/draft11/rules.d.ts.map +0 -1
  369. package/dist/drafts/draft11/rules.js +0 -88
  370. package/dist/drafts/draft11/rules.js.map +0 -1
  371. package/dist/drafts/draft11/session-fsm.d.ts +0 -52
  372. package/dist/drafts/draft11/session-fsm.d.ts.map +0 -1
  373. package/dist/drafts/draft11/session-fsm.js +0 -530
  374. package/dist/drafts/draft11/session-fsm.js.map +0 -1
  375. package/dist/drafts/draft11/session.d.ts +0 -5
  376. package/dist/drafts/draft11/session.d.ts.map +0 -1
  377. package/dist/drafts/draft11/session.js +0 -5
  378. package/dist/drafts/draft11/session.js.map +0 -1
  379. package/dist/drafts/draft11/types.d.ts +0 -266
  380. package/dist/drafts/draft11/types.d.ts.map +0 -1
  381. package/dist/drafts/draft11/types.js +0 -4
  382. package/dist/drafts/draft11/types.js.map +0 -1
  383. package/dist/drafts/draft12/codec.d.ts +0 -27
  384. package/dist/drafts/draft12/codec.d.ts.map +0 -1
  385. package/dist/drafts/draft12/codec.js +0 -918
  386. package/dist/drafts/draft12/codec.js.map +0 -1
  387. package/dist/drafts/draft12/data-streams.d.ts +0 -10
  388. package/dist/drafts/draft12/data-streams.d.ts.map +0 -1
  389. package/dist/drafts/draft12/data-streams.js +0 -254
  390. package/dist/drafts/draft12/data-streams.js.map +0 -1
  391. package/dist/drafts/draft12/index.d.ts +0 -9
  392. package/dist/drafts/draft12/index.d.ts.map +0 -1
  393. package/dist/drafts/draft12/index.js +0 -7
  394. package/dist/drafts/draft12/index.js.map +0 -1
  395. package/dist/drafts/draft12/messages.d.ts +0 -37
  396. package/dist/drafts/draft12/messages.d.ts.map +0 -1
  397. package/dist/drafts/draft12/messages.js +0 -77
  398. package/dist/drafts/draft12/messages.js.map +0 -1
  399. package/dist/drafts/draft12/rules.d.ts +0 -8
  400. package/dist/drafts/draft12/rules.d.ts.map +0 -1
  401. package/dist/drafts/draft12/rules.js +0 -94
  402. package/dist/drafts/draft12/rules.js.map +0 -1
  403. package/dist/drafts/draft12/session-fsm.d.ts +0 -55
  404. package/dist/drafts/draft12/session-fsm.d.ts.map +0 -1
  405. package/dist/drafts/draft12/session-fsm.js +0 -569
  406. package/dist/drafts/draft12/session-fsm.js.map +0 -1
  407. package/dist/drafts/draft12/session.d.ts +0 -5
  408. package/dist/drafts/draft12/session.d.ts.map +0 -1
  409. package/dist/drafts/draft12/session.js +0 -5
  410. package/dist/drafts/draft12/session.js.map +0 -1
  411. package/dist/drafts/draft12/types.d.ts +0 -294
  412. package/dist/drafts/draft12/types.d.ts.map +0 -1
  413. package/dist/drafts/draft12/types.js +0 -4
  414. package/dist/drafts/draft12/types.js.map +0 -1
  415. package/dist/drafts/draft13/codec.d.ts +0 -27
  416. package/dist/drafts/draft13/codec.d.ts.map +0 -1
  417. package/dist/drafts/draft13/codec.js +0 -1000
  418. package/dist/drafts/draft13/codec.js.map +0 -1
  419. package/dist/drafts/draft13/data-streams.d.ts +0 -10
  420. package/dist/drafts/draft13/data-streams.d.ts.map +0 -1
  421. package/dist/drafts/draft13/data-streams.js +0 -254
  422. package/dist/drafts/draft13/data-streams.js.map +0 -1
  423. package/dist/drafts/draft13/index.d.ts +0 -9
  424. package/dist/drafts/draft13/index.d.ts.map +0 -1
  425. package/dist/drafts/draft13/index.js +0 -7
  426. package/dist/drafts/draft13/index.js.map +0 -1
  427. package/dist/drafts/draft13/messages.d.ts +0 -38
  428. package/dist/drafts/draft13/messages.d.ts.map +0 -1
  429. package/dist/drafts/draft13/messages.js +0 -79
  430. package/dist/drafts/draft13/messages.js.map +0 -1
  431. package/dist/drafts/draft13/rules.d.ts +0 -8
  432. package/dist/drafts/draft13/rules.d.ts.map +0 -1
  433. package/dist/drafts/draft13/rules.js +0 -96
  434. package/dist/drafts/draft13/rules.js.map +0 -1
  435. package/dist/drafts/draft13/session-fsm.d.ts +0 -56
  436. package/dist/drafts/draft13/session-fsm.d.ts.map +0 -1
  437. package/dist/drafts/draft13/session-fsm.js +0 -581
  438. package/dist/drafts/draft13/session-fsm.js.map +0 -1
  439. package/dist/drafts/draft13/session.d.ts +0 -5
  440. package/dist/drafts/draft13/session.d.ts.map +0 -1
  441. package/dist/drafts/draft13/session.js +0 -5
  442. package/dist/drafts/draft13/session.js.map +0 -1
  443. package/dist/drafts/draft13/types.d.ts +0 -310
  444. package/dist/drafts/draft13/types.d.ts.map +0 -1
  445. package/dist/drafts/draft13/types.js +0 -4
  446. package/dist/drafts/draft13/types.js.map +0 -1
  447. package/dist/drafts/draft14/codec.d.ts.map +0 -1
  448. package/dist/drafts/draft14/codec.js +0 -752
  449. package/dist/drafts/draft14/codec.js.map +0 -1
  450. package/dist/drafts/draft14/data-streams.d.ts +0 -56
  451. package/dist/drafts/draft14/data-streams.d.ts.map +0 -1
  452. package/dist/drafts/draft14/data-streams.js +0 -729
  453. package/dist/drafts/draft14/data-streams.js.map +0 -1
  454. package/dist/drafts/draft14/index.d.ts +0 -9
  455. package/dist/drafts/draft14/index.d.ts.map +0 -1
  456. package/dist/drafts/draft14/index.js +0 -7
  457. package/dist/drafts/draft14/index.js.map +0 -1
  458. package/dist/drafts/draft14/messages.d.ts +0 -36
  459. package/dist/drafts/draft14/messages.d.ts.map +0 -1
  460. package/dist/drafts/draft14/messages.js +0 -71
  461. package/dist/drafts/draft14/messages.js.map +0 -1
  462. package/dist/drafts/draft14/rules.d.ts +0 -8
  463. package/dist/drafts/draft14/rules.d.ts.map +0 -1
  464. package/dist/drafts/draft14/rules.js +0 -101
  465. package/dist/drafts/draft14/rules.js.map +0 -1
  466. package/dist/drafts/draft14/session-fsm.d.ts +0 -58
  467. package/dist/drafts/draft14/session-fsm.d.ts.map +0 -1
  468. package/dist/drafts/draft14/session-fsm.js +0 -648
  469. package/dist/drafts/draft14/session-fsm.js.map +0 -1
  470. package/dist/drafts/draft14/session.d.ts +0 -5
  471. package/dist/drafts/draft14/session.d.ts.map +0 -1
  472. package/dist/drafts/draft14/session.js +0 -5
  473. package/dist/drafts/draft14/session.js.map +0 -1
  474. package/dist/drafts/draft14/types.d.ts +0 -263
  475. package/dist/drafts/draft14/types.d.ts.map +0 -1
  476. package/dist/drafts/draft14/types.js +0 -4
  477. package/dist/drafts/draft14/types.js.map +0 -1
  478. package/dist/drafts/draft15/codec.d.ts.map +0 -1
  479. package/dist/drafts/draft15/codec.js +0 -742
  480. package/dist/drafts/draft15/codec.js.map +0 -1
  481. package/dist/drafts/draft15/data-streams.d.ts +0 -45
  482. package/dist/drafts/draft15/data-streams.d.ts.map +0 -1
  483. package/dist/drafts/draft15/data-streams.js +0 -675
  484. package/dist/drafts/draft15/data-streams.js.map +0 -1
  485. package/dist/drafts/draft15/index.d.ts +0 -9
  486. package/dist/drafts/draft15/index.d.ts.map +0 -1
  487. package/dist/drafts/draft15/index.js +0 -7
  488. package/dist/drafts/draft15/index.js.map +0 -1
  489. package/dist/drafts/draft15/messages.d.ts +0 -31
  490. package/dist/drafts/draft15/messages.d.ts.map +0 -1
  491. package/dist/drafts/draft15/messages.js +0 -59
  492. package/dist/drafts/draft15/messages.js.map +0 -1
  493. package/dist/drafts/draft15/rules.d.ts +0 -8
  494. package/dist/drafts/draft15/rules.d.ts.map +0 -1
  495. package/dist/drafts/draft15/rules.js +0 -83
  496. package/dist/drafts/draft15/rules.js.map +0 -1
  497. package/dist/drafts/draft15/session-fsm.d.ts +0 -48
  498. package/dist/drafts/draft15/session-fsm.d.ts.map +0 -1
  499. package/dist/drafts/draft15/session-fsm.js +0 -479
  500. package/dist/drafts/draft15/session-fsm.js.map +0 -1
  501. package/dist/drafts/draft15/session.d.ts +0 -5
  502. package/dist/drafts/draft15/session.d.ts.map +0 -1
  503. package/dist/drafts/draft15/session.js +0 -5
  504. package/dist/drafts/draft15/session.js.map +0 -1
  505. package/dist/drafts/draft15/types.d.ts +0 -232
  506. package/dist/drafts/draft15/types.d.ts.map +0 -1
  507. package/dist/drafts/draft15/types.js +0 -4
  508. package/dist/drafts/draft15/types.js.map +0 -1
  509. package/dist/drafts/draft16/codec.d.ts +0 -29
  510. package/dist/drafts/draft16/codec.d.ts.map +0 -1
  511. package/dist/drafts/draft16/codec.js +0 -747
  512. package/dist/drafts/draft16/codec.js.map +0 -1
  513. package/dist/drafts/draft16/data-streams.d.ts +0 -34
  514. package/dist/drafts/draft16/data-streams.d.ts.map +0 -1
  515. package/dist/drafts/draft16/data-streams.js +0 -667
  516. package/dist/drafts/draft16/data-streams.js.map +0 -1
  517. package/dist/drafts/draft16/index.d.ts +0 -9
  518. package/dist/drafts/draft16/index.d.ts.map +0 -1
  519. package/dist/drafts/draft16/index.js +0 -7
  520. package/dist/drafts/draft16/index.js.map +0 -1
  521. package/dist/drafts/draft16/messages.d.ts +0 -32
  522. package/dist/drafts/draft16/messages.d.ts.map +0 -1
  523. package/dist/drafts/draft16/messages.js +0 -62
  524. package/dist/drafts/draft16/messages.js.map +0 -1
  525. package/dist/drafts/draft16/rules.d.ts +0 -8
  526. package/dist/drafts/draft16/rules.d.ts.map +0 -1
  527. package/dist/drafts/draft16/rules.js +0 -84
  528. package/dist/drafts/draft16/rules.js.map +0 -1
  529. package/dist/drafts/draft16/session-fsm.d.ts +0 -48
  530. package/dist/drafts/draft16/session-fsm.d.ts.map +0 -1
  531. package/dist/drafts/draft16/session-fsm.js +0 -474
  532. package/dist/drafts/draft16/session-fsm.js.map +0 -1
  533. package/dist/drafts/draft16/session.d.ts +0 -5
  534. package/dist/drafts/draft16/session.d.ts.map +0 -1
  535. package/dist/drafts/draft16/session.js +0 -5
  536. package/dist/drafts/draft16/session.js.map +0 -1
  537. package/dist/drafts/draft16/types.d.ts +0 -238
  538. package/dist/drafts/draft16/types.d.ts.map +0 -1
  539. package/dist/drafts/draft16/types.js +0 -4
  540. package/dist/drafts/draft16/types.js.map +0 -1
  541. package/dist/drafts/draft17/codec.d.ts +0 -29
  542. package/dist/drafts/draft17/codec.d.ts.map +0 -1
  543. package/dist/drafts/draft17/codec.js +0 -799
  544. package/dist/drafts/draft17/codec.js.map +0 -1
  545. package/dist/drafts/draft17/data-streams.d.ts +0 -13
  546. package/dist/drafts/draft17/data-streams.d.ts.map +0 -1
  547. package/dist/drafts/draft17/data-streams.js +0 -633
  548. package/dist/drafts/draft17/data-streams.js.map +0 -1
  549. package/dist/drafts/draft17/index.d.ts +0 -8
  550. package/dist/drafts/draft17/index.d.ts.map +0 -1
  551. package/dist/drafts/draft17/index.js +0 -6
  552. package/dist/drafts/draft17/index.js.map +0 -1
  553. package/dist/drafts/draft17/messages.d.ts +0 -25
  554. package/dist/drafts/draft17/messages.d.ts.map +0 -1
  555. package/dist/drafts/draft17/messages.js +0 -48
  556. package/dist/drafts/draft17/messages.js.map +0 -1
  557. package/dist/drafts/draft17/rules.d.ts +0 -8
  558. package/dist/drafts/draft17/rules.d.ts.map +0 -1
  559. package/dist/drafts/draft17/rules.js +0 -71
  560. package/dist/drafts/draft17/rules.js.map +0 -1
  561. package/dist/drafts/draft17/session-fsm.d.ts +0 -45
  562. package/dist/drafts/draft17/session-fsm.d.ts.map +0 -1
  563. package/dist/drafts/draft17/session-fsm.js +0 -328
  564. package/dist/drafts/draft17/session-fsm.js.map +0 -1
  565. package/dist/drafts/draft17/session.d.ts +0 -5
  566. package/dist/drafts/draft17/session.d.ts.map +0 -1
  567. package/dist/drafts/draft17/session.js +0 -6
  568. package/dist/drafts/draft17/session.js.map +0 -1
  569. package/dist/drafts/draft17/types.d.ts +0 -219
  570. package/dist/drafts/draft17/types.d.ts.map +0 -1
  571. package/dist/drafts/draft17/types.js +0 -3
  572. package/dist/drafts/draft17/types.js.map +0 -1
  573. package/dist/index.d.ts.map +0 -1
  574. package/dist/index.js.map +0 -1
  575. package/dist/session.d.ts.map +0 -1
  576. package/dist/session.js.map +0 -1
@@ -1,8 +1,12 @@
1
+ import {
2
+ bytesToHex,
3
+ hexToBytes
4
+ } from "./chunk-HDWJ2GDE.js";
1
5
  import {
2
6
  BufferReader,
3
7
  BufferWriter,
4
8
  DecodeError
5
- } from "./chunk-A27S7HW7.js";
9
+ } from "./chunk-7L43FE6P.js";
6
10
 
7
11
  // src/drafts/draft11/messages.ts
8
12
  var MSG_SUBSCRIBE_UPDATE = 0x02n;
@@ -67,21 +71,254 @@ var MESSAGE_ID_MAP = new Map(
67
71
  [...MESSAGE_TYPE_MAP.entries()].map(([id, name]) => [name, id])
68
72
  );
69
73
 
70
- // src/drafts/draft11/codec.ts
71
- function bytesToHex(bytes) {
72
- let hex = "";
73
- for (let i = 0; i < bytes.byteLength; i++) {
74
- hex += bytes[i].toString(16).padStart(2, "0");
74
+ // src/drafts/draft11/data-streams.ts
75
+ var FETCH_STREAM_TYPE = 0x05n;
76
+ function encodeSubgroupStream(stream) {
77
+ const w = new BufferWriter();
78
+ const typeId = stream.streamTypeId;
79
+ w.writeVarInt(BigInt(typeId));
80
+ w.writeVarInt(stream.trackAlias);
81
+ w.writeVarInt(stream.groupId);
82
+ const extensionsPresent = (typeId & 1) !== 0;
83
+ const hasSubgroupField = (typeId & 4) !== 0;
84
+ if (hasSubgroupField) w.writeVarInt(stream.subgroupId);
85
+ w.writeUint8(stream.publisherPriority);
86
+ for (const obj of stream.objects) {
87
+ w.writeVarInt(obj.objectId);
88
+ if (extensionsPresent) {
89
+ w.writeVarInt(BigInt(obj.extensionData.length));
90
+ if (obj.extensionData.length > 0) w.writeBytes(obj.extensionData);
91
+ }
92
+ w.writeVarInt(obj.payloadLength);
93
+ if (obj.payloadLength === 0 && obj.status !== void 0) {
94
+ w.writeVarInt(obj.status);
95
+ } else {
96
+ w.writeBytes(obj.payload);
97
+ }
98
+ }
99
+ return w.finish();
100
+ }
101
+ function encodeDatagram(dg) {
102
+ const w = new BufferWriter();
103
+ w.writeVarInt(BigInt(dg.streamTypeId));
104
+ w.writeVarInt(dg.trackAlias);
105
+ w.writeVarInt(dg.groupId);
106
+ w.writeVarInt(dg.objectId);
107
+ w.writeUint8(dg.publisherPriority);
108
+ if (dg.streamTypeId === 2) {
109
+ w.writeVarInt(dg.objectStatus ?? 0n);
110
+ } else {
111
+ w.writeBytes(dg.payload);
112
+ }
113
+ return w.finish();
114
+ }
115
+ function encodeFetchStream(stream) {
116
+ const w = new BufferWriter();
117
+ w.writeVarInt(FETCH_STREAM_TYPE);
118
+ w.writeVarInt(stream.requestId);
119
+ for (const obj of stream.objects) {
120
+ w.writeVarInt(obj.groupId);
121
+ w.writeVarInt(obj.subgroupId);
122
+ w.writeVarInt(obj.objectId);
123
+ w.writeUint8(obj.publisherPriority);
124
+ w.writeVarInt(BigInt(obj.extensionData.length));
125
+ if (obj.extensionData.length > 0) w.writeBytes(obj.extensionData);
126
+ w.writeVarInt(obj.payloadLength);
127
+ w.writeBytes(obj.payload);
128
+ }
129
+ return w.finish();
130
+ }
131
+ function decodeSubgroupStream(bytes) {
132
+ try {
133
+ const r = new BufferReader(bytes);
134
+ const streamTypeId = Number(r.readVarInt());
135
+ if (streamTypeId < 8 || streamTypeId > 13) {
136
+ return {
137
+ ok: false,
138
+ error: new DecodeError(
139
+ "CONSTRAINT_VIOLATION",
140
+ `Expected subgroup type 0x08-0x0D, got 0x${streamTypeId.toString(16)}`,
141
+ 0
142
+ )
143
+ };
144
+ }
145
+ const extensionsPresent = (streamTypeId & 1) !== 0;
146
+ const hasSubgroupField = (streamTypeId & 4) !== 0;
147
+ const subgroupIsFirstObjId = (streamTypeId & 2) !== 0 && !hasSubgroupField;
148
+ const trackAlias = r.readVarInt();
149
+ const groupId = r.readVarInt();
150
+ let subgroupId = 0n;
151
+ if (hasSubgroupField) subgroupId = r.readVarInt();
152
+ const publisherPriority = r.readUint8();
153
+ const objects = [];
154
+ let firstObject = true;
155
+ while (r.remaining > 0) {
156
+ const byteOffset = r.offset;
157
+ const objectId = r.readVarInt();
158
+ if (firstObject && subgroupIsFirstObjId) {
159
+ subgroupId = objectId;
160
+ firstObject = false;
161
+ }
162
+ let extensionData = new Uint8Array(0);
163
+ if (extensionsPresent) {
164
+ const extLen = Number(r.readVarInt());
165
+ extensionData = extLen > 0 ? r.readBytesView(extLen) : new Uint8Array(0);
166
+ }
167
+ const payloadLength = Number(r.readVarInt());
168
+ let payload;
169
+ let status;
170
+ let payloadByteOffset;
171
+ if (payloadLength === 0) {
172
+ status = r.readVarInt();
173
+ payloadByteOffset = r.offset;
174
+ payload = new Uint8Array(0);
175
+ } else {
176
+ payloadByteOffset = r.offset;
177
+ payload = r.readBytesView(payloadLength);
178
+ }
179
+ const obj = { type: "object", byteOffset, payloadByteOffset, objectId, extensionData, payloadLength, payload };
180
+ if (status !== void 0) obj.status = status;
181
+ objects.push(obj);
182
+ }
183
+ return {
184
+ ok: true,
185
+ value: {
186
+ type: "subgroup",
187
+ streamTypeId,
188
+ trackAlias,
189
+ groupId,
190
+ subgroupId,
191
+ publisherPriority,
192
+ objects
193
+ },
194
+ bytesRead: r.offset
195
+ };
196
+ } catch (e) {
197
+ if (e instanceof DecodeError) return { ok: false, error: e };
198
+ throw e;
199
+ }
200
+ }
201
+ function decodeDatagram(bytes) {
202
+ try {
203
+ const r = new BufferReader(bytes);
204
+ const streamTypeId = Number(r.readVarInt());
205
+ if (streamTypeId !== 0 && streamTypeId !== 2) {
206
+ return {
207
+ ok: false,
208
+ error: new DecodeError(
209
+ "CONSTRAINT_VIOLATION",
210
+ `Expected datagram type 0x00 or 0x02, got 0x${streamTypeId.toString(16)}`,
211
+ 0
212
+ )
213
+ };
214
+ }
215
+ const trackAlias = r.readVarInt();
216
+ const groupId = r.readVarInt();
217
+ const objectId = r.readVarInt();
218
+ const publisherPriority = r.readUint8();
219
+ let objectStatus;
220
+ let payload;
221
+ if (streamTypeId === 2) {
222
+ objectStatus = r.readVarInt();
223
+ payload = new Uint8Array(0);
224
+ } else {
225
+ payload = r.readBytesView(r.remaining);
226
+ }
227
+ const result = {
228
+ type: "datagram",
229
+ streamTypeId,
230
+ trackAlias,
231
+ groupId,
232
+ objectId,
233
+ publisherPriority,
234
+ payloadLength: payload.byteLength,
235
+ payload
236
+ };
237
+ if (objectStatus !== void 0)
238
+ result.objectStatus = objectStatus;
239
+ return { ok: true, value: result, bytesRead: r.offset };
240
+ } catch (e) {
241
+ if (e instanceof DecodeError) return { ok: false, error: e };
242
+ throw e;
75
243
  }
76
- return hex;
77
244
  }
78
- function hexToBytes(hex) {
79
- const bytes = new Uint8Array(hex.length / 2);
80
- for (let i = 0; i < hex.length; i += 2) {
81
- bytes[i / 2] = parseInt(hex.substring(i, i + 2), 16);
245
+ function decodeFetchStream(bytes) {
246
+ try {
247
+ const r = new BufferReader(bytes);
248
+ const streamType = r.readVarInt();
249
+ if (streamType !== FETCH_STREAM_TYPE) {
250
+ return {
251
+ ok: false,
252
+ error: new DecodeError(
253
+ "CONSTRAINT_VIOLATION",
254
+ `Expected fetch type 0x05, got 0x${streamType.toString(16)}`,
255
+ 0
256
+ )
257
+ };
258
+ }
259
+ const requestId = r.readVarInt();
260
+ const objects = [];
261
+ while (r.remaining > 0) {
262
+ const byteOffset = r.offset;
263
+ const groupId = r.readVarInt();
264
+ const subgroupId = r.readVarInt();
265
+ const objectId = r.readVarInt();
266
+ const publisherPriority = r.readUint8();
267
+ const extensionHeadersLength = r.readVarInt();
268
+ const extensionData = extensionHeadersLength > 0n ? r.readBytesView(Number(extensionHeadersLength)) : new Uint8Array(0);
269
+ const payloadLength = Number(r.readVarInt());
270
+ let payload;
271
+ let objectStatus;
272
+ let payloadByteOffset;
273
+ if (payloadLength === 0) {
274
+ objectStatus = r.readVarInt();
275
+ payloadByteOffset = r.offset;
276
+ payload = new Uint8Array(0);
277
+ } else {
278
+ payloadByteOffset = r.offset;
279
+ payload = r.readBytesView(payloadLength);
280
+ }
281
+ const obj = {
282
+ type: "object",
283
+ byteOffset,
284
+ payloadByteOffset,
285
+ groupId,
286
+ subgroupId,
287
+ objectId,
288
+ publisherPriority,
289
+ extensionHeadersLength,
290
+ extensionData,
291
+ payloadLength,
292
+ payload
293
+ };
294
+ if (objectStatus !== void 0)
295
+ obj.objectStatus = objectStatus;
296
+ objects.push(obj);
297
+ }
298
+ return { ok: true, value: { type: "fetch", requestId, objects }, bytesRead: r.offset };
299
+ } catch (e) {
300
+ if (e instanceof DecodeError) return { ok: false, error: e };
301
+ throw e;
302
+ }
303
+ }
304
+ function decodeDataStream(streamType, bytes) {
305
+ switch (streamType) {
306
+ case "subgroup":
307
+ return decodeSubgroupStream(bytes);
308
+ case "datagram":
309
+ return decodeDatagram(bytes);
310
+ case "fetch":
311
+ return decodeFetchStream(bytes);
312
+ default: {
313
+ const _ = streamType;
314
+ throw new Error(`Unknown: ${_}`);
315
+ }
82
316
  }
83
- return bytes;
84
317
  }
318
+
319
+ // src/drafts/draft11/codec.ts
320
+ var textEncoder = /* @__PURE__ */ new TextEncoder();
321
+ var textDecoder = /* @__PURE__ */ new TextDecoder();
85
322
  function encodeSetupParams(params, w) {
86
323
  let count = 0;
87
324
  if (params.path !== void 0) count++;
@@ -90,7 +327,7 @@ function encodeSetupParams(params, w) {
90
327
  w.writeVarInt(count);
91
328
  if (params.path !== void 0) {
92
329
  w.writeVarInt(SETUP_PARAM_PATH);
93
- const encoded = new TextEncoder().encode(params.path);
330
+ const encoded = textEncoder.encode(params.path);
94
331
  w.writeVarInt(encoded.byteLength);
95
332
  w.writeBytes(encoded);
96
333
  }
@@ -138,7 +375,7 @@ function decodeSetupParams(r) {
138
375
  const length = Number(r.readVarInt());
139
376
  const bytes = r.readBytes(length);
140
377
  if (paramType === SETUP_PARAM_PATH) {
141
- result.path = new TextDecoder().decode(bytes);
378
+ result.path = textDecoder.decode(bytes);
142
379
  } else {
143
380
  unknown.push({ id: `0x${paramType.toString(16)}`, length, raw_hex: bytesToHex(bytes) });
144
381
  }
@@ -158,7 +395,7 @@ function encodeParams(params, w) {
158
395
  const tmpW = new BufferWriter(64);
159
396
  tmpW.writeVarInt(at.alias_type);
160
397
  tmpW.writeVarInt(at.token_type);
161
- const tokenBytes = new TextEncoder().encode(at.token_value);
398
+ const tokenBytes = textEncoder.encode(at.token_value);
162
399
  tmpW.writeBytes(tokenBytes);
163
400
  const raw = tmpW.finish();
164
401
  w.writeVarInt(raw.byteLength);
@@ -215,7 +452,7 @@ function decodeParams(r) {
215
452
  result.authorization_token = {
216
453
  alias_type,
217
454
  token_type,
218
- token_value: new TextDecoder().decode(tokenBytes)
455
+ token_value: textDecoder.decode(tokenBytes)
219
456
  };
220
457
  } else {
221
458
  const bytes = r.readBytes(length);
@@ -673,10 +910,14 @@ function encodeMessage(message) {
673
910
  if (typeId === void 0) throw new Error(`Unknown message type: ${message.type}`);
674
911
  const payloadWriter = new BufferWriter();
675
912
  encodePayload(message, payloadWriter);
676
- const payload = payloadWriter.finish();
677
- const writer = new BufferWriter();
913
+ const payload = payloadWriter.finishView();
914
+ if (payload.byteLength > 65535) {
915
+ throw new Error(`Payload too large for 16-bit length: ${payload.byteLength}`);
916
+ }
917
+ const writer = new BufferWriter(payload.byteLength + 16);
678
918
  writer.writeVarInt(typeId);
679
- writer.writeVarInt(payload.byteLength);
919
+ writer.writeUint8(payload.byteLength >> 8 & 255);
920
+ writer.writeUint8(payload.byteLength & 255);
680
921
  writer.writeBytes(payload);
681
922
  return writer.finish();
682
923
  }
@@ -744,7 +985,9 @@ function decodeMessage(bytes) {
744
985
  try {
745
986
  const reader = new BufferReader(bytes);
746
987
  const typeId = reader.readVarInt();
747
- const payloadLength = Number(reader.readVarInt());
988
+ const lenHi = reader.readUint8();
989
+ const lenLo = reader.readUint8();
990
+ const payloadLength = lenHi << 8 | lenLo;
748
991
  const payloadBytes = reader.readBytes(payloadLength);
749
992
  const payloadReader = new BufferReader(payloadBytes);
750
993
  const decoder = payloadDecoders.get(typeId);
@@ -765,229 +1008,32 @@ function decodeMessage(bytes) {
765
1008
  throw e;
766
1009
  }
767
1010
  }
768
- var FETCH_STREAM_TYPE = 0x05n;
769
- function encodeSubgroupStream(stream) {
770
- const w = new BufferWriter();
771
- const typeId = stream.streamTypeId;
772
- w.writeVarInt(BigInt(typeId));
773
- w.writeVarInt(stream.trackAlias);
774
- w.writeVarInt(stream.groupId);
775
- if (typeId === 12) w.writeVarInt(stream.subgroupId);
776
- w.writeUint8(stream.publisherPriority);
777
- for (const obj of stream.objects) {
778
- w.writeVarInt(obj.objectId);
779
- w.writeVarInt(obj.payloadLength);
780
- if (obj.payloadLength === 0 && obj.status !== void 0) {
781
- w.writeVarInt(obj.status);
782
- } else {
783
- w.writeBytes(obj.payload);
784
- }
785
- }
786
- return w.finish();
787
- }
788
- function encodeDatagram(dg) {
789
- const w = new BufferWriter();
790
- w.writeVarInt(BigInt(dg.streamTypeId));
791
- w.writeVarInt(dg.trackAlias);
792
- w.writeVarInt(dg.groupId);
793
- w.writeVarInt(dg.objectId);
794
- w.writeUint8(dg.publisherPriority);
795
- if (dg.streamTypeId === 2) {
796
- w.writeVarInt(dg.objectStatus ?? 0n);
797
- } else {
798
- w.writeBytes(dg.payload);
799
- }
800
- return w.finish();
801
- }
802
- function encodeFetchStream(stream) {
803
- const w = new BufferWriter();
804
- w.writeVarInt(FETCH_STREAM_TYPE);
805
- w.writeVarInt(stream.requestId);
806
- for (const obj of stream.objects) {
807
- w.writeVarInt(obj.groupId);
808
- w.writeVarInt(obj.subgroupId);
809
- w.writeVarInt(obj.objectId);
810
- w.writeUint8(obj.publisherPriority);
811
- w.writeVarInt(obj.extensionHeadersLength);
812
- w.writeVarInt(obj.payloadLength);
813
- w.writeBytes(obj.payload);
814
- }
815
- return w.finish();
816
- }
817
- function decodeSubgroupStream(bytes) {
818
- try {
819
- const r = new BufferReader(bytes);
820
- const streamTypeId = Number(r.readVarInt());
821
- if (streamTypeId !== 8 && streamTypeId !== 12) {
822
- return {
823
- ok: false,
824
- error: new DecodeError(
825
- "CONSTRAINT_VIOLATION",
826
- `Expected subgroup type 0x08 or 0x0C, got 0x${streamTypeId.toString(16)}`,
827
- 0
828
- )
829
- };
830
- }
831
- const trackAlias = r.readVarInt();
832
- const groupId = r.readVarInt();
833
- let subgroupId = 0n;
834
- if (streamTypeId === 12) subgroupId = r.readVarInt();
835
- const publisherPriority = r.readUint8();
836
- const objects = [];
837
- while (r.remaining > 0) {
838
- const objectId = r.readVarInt();
839
- const payloadLength = Number(r.readVarInt());
840
- let payload;
841
- let status;
842
- if (payloadLength === 0) {
843
- status = r.readVarInt();
844
- payload = new Uint8Array(0);
845
- } else {
846
- payload = r.readBytes(payloadLength);
847
- }
848
- const obj = { type: "object", objectId, payloadLength, payload };
849
- if (status !== void 0) obj.status = status;
850
- objects.push(obj);
851
- }
852
- return {
853
- ok: true,
854
- value: {
855
- type: "subgroup",
856
- streamTypeId,
857
- trackAlias,
858
- groupId,
859
- subgroupId,
860
- publisherPriority,
861
- objects
862
- },
863
- bytesRead: r.offset
864
- };
865
- } catch (e) {
866
- if (e instanceof DecodeError) return { ok: false, error: e };
867
- throw e;
868
- }
869
- }
870
- function decodeDatagram(bytes) {
871
- try {
872
- const r = new BufferReader(bytes);
873
- const streamTypeId = Number(r.readVarInt());
874
- if (streamTypeId !== 0 && streamTypeId !== 2) {
875
- return {
876
- ok: false,
877
- error: new DecodeError(
878
- "CONSTRAINT_VIOLATION",
879
- `Expected datagram type 0x00 or 0x02, got 0x${streamTypeId.toString(16)}`,
880
- 0
881
- )
882
- };
883
- }
884
- const trackAlias = r.readVarInt();
885
- const groupId = r.readVarInt();
886
- const objectId = r.readVarInt();
887
- const publisherPriority = r.readUint8();
888
- let objectStatus;
889
- let payload;
890
- if (streamTypeId === 2) {
891
- objectStatus = r.readVarInt();
892
- payload = new Uint8Array(0);
893
- } else {
894
- payload = r.readBytes(r.remaining);
895
- }
896
- const result = {
897
- type: "datagram",
898
- streamTypeId,
899
- trackAlias,
900
- groupId,
901
- objectId,
902
- publisherPriority,
903
- payloadLength: payload.byteLength,
904
- payload
905
- };
906
- if (objectStatus !== void 0)
907
- result.objectStatus = objectStatus;
908
- return { ok: true, value: result, bytesRead: r.offset };
909
- } catch (e) {
910
- if (e instanceof DecodeError) return { ok: false, error: e };
911
- throw e;
912
- }
913
- }
914
- function decodeFetchStream(bytes) {
915
- try {
916
- const r = new BufferReader(bytes);
917
- const streamType = r.readVarInt();
918
- if (streamType !== FETCH_STREAM_TYPE) {
919
- return {
920
- ok: false,
921
- error: new DecodeError(
922
- "CONSTRAINT_VIOLATION",
923
- `Expected fetch type 0x05, got 0x${streamType.toString(16)}`,
924
- 0
925
- )
926
- };
927
- }
928
- const requestId = r.readVarInt();
929
- const objects = [];
930
- while (r.remaining > 0) {
931
- const groupId = r.readVarInt();
932
- const subgroupId = r.readVarInt();
933
- const objectId = r.readVarInt();
934
- const publisherPriority = r.readUint8();
935
- const extensionHeadersLength = r.readVarInt();
936
- if (extensionHeadersLength > 0n) r.readBytes(Number(extensionHeadersLength));
937
- const payloadLength = Number(r.readVarInt());
938
- const payload = payloadLength > 0 ? r.readBytes(payloadLength) : new Uint8Array(0);
939
- objects.push({
940
- type: "object",
941
- groupId,
942
- subgroupId,
943
- objectId,
944
- publisherPriority,
945
- extensionHeadersLength,
946
- payloadLength,
947
- payload
948
- });
949
- }
950
- return { ok: true, value: { type: "fetch", requestId, objects }, bytesRead: r.offset };
951
- } catch (e) {
952
- if (e instanceof DecodeError) return { ok: false, error: e };
953
- throw e;
954
- }
955
- }
956
- function decodeDataStream(streamType, bytes) {
957
- switch (streamType) {
958
- case "subgroup":
959
- return decodeSubgroupStream(bytes);
960
- case "datagram":
961
- return decodeDatagram(bytes);
962
- case "fetch":
963
- return decodeFetchStream(bytes);
964
- default: {
965
- const _ = streamType;
966
- throw new Error(`Unknown: ${_}`);
967
- }
968
- }
969
- }
970
1011
  function createStreamDecoder() {
971
1012
  let buffer = new Uint8Array(0);
1013
+ let offset = 0;
972
1014
  return new TransformStream({
973
1015
  transform(chunk, controller) {
1016
+ if (offset > 0) {
1017
+ buffer = buffer.subarray(offset);
1018
+ offset = 0;
1019
+ }
974
1020
  const newBuffer = new Uint8Array(buffer.length + chunk.length);
975
1021
  newBuffer.set(buffer, 0);
976
1022
  newBuffer.set(chunk, buffer.length);
977
1023
  buffer = newBuffer;
978
- while (buffer.length > 0) {
979
- const result = decodeMessage(buffer);
1024
+ while (offset < buffer.length) {
1025
+ const result = decodeMessage(buffer.subarray(offset));
980
1026
  if (!result.ok) {
981
1027
  if (result.error.code === "UNEXPECTED_END") break;
982
1028
  controller.error(result.error);
983
1029
  return;
984
1030
  }
985
1031
  controller.enqueue(result.value);
986
- buffer = buffer.slice(result.bytesRead);
1032
+ offset += result.bytesRead;
987
1033
  }
988
1034
  },
989
1035
  flush(controller) {
990
- if (buffer.length > 0)
1036
+ if (offset < buffer.length)
991
1037
  controller.error(new DecodeError("UNEXPECTED_END", "Stream ended with incomplete data", 0));
992
1038
  }
993
1039
  });
@@ -1041,8 +1087,6 @@ export {
1041
1087
  PARAM_DELIVERY_TIMEOUT,
1042
1088
  MESSAGE_TYPE_MAP,
1043
1089
  MESSAGE_ID_MAP,
1044
- encodeMessage,
1045
- decodeMessage,
1046
1090
  encodeSubgroupStream,
1047
1091
  encodeDatagram,
1048
1092
  encodeFetchStream,
@@ -1050,6 +1094,8 @@ export {
1050
1094
  decodeDatagram,
1051
1095
  decodeFetchStream,
1052
1096
  decodeDataStream,
1097
+ encodeMessage,
1098
+ decodeMessage,
1053
1099
  createStreamDecoder,
1054
1100
  createDraft11Codec
1055
1101
  };