@moqtap/codec 0.1.0 → 0.2.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 (277) hide show
  1. package/README.md +99 -95
  2. package/dist/chunk-4RIXXEII.js +1275 -0
  3. package/dist/chunk-4XYGE53S.cjs +698 -0
  4. package/dist/chunk-4YJANAXU.cjs +1109 -0
  5. package/dist/chunk-6AEHWULA.cjs +641 -0
  6. package/dist/chunk-7DUBLRXC.js +680 -0
  7. package/dist/{chunk-WNTXF3DE.cjs → chunk-7IVGHMKJ.cjs} +164 -62
  8. package/dist/{chunk-YBSEOSSP.js → chunk-A27S7HW7.js} +5 -1
  9. package/dist/chunk-BISI45MN.cjs +680 -0
  10. package/dist/{chunk-3BSZ55L3.cjs → chunk-BPNL5YFQ.cjs} +158 -24
  11. package/dist/chunk-CXDHOMHG.js +1097 -0
  12. package/dist/chunk-DUBCL3WF.cjs +749 -0
  13. package/dist/chunk-DWK5ZQZ4.js +642 -0
  14. package/dist/chunk-E6E3NQYU.js +680 -0
  15. package/dist/chunk-EFM5T7OM.js +698 -0
  16. package/dist/chunk-ENURAVHI.cjs +680 -0
  17. package/dist/{chunk-5WFXFLL4.cjs → chunk-FUFTMAQD.cjs} +96 -63
  18. package/dist/{chunk-2NARXGVA.cjs → chunk-FWISIR26.cjs} +5 -1
  19. package/dist/{chunk-YPXLV5YK.js → chunk-FXZ2MYKJ.js} +376 -38
  20. package/dist/chunk-G26SJ6XS.cjs +1341 -0
  21. package/dist/chunk-G7GI7LJA.js +737 -0
  22. package/dist/chunk-GXEW4COZ.cjs +737 -0
  23. package/dist/chunk-HSVYF6XX.cjs +1361 -0
  24. package/dist/chunk-IBVM4DMJ.cjs +1097 -0
  25. package/dist/chunk-IV2H5CFI.cjs +1275 -0
  26. package/dist/chunk-IV2HRJVT.js +1198 -0
  27. package/dist/chunk-JSQM2MG3.js +680 -0
  28. package/dist/chunk-K4OLITS2.cjs +1055 -0
  29. package/dist/{chunk-UOBWHJA5.js → chunk-KFTCU2P6.js} +2 -3
  30. package/dist/chunk-LH4NTURO.js +1361 -0
  31. package/dist/{chunk-DC4L6ZIT.js → chunk-MFAP7R6L.js} +154 -20
  32. package/dist/chunk-NGVE2RZT.js +1097 -0
  33. package/dist/chunk-NUX5BHWO.js +1341 -0
  34. package/dist/chunk-PJRA2TQ5.js +1055 -0
  35. package/dist/chunk-RVJAGE4S.cjs +1198 -0
  36. package/dist/{chunk-QYG6KGOV.cjs → chunk-RWQ43Z4F.cjs} +2 -3
  37. package/dist/chunk-RZHAPEXO.js +749 -0
  38. package/dist/chunk-ST24APEO.js +1109 -0
  39. package/dist/chunk-SYHW3FLI.cjs +642 -0
  40. package/dist/chunk-TLYNOOQP.cjs +432 -0
  41. package/dist/{chunk-23YG7F46.js → chunk-TMNGRIPL.js} +153 -51
  42. package/dist/{chunk-IQPDRQVC.js → chunk-U2B3B42P.js} +62 -29
  43. package/dist/chunk-UNS34PTA.cjs +680 -0
  44. package/dist/chunk-UR6JKS56.js +432 -0
  45. package/dist/{chunk-GDRGWFEK.cjs → chunk-UYXTY6ZQ.cjs} +376 -38
  46. package/dist/chunk-XUUCOLWU.cjs +1097 -0
  47. package/dist/chunk-YG5KJESI.js +641 -0
  48. package/dist/chunk-ZBKE2QRQ.js +1401 -0
  49. package/dist/chunk-ZSPO2GF2.cjs +1401 -0
  50. package/dist/codec-95k8CAu5.d.cts +35 -0
  51. package/dist/codec-AFuOxfsO.d.ts +60 -0
  52. package/dist/codec-B-UJ5Iow.d.cts +75 -0
  53. package/dist/codec-BC5jfvMb.d.ts +35 -0
  54. package/dist/codec-BECYPfY8.d.ts +35 -0
  55. package/dist/codec-BsPU1vNC.d.ts +39 -0
  56. package/dist/codec-BvpuF-6u.d.cts +39 -0
  57. package/dist/codec-C8jZI5Cx.d.cts +39 -0
  58. package/dist/codec-CAevkgf5.d.cts +33 -0
  59. package/dist/codec-CSUqCrRs.d.ts +39 -0
  60. package/dist/codec-C_HMXNK_.d.ts +33 -0
  61. package/dist/{codec-CTvFtQQI.d.cts → codec-CpuvYTSV.d.cts} +5 -5
  62. package/dist/codec-D0x8-SCw.d.cts +35 -0
  63. package/dist/codec-D7ARhpG1.d.ts +75 -0
  64. package/dist/codec-DNAUGshO.d.cts +60 -0
  65. package/dist/codec-DPx_QNn0.d.ts +31 -0
  66. package/dist/{codec-qPzfmLNu.d.ts → codec-DRhCx_hw.d.ts} +5 -5
  67. package/dist/codec-Db7YPe3l.d.ts +31 -0
  68. package/dist/codec-axkJpb7D.d.cts +31 -0
  69. package/dist/codec-ujAbFaep.d.cts +31 -0
  70. package/dist/draft10-session.cjs +6 -0
  71. package/dist/draft10-session.d.cts +8 -0
  72. package/dist/draft10-session.d.ts +8 -0
  73. package/dist/draft10-session.js +6 -0
  74. package/dist/draft10.cjs +115 -0
  75. package/dist/draft10.d.cts +95 -0
  76. package/dist/draft10.d.ts +95 -0
  77. package/dist/draft10.js +115 -0
  78. package/dist/draft11-session.cjs +6 -0
  79. package/dist/draft11-session.d.cts +8 -0
  80. package/dist/draft11-session.d.ts +8 -0
  81. package/dist/draft11-session.js +6 -0
  82. package/dist/draft11.cjs +109 -0
  83. package/dist/draft11.d.cts +99 -0
  84. package/dist/draft11.d.ts +99 -0
  85. package/dist/draft11.js +109 -0
  86. package/dist/draft12-session.cjs +6 -0
  87. package/dist/draft12-session.d.cts +8 -0
  88. package/dist/draft12-session.d.ts +8 -0
  89. package/dist/draft12-session.js +6 -0
  90. package/dist/draft12.cjs +117 -0
  91. package/dist/draft12.d.cts +106 -0
  92. package/dist/draft12.d.ts +106 -0
  93. package/dist/draft12.js +117 -0
  94. package/dist/draft13-session.cjs +6 -0
  95. package/dist/draft13-session.d.cts +8 -0
  96. package/dist/draft13-session.d.ts +8 -0
  97. package/dist/draft13-session.js +6 -0
  98. package/dist/draft13.cjs +119 -0
  99. package/dist/draft13.d.cts +108 -0
  100. package/dist/draft13.d.ts +108 -0
  101. package/dist/draft13.js +119 -0
  102. package/dist/draft14-session.cjs +2 -2
  103. package/dist/draft14-session.d.cts +4 -4
  104. package/dist/draft14-session.d.ts +4 -4
  105. package/dist/draft14-session.js +1 -1
  106. package/dist/draft14.cjs +4 -4
  107. package/dist/draft14.d.cts +27 -15
  108. package/dist/draft14.d.ts +27 -15
  109. package/dist/draft14.js +3 -3
  110. package/dist/draft15-session.cjs +6 -0
  111. package/dist/draft15-session.d.cts +8 -0
  112. package/dist/draft15-session.d.ts +8 -0
  113. package/dist/draft15-session.js +6 -0
  114. package/dist/draft15.cjs +111 -0
  115. package/dist/draft15.d.cts +93 -0
  116. package/dist/draft15.d.ts +93 -0
  117. package/dist/draft15.js +111 -0
  118. package/dist/draft16-session.cjs +6 -0
  119. package/dist/draft16-session.d.cts +8 -0
  120. package/dist/draft16-session.d.ts +8 -0
  121. package/dist/draft16-session.js +6 -0
  122. package/dist/draft16.cjs +113 -0
  123. package/dist/draft16.d.cts +94 -0
  124. package/dist/draft16.d.ts +94 -0
  125. package/dist/draft16.js +113 -0
  126. package/dist/draft17-session.cjs +8 -0
  127. package/dist/draft17-session.d.cts +51 -0
  128. package/dist/draft17-session.d.ts +51 -0
  129. package/dist/draft17-session.js +8 -0
  130. package/dist/draft17.cjs +99 -0
  131. package/dist/draft17.d.cts +40 -0
  132. package/dist/draft17.d.ts +40 -0
  133. package/dist/draft17.js +99 -0
  134. package/dist/draft7-session.cjs +3 -3
  135. package/dist/draft7-session.d.cts +3 -3
  136. package/dist/draft7-session.d.ts +3 -3
  137. package/dist/draft7-session.js +2 -2
  138. package/dist/draft7.cjs +6 -6
  139. package/dist/draft7.d.cts +10 -10
  140. package/dist/draft7.d.ts +10 -10
  141. package/dist/draft7.js +3 -3
  142. package/dist/draft8-session.cjs +6 -0
  143. package/dist/draft8-session.d.cts +8 -0
  144. package/dist/draft8-session.d.ts +8 -0
  145. package/dist/draft8-session.js +6 -0
  146. package/dist/draft8.cjs +115 -0
  147. package/dist/draft8.d.cts +95 -0
  148. package/dist/draft8.d.ts +95 -0
  149. package/dist/draft8.js +115 -0
  150. package/dist/draft9-session.cjs +6 -0
  151. package/dist/draft9-session.d.cts +8 -0
  152. package/dist/draft9-session.d.ts +8 -0
  153. package/dist/draft9-session.js +6 -0
  154. package/dist/draft9.cjs +115 -0
  155. package/dist/draft9.d.cts +95 -0
  156. package/dist/draft9.d.ts +95 -0
  157. package/dist/draft9.js +115 -0
  158. package/dist/index.cjs +79 -7
  159. package/dist/index.d.cts +71 -8
  160. package/dist/index.d.ts +71 -8
  161. package/dist/index.js +77 -5
  162. package/dist/{session-types-B9NIf7_F.d.ts → session-types-CJIFbTPd.d.ts} +20 -20
  163. package/dist/{session-types-CCo-oA-d.d.cts → session-types-Cbq8IGCP.d.cts} +20 -20
  164. package/dist/session.cjs +5 -5
  165. package/dist/session.d.cts +3 -3
  166. package/dist/session.d.ts +3 -3
  167. package/dist/session.js +5 -5
  168. package/dist/types-4VxSL2Ho.d.cts +261 -0
  169. package/dist/types-4VxSL2Ho.d.ts +261 -0
  170. package/dist/types-B2afJZM-.d.cts +236 -0
  171. package/dist/types-B2afJZM-.d.ts +236 -0
  172. package/dist/{types-CIk5W10V.d.ts → types-BTFeKYCb.d.cts} +37 -37
  173. package/dist/{types-CIk5W10V.d.cts → types-BTFeKYCb.d.ts} +37 -37
  174. package/dist/types-Bg6QYNVt.d.cts +290 -0
  175. package/dist/types-Bg6QYNVt.d.ts +290 -0
  176. package/dist/types-C_1HrqBl.d.cts +306 -0
  177. package/dist/types-C_1HrqBl.d.ts +306 -0
  178. package/dist/types-Cw4WE9dh.d.cts +261 -0
  179. package/dist/types-Cw4WE9dh.d.ts +261 -0
  180. package/dist/types-D5gNQiDj.d.cts +261 -0
  181. package/dist/types-D5gNQiDj.d.ts +261 -0
  182. package/dist/types-DqCDFqgB.d.cts +230 -0
  183. package/dist/types-DqCDFqgB.d.ts +230 -0
  184. package/dist/types-ERexTpT8.d.cts +217 -0
  185. package/dist/types-ERexTpT8.d.ts +217 -0
  186. package/dist/{types-ClXELFGN.d.cts → types-QNXoxC9Y.d.cts} +36 -41
  187. package/dist/{types-ClXELFGN.d.ts → types-QNXoxC9Y.d.ts} +36 -41
  188. package/dist/types-r-CasCf1.d.cts +262 -0
  189. package/dist/types-r-CasCf1.d.ts +262 -0
  190. package/package.json +116 -8
  191. package/src/core/buffer-reader.ts +16 -9
  192. package/src/core/buffer-writer.ts +2 -2
  193. package/src/core/errors.ts +1 -1
  194. package/src/core/session-types.ts +28 -41
  195. package/src/core/types.ts +92 -75
  196. package/src/drafts/draft07/announce-fsm.ts +1 -1
  197. package/src/drafts/draft07/codec.ts +235 -118
  198. package/src/drafts/draft07/index.ts +43 -44
  199. package/src/drafts/draft07/messages.ts +1 -1
  200. package/src/drafts/draft07/parameters.ts +2 -2
  201. package/src/drafts/draft07/rules.ts +67 -38
  202. package/src/drafts/draft07/session-fsm.ts +330 -117
  203. package/src/drafts/draft07/session.ts +10 -10
  204. package/src/drafts/draft07/subscription-fsm.ts +1 -1
  205. package/src/drafts/draft07/varint.ts +4 -4
  206. package/src/drafts/draft08/codec.ts +1254 -0
  207. package/src/drafts/draft08/index.ts +125 -0
  208. package/src/drafts/draft08/messages.ts +72 -0
  209. package/src/drafts/draft08/rules.ts +91 -0
  210. package/src/drafts/draft08/session-fsm.ts +718 -0
  211. package/src/drafts/draft08/session.ts +26 -0
  212. package/src/drafts/draft08/types.ts +377 -0
  213. package/src/drafts/draft09/codec.ts +1235 -0
  214. package/src/drafts/draft09/index.ts +125 -0
  215. package/src/drafts/draft09/messages.ts +72 -0
  216. package/src/drafts/draft09/rules.ts +91 -0
  217. package/src/drafts/draft09/session-fsm.ts +718 -0
  218. package/src/drafts/draft09/session.ts +26 -0
  219. package/src/drafts/draft09/types.ts +376 -0
  220. package/src/drafts/draft10/codec.ts +1235 -0
  221. package/src/drafts/draft10/index.ts +125 -0
  222. package/src/drafts/draft10/messages.ts +72 -0
  223. package/src/drafts/draft10/rules.ts +91 -0
  224. package/src/drafts/draft10/session-fsm.ts +718 -0
  225. package/src/drafts/draft10/session.ts +26 -0
  226. package/src/drafts/draft10/types.ts +376 -0
  227. package/src/drafts/draft11/codec.ts +1198 -0
  228. package/src/drafts/draft11/index.ts +123 -0
  229. package/src/drafts/draft11/messages.ts +71 -0
  230. package/src/drafts/draft11/rules.ts +100 -0
  231. package/src/drafts/draft11/session-fsm.ts +758 -0
  232. package/src/drafts/draft11/session.ts +26 -0
  233. package/src/drafts/draft11/types.ts +375 -0
  234. package/src/drafts/draft12/codec.ts +1354 -0
  235. package/src/drafts/draft12/index.ts +130 -0
  236. package/src/drafts/draft12/messages.ts +84 -0
  237. package/src/drafts/draft12/rules.ts +106 -0
  238. package/src/drafts/draft12/session-fsm.ts +805 -0
  239. package/src/drafts/draft12/session.ts +26 -0
  240. package/src/drafts/draft12/types.ts +414 -0
  241. package/src/drafts/draft13/codec.ts +1438 -0
  242. package/src/drafts/draft13/index.ts +132 -0
  243. package/src/drafts/draft13/messages.ts +86 -0
  244. package/src/drafts/draft13/rules.ts +108 -0
  245. package/src/drafts/draft13/session-fsm.ts +819 -0
  246. package/src/drafts/draft13/session.ts +26 -0
  247. package/src/drafts/draft13/types.ts +433 -0
  248. package/src/drafts/draft14/codec.ts +339 -189
  249. package/src/drafts/draft14/index.ts +103 -108
  250. package/src/drafts/draft14/messages.ts +61 -61
  251. package/src/drafts/draft14/rules.ts +77 -34
  252. package/src/drafts/draft14/session-fsm.ts +640 -147
  253. package/src/drafts/draft14/session.ts +13 -13
  254. package/src/drafts/draft14/types.ts +68 -68
  255. package/src/drafts/draft15/codec.ts +1661 -0
  256. package/src/drafts/draft15/index.ts +121 -0
  257. package/src/drafts/draft15/messages.ts +64 -0
  258. package/src/drafts/draft15/rules.ts +95 -0
  259. package/src/drafts/draft15/session-fsm.ts +687 -0
  260. package/src/drafts/draft15/session.ts +26 -0
  261. package/src/drafts/draft15/types.ts +336 -0
  262. package/src/drafts/draft16/codec.ts +1623 -0
  263. package/src/drafts/draft16/index.ts +123 -0
  264. package/src/drafts/draft16/messages.ts +67 -0
  265. package/src/drafts/draft16/rules.ts +96 -0
  266. package/src/drafts/draft16/session-fsm.ts +682 -0
  267. package/src/drafts/draft16/session.ts +26 -0
  268. package/src/drafts/draft16/types.ts +354 -0
  269. package/src/drafts/draft17/codec.ts +1621 -0
  270. package/src/drafts/draft17/index.ts +105 -0
  271. package/src/drafts/draft17/messages.ts +53 -0
  272. package/src/drafts/draft17/rules.ts +85 -0
  273. package/src/drafts/draft17/session-fsm.ts +437 -0
  274. package/src/drafts/draft17/session.ts +15 -0
  275. package/src/drafts/draft17/types.ts +310 -0
  276. package/src/index.ts +283 -33
  277. package/src/session.ts +20 -20
package/dist/index.d.ts CHANGED
@@ -1,7 +1,25 @@
1
- import { C as CodecOptions, a as Codec } from './types-ClXELFGN.js';
2
- export { A as Announce, b as AnnounceCancel, c as AnnounceError, d as AnnounceOk, B as BaseCodec, e as ClientSetup, D as DecodeError, f as DecodeErrorCode, g as DecodeResult, h as Draft, i as DraftShorthand, F as Fetch, j as FetchCancel, k as FetchError, l as FetchOk, m as FilterType, G as GoAway, n as GroupOrderValue, M as MaxSubscribeId, o as MoqtMessage, p as MoqtMessageType, O as ObjectDatagram, q as ObjectStream, S as ServerSetup, r as StreamHeaderGroup, s as StreamHeaderSubgroup, t as StreamHeaderTrack, u as Subscribe, v as SubscribeAnnounces, w as SubscribeAnnouncesError, x as SubscribeAnnouncesOk, y as SubscribeDone, z as SubscribeError, E as SubscribeOk, H as SubscribeUpdate, T as TrackStatus, I as TrackStatusRequest, U as Unannounce, J as Unsubscribe, K as UnsubscribeAnnounces } from './types-ClXELFGN.js';
3
- import { D as Draft14Codec } from './codec-qPzfmLNu.js';
4
- export { D as Draft14DataStream, a as Draft14Message, b as Draft14Params } from './types-CIk5W10V.js';
1
+ import { C as CodecOptions, a as Codec } from './types-QNXoxC9Y.js';
2
+ export { A as Announce, b as AnnounceCancel, c as AnnounceError, d as AnnounceOk, B as BaseCodec, e as ClientSetup, D as DecodeError, f as DecodeErrorCode, g as DecodeResult, h as Draft, i as DraftShorthand, F as Fetch, j as FetchCancel, k as FetchError, l as FetchOk, m as FilterType, G as GoAway, n as GroupOrderValue, M as MaxSubscribeId, o as MoqtMessage, p as MoqtMessageType, O as ObjectDatagram, q as ObjectStream, S as ServerSetup, r as StreamHeaderGroup, s as StreamHeaderSubgroup, t as StreamHeaderTrack, u as Subscribe, v as SubscribeAnnounces, w as SubscribeAnnouncesError, x as SubscribeAnnouncesOk, y as SubscribeDone, z as SubscribeError, E as SubscribeOk, H as SubscribeUpdate, T as TrackStatus, I as TrackStatusRequest, U as Unannounce, J as Unsubscribe, K as UnsubscribeAnnounces } from './types-QNXoxC9Y.js';
3
+ import { D as Draft08Codec } from './codec-BsPU1vNC.js';
4
+ import { D as Draft09Codec } from './codec-DPx_QNn0.js';
5
+ import { D as Draft10Codec } from './codec-Db7YPe3l.js';
6
+ import { D as Draft11Codec } from './codec-C_HMXNK_.js';
7
+ import { D as Draft12Codec } from './codec-BECYPfY8.js';
8
+ import { D as Draft13Codec } from './codec-BC5jfvMb.js';
9
+ import { D as Draft14Codec } from './codec-DRhCx_hw.js';
10
+ import { D as Draft15Codec } from './codec-D7ARhpG1.js';
11
+ import { D as Draft16Codec } from './codec-AFuOxfsO.js';
12
+ import { D as Draft17Codec } from './codec-CSUqCrRs.js';
13
+ export { D as Draft08DataStream, a as Draft08Message, b as Draft08Params, c as Draft08SetupParams } from './types-r-CasCf1.js';
14
+ export { D as Draft09DataStream, a as Draft09Message, b as Draft09Params, c as Draft09SetupParams } from './types-D5gNQiDj.js';
15
+ export { D as Draft10DataStream, a as Draft10Message, b as Draft10Params, c as Draft10SetupParams } from './types-Cw4WE9dh.js';
16
+ export { D as Draft11DataStream, a as Draft11Message, b as Draft11Params, c as Draft11SetupParams } from './types-4VxSL2Ho.js';
17
+ export { D as Draft12DataStream, a as Draft12Message, b as Draft12Params, c as Draft12SetupParams } from './types-Bg6QYNVt.js';
18
+ export { D as Draft13DataStream, a as Draft13Message, b as Draft13Params, c as Draft13SetupParams } from './types-C_1HrqBl.js';
19
+ export { D as Draft14DataStream, a as Draft14Message, b as Draft14Params } from './types-BTFeKYCb.js';
20
+ export { D as Draft15DataStream, a as Draft15Message, b as Draft15Params, c as Draft15SetupParams } from './types-DqCDFqgB.js';
21
+ export { D as Draft16DataStream, a as Draft16Message, b as Draft16Params, c as Draft16SetupParams } from './types-B2afJZM-.js';
22
+ export { D as Draft17DataStream, a as Draft17Message, b as Draft17Params, c as Draft17SetupOptions } from './types-ERexTpT8.js';
5
23
 
6
24
  /**
7
25
  * @moqtap/codec — MoQT wire-format codec
@@ -21,20 +39,65 @@ export { D as Draft14DataStream, a as Draft14Message, b as Draft14Params } from
21
39
  * Create a codec for draft-07 (returns full Codec with stream decoder).
22
40
  */
23
41
  declare function createCodec(options: CodecOptions & {
24
- draft: 'draft-ietf-moq-transport-07' | '07';
42
+ draft: "draft-ietf-moq-transport-07" | "07";
25
43
  }): Codec;
44
+ declare function createCodec(options: CodecOptions & {
45
+ draft: "draft-ietf-moq-transport-08" | "08";
46
+ }): Draft08Codec;
47
+ declare function createCodec(options: CodecOptions & {
48
+ draft: "draft-ietf-moq-transport-09" | "09";
49
+ }): Draft09Codec;
50
+ declare function createCodec(options: CodecOptions & {
51
+ draft: "draft-ietf-moq-transport-10" | "10";
52
+ }): Draft10Codec;
53
+ /**
54
+ * Create a codec for draft-11 (returns Draft11Codec with data stream support).
55
+ */
56
+ declare function createCodec(options: CodecOptions & {
57
+ draft: "draft-ietf-moq-transport-11" | "11";
58
+ }): Draft11Codec;
59
+ /**
60
+ * Create a codec for draft-12 (returns Draft12Codec with data stream support).
61
+ */
62
+ declare function createCodec(options: CodecOptions & {
63
+ draft: "draft-ietf-moq-transport-12" | "12";
64
+ }): Draft12Codec;
65
+ /**
66
+ * Create a codec for draft-13 (returns Draft13Codec with data stream support).
67
+ */
68
+ declare function createCodec(options: CodecOptions & {
69
+ draft: "draft-ietf-moq-transport-13" | "13";
70
+ }): Draft13Codec;
26
71
  /**
27
72
  * Create a codec for draft-14 (returns Draft14Codec with data stream support).
28
73
  */
29
74
  declare function createCodec(options: CodecOptions & {
30
- draft: 'draft-ietf-moq-transport-14' | '14';
75
+ draft: "draft-ietf-moq-transport-14" | "14";
31
76
  }): Draft14Codec;
77
+ /**
78
+ * Create a codec for draft-15 (returns Draft15Codec with data stream support).
79
+ */
80
+ declare function createCodec(options: CodecOptions & {
81
+ draft: "draft-ietf-moq-transport-15" | "15";
82
+ }): Draft15Codec;
83
+ /**
84
+ * Create a codec for draft-16 (returns Draft16Codec with data stream support).
85
+ */
86
+ declare function createCodec(options: CodecOptions & {
87
+ draft: "draft-ietf-moq-transport-16" | "16";
88
+ }): Draft16Codec;
89
+ /**
90
+ * Create a codec for draft-17 (returns Draft17Codec with data stream support).
91
+ */
92
+ declare function createCodec(options: CodecOptions & {
93
+ draft: "draft-ietf-moq-transport-17" | "17";
94
+ }): Draft17Codec;
32
95
  /**
33
96
  * Create a codec for the specified draft version.
34
97
  *
35
98
  * A draft must always be specified — there is no default while the
36
99
  * MoQT specification is still in draft stage.
37
100
  */
38
- declare function createCodec(options: CodecOptions): Codec | Draft14Codec;
101
+ declare function createCodec(options: CodecOptions): Codec | Draft08Codec | Draft09Codec | Draft10Codec | Draft11Codec | Draft12Codec | Draft13Codec | Draft14Codec | Draft15Codec | Draft16Codec | Draft17Codec;
39
102
 
40
- export { Codec, CodecOptions, Draft14Codec, createCodec };
103
+ export { Codec, CodecOptions, Draft08Codec, Draft09Codec, Draft10Codec, Draft11Codec, Draft12Codec, Draft13Codec, Draft14Codec, Draft15Codec, Draft16Codec, Draft17Codec, createCodec };
package/dist/index.js CHANGED
@@ -1,19 +1,64 @@
1
+ import {
2
+ createDraft14Codec
3
+ } from "./chunk-U2B3B42P.js";
4
+ import {
5
+ createDraft15Codec
6
+ } from "./chunk-NUX5BHWO.js";
7
+ import {
8
+ createDraft16Codec
9
+ } from "./chunk-LH4NTURO.js";
10
+ import {
11
+ createDraft17Codec
12
+ } from "./chunk-ZBKE2QRQ.js";
13
+ import {
14
+ createDraft10Codec
15
+ } from "./chunk-CXDHOMHG.js";
16
+ import {
17
+ createDraft11Codec
18
+ } from "./chunk-PJRA2TQ5.js";
19
+ import {
20
+ createDraft12Codec
21
+ } from "./chunk-IV2HRJVT.js";
22
+ import {
23
+ createDraft13Codec
24
+ } from "./chunk-4RIXXEII.js";
1
25
  import {
2
26
  createDraft07Codec
3
- } from "./chunk-23YG7F46.js";
27
+ } from "./chunk-TMNGRIPL.js";
4
28
  import {
5
- createDraft14Codec
6
- } from "./chunk-IQPDRQVC.js";
29
+ createDraft08Codec
30
+ } from "./chunk-ST24APEO.js";
31
+ import {
32
+ createDraft09Codec
33
+ } from "./chunk-NGVE2RZT.js";
7
34
  import {
8
35
  DecodeError
9
- } from "./chunk-YBSEOSSP.js";
36
+ } from "./chunk-A27S7HW7.js";
10
37
 
11
38
  // src/index.ts
12
39
  var DRAFT_ALIASES = {
13
40
  "07": "draft-ietf-moq-transport-07",
14
41
  "draft-ietf-moq-transport-07": "draft-ietf-moq-transport-07",
42
+ "08": "draft-ietf-moq-transport-08",
43
+ "draft-ietf-moq-transport-08": "draft-ietf-moq-transport-08",
44
+ "09": "draft-ietf-moq-transport-09",
45
+ "draft-ietf-moq-transport-09": "draft-ietf-moq-transport-09",
46
+ "10": "draft-ietf-moq-transport-10",
47
+ "draft-ietf-moq-transport-10": "draft-ietf-moq-transport-10",
48
+ "11": "draft-ietf-moq-transport-11",
49
+ "draft-ietf-moq-transport-11": "draft-ietf-moq-transport-11",
50
+ "12": "draft-ietf-moq-transport-12",
51
+ "draft-ietf-moq-transport-12": "draft-ietf-moq-transport-12",
52
+ "13": "draft-ietf-moq-transport-13",
53
+ "draft-ietf-moq-transport-13": "draft-ietf-moq-transport-13",
15
54
  "14": "draft-ietf-moq-transport-14",
16
- "draft-ietf-moq-transport-14": "draft-ietf-moq-transport-14"
55
+ "draft-ietf-moq-transport-14": "draft-ietf-moq-transport-14",
56
+ "15": "draft-ietf-moq-transport-15",
57
+ "draft-ietf-moq-transport-15": "draft-ietf-moq-transport-15",
58
+ "16": "draft-ietf-moq-transport-16",
59
+ "draft-ietf-moq-transport-16": "draft-ietf-moq-transport-16",
60
+ "17": "draft-ietf-moq-transport-17",
61
+ "draft-ietf-moq-transport-17": "draft-ietf-moq-transport-17"
17
62
  };
18
63
  function createCodec(options) {
19
64
  const draft = DRAFT_ALIASES[options.draft];
@@ -21,15 +66,42 @@ function createCodec(options) {
21
66
  throw new Error(
22
67
  `Unsupported draft: "${options.draft}". Use a draft-scoped import instead:
23
68
  import { createDraft07Codec } from '@moqtap/codec/draft7'
69
+ import { createDraft08Codec } from '@moqtap/codec/draft8'
70
+ import { createDraft09Codec } from '@moqtap/codec/draft9'
71
+ import { createDraft10Codec } from '@moqtap/codec/draft10'
72
+ import { createDraft11Codec } from '@moqtap/codec/draft11'
73
+ import { createDraft12Codec } from '@moqtap/codec/draft12'
74
+ import { createDraft13Codec } from '@moqtap/codec/draft13'
24
75
  import { createDraft14Codec } from '@moqtap/codec/draft14'
76
+ import { createDraft15Codec } from '@moqtap/codec/draft15'
77
+ import { createDraft16Codec } from '@moqtap/codec/draft16'
78
+ import { createDraft17Codec } from '@moqtap/codec/draft17'
25
79
  Supported draft values: ${Object.keys(DRAFT_ALIASES).join(", ")}`
26
80
  );
27
81
  }
28
82
  switch (draft) {
29
83
  case "draft-ietf-moq-transport-07":
30
84
  return createDraft07Codec();
85
+ case "draft-ietf-moq-transport-08":
86
+ return createDraft08Codec();
87
+ case "draft-ietf-moq-transport-09":
88
+ return createDraft09Codec();
89
+ case "draft-ietf-moq-transport-10":
90
+ return createDraft10Codec();
91
+ case "draft-ietf-moq-transport-11":
92
+ return createDraft11Codec();
93
+ case "draft-ietf-moq-transport-12":
94
+ return createDraft12Codec();
95
+ case "draft-ietf-moq-transport-13":
96
+ return createDraft13Codec();
31
97
  case "draft-ietf-moq-transport-14":
32
98
  return createDraft14Codec();
99
+ case "draft-ietf-moq-transport-15":
100
+ return createDraft15Codec();
101
+ case "draft-ietf-moq-transport-16":
102
+ return createDraft16Codec();
103
+ case "draft-ietf-moq-transport-17":
104
+ return createDraft17Codec();
33
105
  default:
34
106
  throw new Error(`Unsupported draft: ${draft}`);
35
107
  }
@@ -1,10 +1,10 @@
1
- import { p as MoqtMessageType, o as MoqtMessage } from './types-ClXELFGN.js';
1
+ import { p as MoqtMessageType, o as MoqtMessage } from './types-QNXoxC9Y.js';
2
2
 
3
- type SessionPhase = 'idle' | 'setup' | 'ready' | 'draining' | 'closed' | 'error';
4
- type SubscriptionPhase = 'pending' | 'active' | 'error' | 'done';
5
- type AnnouncePhase = 'pending' | 'active' | 'error';
6
- type PublishPhase = 'pending' | 'active' | 'error' | 'done';
7
- type FetchPhase = 'pending' | 'active' | 'error' | 'cancelled';
3
+ type SessionPhase = "idle" | "setup" | "ready" | "draining" | "closed" | "error";
4
+ type SubscriptionPhase = "pending" | "active" | "error" | "done";
5
+ type AnnouncePhase = "pending" | "active" | "error";
6
+ type PublishPhase = "pending" | "active" | "error" | "done";
7
+ type FetchPhase = "pending" | "active" | "error" | "cancelled";
8
8
  interface SubscriptionState {
9
9
  readonly subscribeId: bigint;
10
10
  readonly phase: SubscriptionPhase;
@@ -27,11 +27,11 @@ interface SessionStateOptions {
27
27
  codec: {
28
28
  draft: string;
29
29
  };
30
- role: 'client' | 'server';
30
+ role: "client" | "server";
31
31
  }
32
32
  interface SessionState<M = MoqtMessage, T extends string = MoqtMessageType> {
33
33
  readonly phase: SessionPhase;
34
- readonly role: 'client' | 'server';
34
+ readonly role: "client" | "server";
35
35
  receive(message: M): TransitionResult<T>;
36
36
  validateOutgoing(message: M): ValidationResult<T>;
37
37
  send(message: M): TransitionResult<T>;
@@ -61,41 +61,41 @@ interface ProtocolViolation<T extends string = MoqtMessageType> {
61
61
  readonly currentPhase: SessionPhase;
62
62
  readonly offendingMessage: T;
63
63
  }
64
- type ProtocolViolationCode = 'MESSAGE_BEFORE_SETUP' | 'UNEXPECTED_MESSAGE' | 'DUPLICATE_SUBSCRIBE_ID' | 'UNKNOWN_SUBSCRIBE_ID' | 'DUPLICATE_REQUEST_ID' | 'UNKNOWN_REQUEST_ID' | 'ROLE_VIOLATION' | 'STATE_VIOLATION' | 'SETUP_VIOLATION';
64
+ type ProtocolViolationCode = "MESSAGE_BEFORE_SETUP" | "UNEXPECTED_MESSAGE" | "DUPLICATE_SUBSCRIBE_ID" | "UNKNOWN_SUBSCRIBE_ID" | "DUPLICATE_REQUEST_ID" | "UNKNOWN_REQUEST_ID" | "ROLE_VIOLATION" | "STATE_VIOLATION" | "SETUP_VIOLATION";
65
65
  type SideEffect = {
66
- type: 'subscription-activated';
66
+ type: "subscription-activated";
67
67
  subscribeId: bigint;
68
68
  } | {
69
- type: 'subscription-ended';
69
+ type: "subscription-ended";
70
70
  subscribeId: bigint;
71
71
  reason: string;
72
72
  } | {
73
- type: 'announce-activated';
73
+ type: "announce-activated";
74
74
  namespace: string[];
75
75
  } | {
76
- type: 'announce-ended';
76
+ type: "announce-ended";
77
77
  namespace: string[];
78
78
  } | {
79
- type: 'publish-activated';
79
+ type: "publish-activated";
80
80
  requestId: bigint;
81
81
  } | {
82
- type: 'publish-ended';
82
+ type: "publish-ended";
83
83
  requestId: bigint;
84
84
  reason: string;
85
85
  } | {
86
- type: 'fetch-activated';
86
+ type: "fetch-activated";
87
87
  requestId: bigint;
88
88
  } | {
89
- type: 'fetch-ended';
89
+ type: "fetch-ended";
90
90
  requestId: bigint;
91
91
  reason: string;
92
92
  } | {
93
- type: 'session-ready';
93
+ type: "session-ready";
94
94
  } | {
95
- type: 'session-draining';
95
+ type: "session-draining";
96
96
  goAwayUri: string;
97
97
  } | {
98
- type: 'session-closed';
98
+ type: "session-closed";
99
99
  };
100
100
 
101
101
  export type { AnnouncePhase as A, FetchPhase as F, ProtocolViolation as P, SessionStateOptions as S, TransitionResult as T, ValidationResult as V, SessionState as a, AnnounceState as b, FetchState as c, ProtocolViolationCode as d, PublishPhase as e, PublishState as f, SessionPhase as g, SideEffect as h, SubscriptionPhase as i, SubscriptionState as j };
@@ -1,10 +1,10 @@
1
- import { p as MoqtMessageType, o as MoqtMessage } from './types-ClXELFGN.cjs';
1
+ import { p as MoqtMessageType, o as MoqtMessage } from './types-QNXoxC9Y.cjs';
2
2
 
3
- type SessionPhase = 'idle' | 'setup' | 'ready' | 'draining' | 'closed' | 'error';
4
- type SubscriptionPhase = 'pending' | 'active' | 'error' | 'done';
5
- type AnnouncePhase = 'pending' | 'active' | 'error';
6
- type PublishPhase = 'pending' | 'active' | 'error' | 'done';
7
- type FetchPhase = 'pending' | 'active' | 'error' | 'cancelled';
3
+ type SessionPhase = "idle" | "setup" | "ready" | "draining" | "closed" | "error";
4
+ type SubscriptionPhase = "pending" | "active" | "error" | "done";
5
+ type AnnouncePhase = "pending" | "active" | "error";
6
+ type PublishPhase = "pending" | "active" | "error" | "done";
7
+ type FetchPhase = "pending" | "active" | "error" | "cancelled";
8
8
  interface SubscriptionState {
9
9
  readonly subscribeId: bigint;
10
10
  readonly phase: SubscriptionPhase;
@@ -27,11 +27,11 @@ interface SessionStateOptions {
27
27
  codec: {
28
28
  draft: string;
29
29
  };
30
- role: 'client' | 'server';
30
+ role: "client" | "server";
31
31
  }
32
32
  interface SessionState<M = MoqtMessage, T extends string = MoqtMessageType> {
33
33
  readonly phase: SessionPhase;
34
- readonly role: 'client' | 'server';
34
+ readonly role: "client" | "server";
35
35
  receive(message: M): TransitionResult<T>;
36
36
  validateOutgoing(message: M): ValidationResult<T>;
37
37
  send(message: M): TransitionResult<T>;
@@ -61,41 +61,41 @@ interface ProtocolViolation<T extends string = MoqtMessageType> {
61
61
  readonly currentPhase: SessionPhase;
62
62
  readonly offendingMessage: T;
63
63
  }
64
- type ProtocolViolationCode = 'MESSAGE_BEFORE_SETUP' | 'UNEXPECTED_MESSAGE' | 'DUPLICATE_SUBSCRIBE_ID' | 'UNKNOWN_SUBSCRIBE_ID' | 'DUPLICATE_REQUEST_ID' | 'UNKNOWN_REQUEST_ID' | 'ROLE_VIOLATION' | 'STATE_VIOLATION' | 'SETUP_VIOLATION';
64
+ type ProtocolViolationCode = "MESSAGE_BEFORE_SETUP" | "UNEXPECTED_MESSAGE" | "DUPLICATE_SUBSCRIBE_ID" | "UNKNOWN_SUBSCRIBE_ID" | "DUPLICATE_REQUEST_ID" | "UNKNOWN_REQUEST_ID" | "ROLE_VIOLATION" | "STATE_VIOLATION" | "SETUP_VIOLATION";
65
65
  type SideEffect = {
66
- type: 'subscription-activated';
66
+ type: "subscription-activated";
67
67
  subscribeId: bigint;
68
68
  } | {
69
- type: 'subscription-ended';
69
+ type: "subscription-ended";
70
70
  subscribeId: bigint;
71
71
  reason: string;
72
72
  } | {
73
- type: 'announce-activated';
73
+ type: "announce-activated";
74
74
  namespace: string[];
75
75
  } | {
76
- type: 'announce-ended';
76
+ type: "announce-ended";
77
77
  namespace: string[];
78
78
  } | {
79
- type: 'publish-activated';
79
+ type: "publish-activated";
80
80
  requestId: bigint;
81
81
  } | {
82
- type: 'publish-ended';
82
+ type: "publish-ended";
83
83
  requestId: bigint;
84
84
  reason: string;
85
85
  } | {
86
- type: 'fetch-activated';
86
+ type: "fetch-activated";
87
87
  requestId: bigint;
88
88
  } | {
89
- type: 'fetch-ended';
89
+ type: "fetch-ended";
90
90
  requestId: bigint;
91
91
  reason: string;
92
92
  } | {
93
- type: 'session-ready';
93
+ type: "session-ready";
94
94
  } | {
95
- type: 'session-draining';
95
+ type: "session-draining";
96
96
  goAwayUri: string;
97
97
  } | {
98
- type: 'session-closed';
98
+ type: "session-closed";
99
99
  };
100
100
 
101
101
  export type { AnnouncePhase as A, FetchPhase as F, ProtocolViolation as P, SessionStateOptions as S, TransitionResult as T, ValidationResult as V, SessionState as a, AnnounceState as b, FetchState as c, ProtocolViolationCode as d, PublishPhase as e, PublishState as f, SessionPhase as g, SideEffect as h, SubscriptionPhase as i, SubscriptionState as j };
package/dist/session.cjs CHANGED
@@ -1,19 +1,19 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunk3BSZ55L3cjs = require('./chunk-3BSZ55L3.cjs');
4
- require('./chunk-QYG6KGOV.cjs');
3
+ var _chunkUYXTY6ZQcjs = require('./chunk-UYXTY6ZQ.cjs');
5
4
 
6
5
 
7
- var _chunkGDRGWFEKcjs = require('./chunk-GDRGWFEK.cjs');
6
+ var _chunkBPNL5YFQcjs = require('./chunk-BPNL5YFQ.cjs');
7
+ require('./chunk-RWQ43Z4F.cjs');
8
8
 
9
9
  // src/session.ts
10
10
  function createSessionState(options) {
11
11
  const draft = options.codec.draft;
12
12
  switch (draft) {
13
13
  case "draft-ietf-moq-transport-07":
14
- return _chunk3BSZ55L3cjs.createDraft07SessionState.call(void 0, options);
14
+ return _chunkBPNL5YFQcjs.createDraft07SessionState.call(void 0, options);
15
15
  case "draft-ietf-moq-transport-14":
16
- return _chunkGDRGWFEKcjs.createDraft14SessionState.call(void 0, options);
16
+ return _chunkUYXTY6ZQcjs.createDraft14SessionState.call(void 0, options);
17
17
  default:
18
18
  throw new Error(
19
19
  `Unsupported draft for session: "${draft}". Use a draft-scoped import instead:
@@ -1,6 +1,6 @@
1
- import { S as SessionStateOptions, a as SessionState } from './session-types-CCo-oA-d.cjs';
2
- export { A as AnnouncePhase, b as AnnounceState, F as FetchPhase, c as FetchState, P as ProtocolViolation, d as ProtocolViolationCode, e as PublishPhase, f as PublishState, g as SessionPhase, h as SideEffect, i as SubscriptionPhase, j as SubscriptionState, T as TransitionResult, V as ValidationResult } from './session-types-CCo-oA-d.cjs';
3
- import './types-ClXELFGN.cjs';
1
+ import { S as SessionStateOptions, a as SessionState } from './session-types-Cbq8IGCP.cjs';
2
+ export { A as AnnouncePhase, b as AnnounceState, F as FetchPhase, c as FetchState, P as ProtocolViolation, d as ProtocolViolationCode, e as PublishPhase, f as PublishState, g as SessionPhase, h as SideEffect, i as SubscriptionPhase, j as SubscriptionState, T as TransitionResult, V as ValidationResult } from './session-types-Cbq8IGCP.cjs';
3
+ import './types-QNXoxC9Y.cjs';
4
4
 
5
5
  /**
6
6
  * @moqtap/codec/session — MoQT session state machine
package/dist/session.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { S as SessionStateOptions, a as SessionState } from './session-types-B9NIf7_F.js';
2
- export { A as AnnouncePhase, b as AnnounceState, F as FetchPhase, c as FetchState, P as ProtocolViolation, d as ProtocolViolationCode, e as PublishPhase, f as PublishState, g as SessionPhase, h as SideEffect, i as SubscriptionPhase, j as SubscriptionState, T as TransitionResult, V as ValidationResult } from './session-types-B9NIf7_F.js';
3
- import './types-ClXELFGN.js';
1
+ import { S as SessionStateOptions, a as SessionState } from './session-types-CJIFbTPd.js';
2
+ export { A as AnnouncePhase, b as AnnounceState, F as FetchPhase, c as FetchState, P as ProtocolViolation, d as ProtocolViolationCode, e as PublishPhase, f as PublishState, g as SessionPhase, h as SideEffect, i as SubscriptionPhase, j as SubscriptionState, T as TransitionResult, V as ValidationResult } from './session-types-CJIFbTPd.js';
3
+ import './types-QNXoxC9Y.js';
4
4
 
5
5
  /**
6
6
  * @moqtap/codec/session — MoQT session state machine
package/dist/session.js CHANGED
@@ -1,10 +1,10 @@
1
- import {
2
- createDraft07SessionState
3
- } from "./chunk-DC4L6ZIT.js";
4
- import "./chunk-UOBWHJA5.js";
5
1
  import {
6
2
  createDraft14SessionState
7
- } from "./chunk-YPXLV5YK.js";
3
+ } from "./chunk-FXZ2MYKJ.js";
4
+ import {
5
+ createDraft07SessionState
6
+ } from "./chunk-MFAP7R6L.js";
7
+ import "./chunk-KFTCU2P6.js";
8
8
 
9
9
  // src/session.ts
10
10
  function createSessionState(options) {