@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,4 +1,6 @@
1
- export type { Draft14Codec } from "./codec.js";
1
+ export const DRAFT_VERSION = 0xff00000en
2
+
3
+ export type { Draft14Codec } from './codec.js'
2
4
  export {
3
5
  createDataStreamDecoder,
4
6
  createDraft14Codec,
@@ -14,7 +16,7 @@ export {
14
16
  encodeFetchStream,
15
17
  encodeMessage,
16
18
  encodeSubgroupStream,
17
- } from "./codec.js";
19
+ } from './codec.js'
18
20
  export {
19
21
  MESSAGE_ID_MAP,
20
22
  MESSAGE_TYPE_MAP,
@@ -51,7 +53,7 @@ export {
51
53
  PARAM_MAX_REQUEST_ID,
52
54
  PARAM_PATH,
53
55
  PARAM_ROLE,
54
- } from "./messages.js";
56
+ } from './messages.js'
55
57
  export {
56
58
  BIDIRECTIONAL_MESSAGES,
57
59
  CLIENT_ONLY_MESSAGES,
@@ -59,7 +61,7 @@ export {
59
61
  getLegalIncoming,
60
62
  getLegalOutgoing,
61
63
  SERVER_ONLY_MESSAGES,
62
- } from "./rules.js";
64
+ } from './rules.js'
63
65
  export type {
64
66
  FetchPhase,
65
67
  FetchState,
@@ -69,17 +71,17 @@ export type {
69
71
  PublishState,
70
72
  SessionPhase,
71
73
  SessionState,
72
- SessionStateOptions,
73
74
  SideEffect,
74
75
  SubscriptionPhase,
75
76
  SubscriptionState,
76
77
  TransitionResult,
77
78
  ValidationResult,
78
- } from "./session.js";
79
+ } from './session.js'
80
+ export { createDraft14SessionState } from './session.js'
79
81
  // Session state machine
80
- export { createDraft14SessionState } from "./session.js";
81
- export { Draft14SessionFSM } from "./session-fsm.js";
82
+ export { Draft14SessionFSM } from './session-fsm.js'
82
83
  export type {
84
+ AuthorizationToken,
83
85
  DatagramObject,
84
86
  DataStreamEvent,
85
87
  DataStreamHeader,
@@ -118,10 +120,16 @@ export type {
118
120
  Draft14TrackStatusOk,
119
121
  Draft14Unsubscribe,
120
122
  Draft14UnsubscribeNamespace,
123
+ FetchObjectPayload,
121
124
  FetchStream,
122
125
  FetchStreamHeader,
126
+ FetchTypeValue,
127
+ FilterTypeValue,
128
+ GroupOrderValue,
129
+ Location,
123
130
  ObjectPayload,
124
131
  SubgroupStream,
125
132
  SubgroupStreamHeader,
126
133
  UnknownParam,
127
- } from "./types.js";
134
+ } from './types.js'
135
+ export { FetchType, FilterType, GroupOrder } from './types.js'
@@ -1,76 +1,76 @@
1
1
  // Draft-14 message type wire IDs
2
2
 
3
- export const MSG_SUBSCRIBE_UPDATE = 0x02n;
4
- export const MSG_SUBSCRIBE = 0x03n;
5
- export const MSG_SUBSCRIBE_OK = 0x04n;
6
- export const MSG_SUBSCRIBE_ERROR = 0x05n;
7
- export const MSG_PUBLISH_NAMESPACE = 0x06n;
8
- export const MSG_PUBLISH_NAMESPACE_OK = 0x07n;
9
- export const MSG_PUBLISH_NAMESPACE_ERROR = 0x08n;
10
- export const MSG_PUBLISH_NAMESPACE_DONE = 0x09n;
11
- export const MSG_UNSUBSCRIBE = 0x0an;
12
- export const MSG_PUBLISH_DONE = 0x0bn;
13
- export const MSG_PUBLISH_NAMESPACE_CANCEL = 0x0cn;
14
- export const MSG_TRACK_STATUS = 0x0dn;
15
- export const MSG_TRACK_STATUS_OK = 0x0en;
16
- export const MSG_TRACK_STATUS_ERROR = 0x0fn;
17
- export const MSG_GOAWAY = 0x10n;
18
- export const MSG_SUBSCRIBE_NAMESPACE = 0x11n;
19
- export const MSG_SUBSCRIBE_NAMESPACE_OK = 0x12n;
20
- export const MSG_SUBSCRIBE_NAMESPACE_ERROR = 0x13n;
21
- export const MSG_UNSUBSCRIBE_NAMESPACE = 0x14n;
22
- export const MSG_MAX_REQUEST_ID = 0x15n;
23
- export const MSG_FETCH = 0x16n;
24
- export const MSG_FETCH_CANCEL = 0x17n;
25
- export const MSG_FETCH_OK = 0x18n;
26
- export const MSG_FETCH_ERROR = 0x19n;
27
- export const MSG_REQUESTS_BLOCKED = 0x1an;
28
- export const MSG_PUBLISH = 0x1dn;
29
- export const MSG_PUBLISH_OK = 0x1en;
30
- export const MSG_PUBLISH_ERROR = 0x1fn;
31
- export const MSG_CLIENT_SETUP = 0x20n;
32
- export const MSG_SERVER_SETUP = 0x21n;
3
+ export const MSG_SUBSCRIBE_UPDATE = 0x02n
4
+ export const MSG_SUBSCRIBE = 0x03n
5
+ export const MSG_SUBSCRIBE_OK = 0x04n
6
+ export const MSG_SUBSCRIBE_ERROR = 0x05n
7
+ export const MSG_PUBLISH_NAMESPACE = 0x06n
8
+ export const MSG_PUBLISH_NAMESPACE_OK = 0x07n
9
+ export const MSG_PUBLISH_NAMESPACE_ERROR = 0x08n
10
+ export const MSG_PUBLISH_NAMESPACE_DONE = 0x09n
11
+ export const MSG_UNSUBSCRIBE = 0x0an
12
+ export const MSG_PUBLISH_DONE = 0x0bn
13
+ export const MSG_PUBLISH_NAMESPACE_CANCEL = 0x0cn
14
+ export const MSG_TRACK_STATUS = 0x0dn
15
+ export const MSG_TRACK_STATUS_OK = 0x0en
16
+ export const MSG_TRACK_STATUS_ERROR = 0x0fn
17
+ export const MSG_GOAWAY = 0x10n
18
+ export const MSG_SUBSCRIBE_NAMESPACE = 0x11n
19
+ export const MSG_SUBSCRIBE_NAMESPACE_OK = 0x12n
20
+ export const MSG_SUBSCRIBE_NAMESPACE_ERROR = 0x13n
21
+ export const MSG_UNSUBSCRIBE_NAMESPACE = 0x14n
22
+ export const MSG_MAX_REQUEST_ID = 0x15n
23
+ export const MSG_FETCH = 0x16n
24
+ export const MSG_FETCH_CANCEL = 0x17n
25
+ export const MSG_FETCH_OK = 0x18n
26
+ export const MSG_FETCH_ERROR = 0x19n
27
+ export const MSG_REQUESTS_BLOCKED = 0x1an
28
+ export const MSG_PUBLISH = 0x1dn
29
+ export const MSG_PUBLISH_OK = 0x1en
30
+ export const MSG_PUBLISH_ERROR = 0x1fn
31
+ export const MSG_CLIENT_SETUP = 0x20n
32
+ export const MSG_SERVER_SETUP = 0x21n
33
33
 
34
34
  // Parameter type IDs
35
- export const PARAM_ROLE = 0x00n;
36
- export const PARAM_PATH = 0x01n;
37
- export const PARAM_MAX_REQUEST_ID = 0x02n;
35
+ export const PARAM_ROLE = 0x00n
36
+ export const PARAM_PATH = 0x01n
37
+ export const PARAM_MAX_REQUEST_ID = 0x02n
38
38
 
39
39
  // Map from wire ID to message type name
40
40
  export const MESSAGE_TYPE_MAP: ReadonlyMap<bigint, string> = new Map([
41
- [MSG_CLIENT_SETUP, "client_setup"],
42
- [MSG_SERVER_SETUP, "server_setup"],
43
- [MSG_SUBSCRIBE, "subscribe"],
44
- [MSG_SUBSCRIBE_OK, "subscribe_ok"],
45
- [MSG_SUBSCRIBE_UPDATE, "subscribe_update"],
46
- [MSG_SUBSCRIBE_ERROR, "subscribe_error"],
47
- [MSG_UNSUBSCRIBE, "unsubscribe"],
48
- [MSG_PUBLISH, "publish"],
49
- [MSG_PUBLISH_OK, "publish_ok"],
50
- [MSG_PUBLISH_ERROR, "publish_error"],
51
- [MSG_PUBLISH_DONE, "publish_done"],
52
- [MSG_PUBLISH_NAMESPACE, "publish_namespace"],
53
- [MSG_PUBLISH_NAMESPACE_OK, "publish_namespace_ok"],
54
- [MSG_PUBLISH_NAMESPACE_ERROR, "publish_namespace_error"],
55
- [MSG_PUBLISH_NAMESPACE_DONE, "publish_namespace_done"],
56
- [MSG_PUBLISH_NAMESPACE_CANCEL, "publish_namespace_cancel"],
57
- [MSG_SUBSCRIBE_NAMESPACE, "subscribe_namespace"],
58
- [MSG_SUBSCRIBE_NAMESPACE_OK, "subscribe_namespace_ok"],
59
- [MSG_SUBSCRIBE_NAMESPACE_ERROR, "subscribe_namespace_error"],
60
- [MSG_UNSUBSCRIBE_NAMESPACE, "unsubscribe_namespace"],
61
- [MSG_FETCH, "fetch"],
62
- [MSG_FETCH_OK, "fetch_ok"],
63
- [MSG_FETCH_ERROR, "fetch_error"],
64
- [MSG_FETCH_CANCEL, "fetch_cancel"],
65
- [MSG_TRACK_STATUS, "track_status"],
66
- [MSG_TRACK_STATUS_OK, "track_status_ok"],
67
- [MSG_TRACK_STATUS_ERROR, "track_status_error"],
68
- [MSG_GOAWAY, "goaway"],
69
- [MSG_MAX_REQUEST_ID, "max_request_id"],
70
- [MSG_REQUESTS_BLOCKED, "requests_blocked"],
71
- ]);
41
+ [MSG_CLIENT_SETUP, 'client_setup'],
42
+ [MSG_SERVER_SETUP, 'server_setup'],
43
+ [MSG_SUBSCRIBE, 'subscribe'],
44
+ [MSG_SUBSCRIBE_OK, 'subscribe_ok'],
45
+ [MSG_SUBSCRIBE_UPDATE, 'subscribe_update'],
46
+ [MSG_SUBSCRIBE_ERROR, 'subscribe_error'],
47
+ [MSG_UNSUBSCRIBE, 'unsubscribe'],
48
+ [MSG_PUBLISH, 'publish'],
49
+ [MSG_PUBLISH_OK, 'publish_ok'],
50
+ [MSG_PUBLISH_ERROR, 'publish_error'],
51
+ [MSG_PUBLISH_DONE, 'publish_done'],
52
+ [MSG_PUBLISH_NAMESPACE, 'publish_namespace'],
53
+ [MSG_PUBLISH_NAMESPACE_OK, 'publish_namespace_ok'],
54
+ [MSG_PUBLISH_NAMESPACE_ERROR, 'publish_namespace_error'],
55
+ [MSG_PUBLISH_NAMESPACE_DONE, 'publish_namespace_done'],
56
+ [MSG_PUBLISH_NAMESPACE_CANCEL, 'publish_namespace_cancel'],
57
+ [MSG_SUBSCRIBE_NAMESPACE, 'subscribe_namespace'],
58
+ [MSG_SUBSCRIBE_NAMESPACE_OK, 'subscribe_namespace_ok'],
59
+ [MSG_SUBSCRIBE_NAMESPACE_ERROR, 'subscribe_namespace_error'],
60
+ [MSG_UNSUBSCRIBE_NAMESPACE, 'unsubscribe_namespace'],
61
+ [MSG_FETCH, 'fetch'],
62
+ [MSG_FETCH_OK, 'fetch_ok'],
63
+ [MSG_FETCH_ERROR, 'fetch_error'],
64
+ [MSG_FETCH_CANCEL, 'fetch_cancel'],
65
+ [MSG_TRACK_STATUS, 'track_status'],
66
+ [MSG_TRACK_STATUS_OK, 'track_status_ok'],
67
+ [MSG_TRACK_STATUS_ERROR, 'track_status_error'],
68
+ [MSG_GOAWAY, 'goaway'],
69
+ [MSG_MAX_REQUEST_ID, 'max_request_id'],
70
+ [MSG_REQUESTS_BLOCKED, 'requests_blocked'],
71
+ ])
72
72
 
73
73
  // Reverse map from message type name to wire ID
74
74
  export const MESSAGE_ID_MAP: ReadonlyMap<string, bigint> = new Map(
75
75
  [...MESSAGE_TYPE_MAP.entries()].map(([id, name]) => [name, id]),
76
- );
76
+ )
@@ -1,113 +1,113 @@
1
- import type { Draft14MessageType } from "./types.js";
1
+ import type { Draft14MessageType } from './types.js'
2
2
 
3
3
  // All draft-14 control messages
4
4
  export const CONTROL_MESSAGES: ReadonlySet<Draft14MessageType> = new Set([
5
- "client_setup",
6
- "server_setup",
7
- "subscribe",
8
- "subscribe_ok",
9
- "subscribe_update",
10
- "subscribe_error",
11
- "unsubscribe",
12
- "publish",
13
- "publish_ok",
14
- "publish_error",
15
- "publish_done",
16
- "publish_namespace",
17
- "publish_namespace_ok",
18
- "publish_namespace_error",
19
- "publish_namespace_done",
20
- "publish_namespace_cancel",
21
- "subscribe_namespace",
22
- "subscribe_namespace_ok",
23
- "subscribe_namespace_error",
24
- "unsubscribe_namespace",
25
- "fetch",
26
- "fetch_ok",
27
- "fetch_error",
28
- "fetch_cancel",
29
- "track_status",
30
- "track_status_ok",
31
- "track_status_error",
32
- "goaway",
33
- "max_request_id",
34
- "requests_blocked",
35
- ]);
5
+ 'client_setup',
6
+ 'server_setup',
7
+ 'subscribe',
8
+ 'subscribe_ok',
9
+ 'subscribe_update',
10
+ 'subscribe_error',
11
+ 'unsubscribe',
12
+ 'publish',
13
+ 'publish_ok',
14
+ 'publish_error',
15
+ 'publish_done',
16
+ 'publish_namespace',
17
+ 'publish_namespace_ok',
18
+ 'publish_namespace_error',
19
+ 'publish_namespace_done',
20
+ 'publish_namespace_cancel',
21
+ 'subscribe_namespace',
22
+ 'subscribe_namespace_ok',
23
+ 'subscribe_namespace_error',
24
+ 'unsubscribe_namespace',
25
+ 'fetch',
26
+ 'fetch_ok',
27
+ 'fetch_error',
28
+ 'fetch_cancel',
29
+ 'track_status',
30
+ 'track_status_ok',
31
+ 'track_status_error',
32
+ 'goaway',
33
+ 'max_request_id',
34
+ 'requests_blocked',
35
+ ])
36
36
 
37
37
  // Draft-14 is more symmetric: only setup messages are role-restricted.
38
38
  // All other messages can be sent by both client and server.
39
- export const CLIENT_ONLY_MESSAGES: ReadonlySet<Draft14MessageType> = new Set(["client_setup"]);
39
+ export const CLIENT_ONLY_MESSAGES: ReadonlySet<Draft14MessageType> = new Set(['client_setup'])
40
40
 
41
- export const SERVER_ONLY_MESSAGES: ReadonlySet<Draft14MessageType> = new Set(["server_setup"]);
41
+ export const SERVER_ONLY_MESSAGES: ReadonlySet<Draft14MessageType> = new Set(['server_setup'])
42
42
 
43
43
  // Messages that are bidirectional (both client and server can send)
44
44
  export const BIDIRECTIONAL_MESSAGES: ReadonlySet<Draft14MessageType> = new Set([
45
- "subscribe",
46
- "subscribe_ok",
47
- "subscribe_update",
48
- "subscribe_error",
49
- "unsubscribe",
50
- "publish",
51
- "publish_ok",
52
- "publish_error",
53
- "publish_done",
54
- "publish_namespace",
55
- "publish_namespace_ok",
56
- "publish_namespace_error",
57
- "publish_namespace_done",
58
- "publish_namespace_cancel",
59
- "subscribe_namespace",
60
- "subscribe_namespace_ok",
61
- "subscribe_namespace_error",
62
- "unsubscribe_namespace",
63
- "fetch",
64
- "fetch_ok",
65
- "fetch_error",
66
- "fetch_cancel",
67
- "track_status",
68
- "track_status_ok",
69
- "track_status_error",
70
- "goaway",
71
- "max_request_id",
72
- "requests_blocked",
73
- ]);
45
+ 'subscribe',
46
+ 'subscribe_ok',
47
+ 'subscribe_update',
48
+ 'subscribe_error',
49
+ 'unsubscribe',
50
+ 'publish',
51
+ 'publish_ok',
52
+ 'publish_error',
53
+ 'publish_done',
54
+ 'publish_namespace',
55
+ 'publish_namespace_ok',
56
+ 'publish_namespace_error',
57
+ 'publish_namespace_done',
58
+ 'publish_namespace_cancel',
59
+ 'subscribe_namespace',
60
+ 'subscribe_namespace_ok',
61
+ 'subscribe_namespace_error',
62
+ 'unsubscribe_namespace',
63
+ 'fetch',
64
+ 'fetch_ok',
65
+ 'fetch_error',
66
+ 'fetch_cancel',
67
+ 'track_status',
68
+ 'track_status_ok',
69
+ 'track_status_error',
70
+ 'goaway',
71
+ 'max_request_id',
72
+ 'requests_blocked',
73
+ ])
74
74
 
75
75
  // Messages legal in each session phase -- for outbound validation
76
76
  export function getLegalOutgoing(
77
77
  phase: string,
78
- role: "client" | "server",
78
+ role: 'client' | 'server',
79
79
  ): Set<Draft14MessageType> {
80
- const legal = new Set<Draft14MessageType>();
80
+ const legal = new Set<Draft14MessageType>()
81
81
 
82
82
  switch (phase) {
83
- case "idle":
84
- if (role === "client") legal.add("client_setup");
85
- break;
86
- case "setup":
87
- if (role === "server") legal.add("server_setup");
88
- break;
89
- case "ready": {
83
+ case 'idle':
84
+ if (role === 'client') legal.add('client_setup')
85
+ break
86
+ case 'setup':
87
+ if (role === 'server') legal.add('server_setup')
88
+ break
89
+ case 'ready': {
90
90
  // Both roles can send goaway
91
- legal.add("goaway");
91
+ legal.add('goaway')
92
92
  // All bidirectional messages are legal for both roles
93
93
  for (const msg of BIDIRECTIONAL_MESSAGES) {
94
- legal.add(msg);
94
+ legal.add(msg)
95
95
  }
96
- break;
96
+ break
97
97
  }
98
- case "draining":
98
+ case 'draining':
99
99
  // Limited set during draining - can still finish active operations
100
- break;
100
+ break
101
101
  }
102
102
 
103
- return legal;
103
+ return legal
104
104
  }
105
105
 
106
106
  export function getLegalIncoming(
107
107
  phase: string,
108
- role: "client" | "server",
108
+ role: 'client' | 'server',
109
109
  ): Set<Draft14MessageType> {
110
110
  // Incoming from remote = the other role's outgoing
111
- const remoteRole = role === "client" ? "server" : "client";
112
- return getLegalOutgoing(phase, remoteRole);
111
+ const remoteRole = role === 'client' ? 'server' : 'client'
112
+ return getLegalOutgoing(phase, remoteRole)
113
113
  }