@moqtap/codec 0.6.0 → 0.8.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 (82) hide show
  1. package/README.md +28 -2
  2. package/dist/{chunk-CXFAQKL3.js → chunk-23KRITJ6.js} +1 -1
  3. package/dist/{chunk-JL3NEW3O.cjs → chunk-4XLYCT5Q.cjs} +90 -1
  4. package/dist/{chunk-DLSGOZ6P.js → chunk-5XZKO2U5.js} +34 -34
  5. package/dist/{chunk-62LYLROG.js → chunk-APTV6F72.js} +35 -35
  6. package/dist/{chunk-JB5VDJ2V.cjs → chunk-B56AG5HU.cjs} +37 -37
  7. package/dist/{chunk-JTRU76JN.cjs → chunk-BQHLUT37.cjs} +109 -111
  8. package/dist/{chunk-4HBKHNU2.cjs → chunk-CZNW3R5E.cjs} +37 -37
  9. package/dist/{chunk-OGZTQA24.cjs → chunk-EQAYMCXO.cjs} +64 -64
  10. package/dist/{chunk-HYI6LFMD.js → chunk-HEO2JG6C.js} +1 -1
  11. package/dist/{chunk-UP4XPH4J.js → chunk-I55J3KXD.js} +31 -31
  12. package/dist/{chunk-HZHSO7EW.cjs → chunk-IDV2JYJ6.cjs} +39 -39
  13. package/dist/{chunk-BAG6YWCP.cjs → chunk-IEJULBKB.cjs} +63 -63
  14. package/dist/{chunk-Y6KCSM3V.js → chunk-IJAF6PAY.js} +1 -1
  15. package/dist/{chunk-WMJVSBBE.cjs → chunk-J3ASFPCX.cjs} +57 -57
  16. package/dist/{chunk-Q5D6OW6Q.js → chunk-JJEN2VG5.js} +51 -53
  17. package/dist/{chunk-COWGGUL4.js → chunk-JKMYAUGY.js} +1 -1
  18. package/dist/{chunk-SIYYMFCC.cjs → chunk-KCH4BQXK.cjs} +37 -37
  19. package/dist/{chunk-VOU7PNHI.js → chunk-KLPWJU6W.js} +89 -0
  20. package/dist/{chunk-NZ7GYEMT.js → chunk-KNLPX3YA.js} +1 -1
  21. package/dist/{chunk-A33U4WVS.cjs → chunk-KTVN4P6J.cjs} +67 -67
  22. package/dist/{chunk-7KBAWOBA.js → chunk-KYVTM5VI.js} +1 -1
  23. package/dist/{chunk-RZ3UML47.js → chunk-MD2OA7SE.js} +1 -1
  24. package/dist/{chunk-MSG2FXJ2.cjs → chunk-MH7537FB.cjs} +68 -68
  25. package/dist/{chunk-SHMA4PBY.js → chunk-N2V7Z37J.js} +1 -1
  26. package/dist/{chunk-HO44OANK.cjs → chunk-QGIHC6BA.cjs} +36 -36
  27. package/dist/{chunk-PKEOQSSZ.cjs → chunk-RIIA4ALQ.cjs} +37 -37
  28. package/dist/{chunk-XZE5R57R.cjs → chunk-VZHL2U2N.cjs} +37 -37
  29. package/dist/{chunk-RW4UG7CN.js → chunk-XHAP2YST.js} +1 -1
  30. package/dist/{codec-B1snaM9L.d.cts → codec-BnamSx7L.d.cts} +1 -1
  31. package/dist/{codec-D49OofBr.d.ts → codec-CFhUGTu2.d.ts} +1 -1
  32. package/dist/draft07.cjs +4 -4
  33. package/dist/draft07.js +2 -2
  34. package/dist/draft08.cjs +3 -3
  35. package/dist/draft08.js +2 -2
  36. package/dist/draft09.cjs +3 -3
  37. package/dist/draft09.js +2 -2
  38. package/dist/draft10.cjs +3 -3
  39. package/dist/draft10.js +2 -2
  40. package/dist/draft11.cjs +3 -3
  41. package/dist/draft11.js +2 -2
  42. package/dist/draft12.cjs +3 -3
  43. package/dist/draft12.js +2 -2
  44. package/dist/draft13.cjs +3 -3
  45. package/dist/draft13.js +2 -2
  46. package/dist/draft14-session.d.cts +1 -1
  47. package/dist/draft14-session.d.ts +1 -1
  48. package/dist/draft14.cjs +3 -3
  49. package/dist/draft14.d.cts +3 -3
  50. package/dist/draft14.d.ts +3 -3
  51. package/dist/draft14.js +2 -2
  52. package/dist/draft15.cjs +3 -3
  53. package/dist/draft15.js +2 -2
  54. package/dist/draft16.cjs +3 -3
  55. package/dist/draft16.js +2 -2
  56. package/dist/draft17.cjs +3 -3
  57. package/dist/draft17.js +2 -2
  58. package/dist/draft18.cjs +3 -3
  59. package/dist/draft18.js +2 -2
  60. package/dist/draft19.cjs +3 -3
  61. package/dist/draft19.js +2 -2
  62. package/dist/index.cjs +81 -29
  63. package/dist/index.d.cts +73 -3
  64. package/dist/index.d.ts +73 -3
  65. package/dist/index.js +67 -15
  66. package/dist/session.d.cts +1 -1
  67. package/dist/session.d.ts +1 -1
  68. package/dist/{types-DjmrHp_s.d.cts → types-CVeKIk7A.d.cts} +29 -21
  69. package/dist/{types-DjmrHp_s.d.ts → types-CVeKIk7A.d.ts} +29 -21
  70. package/package.json +2 -2
  71. package/src/core/accessors.ts +120 -0
  72. package/src/core/buffer-reader.ts +74 -2
  73. package/src/core/buffer-writer.ts +56 -4
  74. package/src/drafts/draft14/codec.ts +50 -52
  75. package/src/drafts/draft14/types.ts +31 -23
  76. package/src/drafts/draft17/codec.ts +2 -2
  77. package/src/drafts/draft17/data-streams.ts +2 -2
  78. package/src/drafts/draft18/codec.ts +2 -2
  79. package/src/drafts/draft18/data-streams.ts +2 -2
  80. package/src/drafts/draft19/codec.ts +2 -2
  81. package/src/drafts/draft19/data-streams.ts +2 -2
  82. package/src/index.ts +8 -0
@@ -115,8 +115,8 @@ export interface Draft14Subscribe extends Draft14BaseMessage {
115
115
  readonly request_id: bigint
116
116
  readonly track_namespace: string[]
117
117
  readonly track_name: string
118
- readonly subscriber_priority: bigint
119
- readonly group_order: bigint
118
+ readonly subscriber_priority: number // uint8
119
+ readonly group_order: number // uint8
120
120
  readonly forward: bigint
121
121
  readonly filter_type: bigint
122
122
  readonly start_group?: bigint
@@ -130,7 +130,7 @@ export interface Draft14SubscribeOk extends Draft14BaseMessage {
130
130
  readonly request_id: bigint
131
131
  readonly track_alias: bigint
132
132
  readonly expires: bigint
133
- readonly group_order: bigint
133
+ readonly group_order: number // uint8
134
134
  readonly content_exists: bigint
135
135
  readonly largest_location?: Location
136
136
  readonly parameters: Draft14Params
@@ -143,7 +143,7 @@ export interface Draft14SubscribeUpdate extends Draft14BaseMessage {
143
143
  readonly start_group: bigint
144
144
  readonly start_object: bigint
145
145
  readonly end_group: bigint
146
- readonly subscriber_priority: bigint
146
+ readonly subscriber_priority: number // uint8
147
147
  readonly forward: bigint
148
148
  readonly parameters: Draft14Params
149
149
  }
@@ -167,7 +167,7 @@ export interface Draft14Publish extends Draft14BaseMessage {
167
167
  readonly track_namespace: string[]
168
168
  readonly track_name: string
169
169
  readonly track_alias: bigint
170
- readonly group_order: bigint
170
+ readonly group_order: number // uint8
171
171
  readonly content_exists: bigint
172
172
  readonly largest_location?: Location
173
173
  readonly forward: bigint
@@ -178,8 +178,8 @@ export interface Draft14PublishOk extends Draft14BaseMessage {
178
178
  readonly type: 'publish_ok'
179
179
  readonly request_id: bigint
180
180
  readonly forward: bigint
181
- readonly subscriber_priority: bigint
182
- readonly group_order: bigint
181
+ readonly subscriber_priority: number // uint8
182
+ readonly group_order: number // uint8
183
183
  readonly filter_type: bigint
184
184
  readonly start_group?: bigint
185
185
  readonly start_object?: bigint
@@ -261,29 +261,37 @@ export interface Draft14UnsubscribeNamespace extends Draft14BaseMessage {
261
261
  }
262
262
 
263
263
  // Fetch
264
+ export interface StandaloneFetch {
265
+ readonly track_namespace: string[]
266
+ readonly track_name: string
267
+ readonly start_group: bigint
268
+ readonly start_object: bigint
269
+ readonly end_group: bigint
270
+ readonly end_object: bigint
271
+ }
272
+
273
+ export interface JoiningFetch {
274
+ readonly joining_request_id: bigint
275
+ readonly joining_start: bigint
276
+ }
277
+
264
278
  export interface Draft14Fetch extends Draft14BaseMessage {
265
279
  readonly type: 'fetch'
266
280
  readonly request_id: bigint
267
- readonly subscriber_priority: bigint
268
- readonly group_order: bigint
281
+ readonly subscriber_priority: number // uint8
282
+ readonly group_order: number // uint8
269
283
  readonly fetch_type: bigint
270
- // Standalone fields (fetch_type=1)
271
- readonly track_namespace?: string[]
272
- readonly track_name?: string
273
- readonly start_group?: bigint
274
- readonly start_object?: bigint
275
- readonly end_group?: bigint
276
- readonly end_object?: bigint
277
- // Joining fields (fetch_type=2 or 3)
278
- readonly joining_request_id?: bigint
279
- readonly joining_start?: bigint
284
+ /** Present when fetch_type = 1 */
285
+ readonly standalone?: StandaloneFetch
286
+ /** Present when fetch_type = 2 or 3 */
287
+ readonly joining?: JoiningFetch
280
288
  readonly parameters: Draft14Params
281
289
  }
282
290
 
283
291
  export interface Draft14FetchOk extends Draft14BaseMessage {
284
292
  readonly type: 'fetch_ok'
285
293
  readonly request_id: bigint
286
- readonly group_order: bigint
294
+ readonly group_order: number // uint8
287
295
  readonly end_of_track: bigint
288
296
  readonly end_location: Location
289
297
  readonly parameters: Draft14Params
@@ -307,8 +315,8 @@ export interface Draft14TrackStatus extends Draft14BaseMessage {
307
315
  readonly request_id: bigint
308
316
  readonly track_namespace: string[]
309
317
  readonly track_name: string
310
- readonly subscriber_priority: bigint
311
- readonly group_order: bigint
318
+ readonly subscriber_priority: number // uint8
319
+ readonly group_order: number // uint8
312
320
  readonly forward: bigint
313
321
  readonly filter_type: bigint
314
322
  readonly start_group?: bigint
@@ -321,7 +329,7 @@ export interface Draft14TrackStatusOk extends Draft14BaseMessage {
321
329
  readonly request_id: bigint
322
330
  readonly track_alias: bigint
323
331
  readonly expires: bigint
324
- readonly group_order: bigint
332
+ readonly group_order: number // uint8
325
333
  readonly content_exists: bigint
326
334
  readonly largest_location?: Location
327
335
  readonly parameters: Draft14Params
@@ -1,5 +1,5 @@
1
- import { BufferReader } from '../../core/buffer-reader.js'
2
- import { BufferWriter } from '../../core/buffer-writer.js'
1
+ import { Draft17BufferReader as BufferReader } from '../../core/buffer-reader.js'
2
+ import { Draft17BufferWriter as BufferWriter } from '../../core/buffer-writer.js'
3
3
  import { bytesToHex, hexToBytes } from '../../core/hex.js'
4
4
  import type { BaseCodec, DecodeResult } from '../../core/types.js'
5
5
  import { DecodeError } from '../../core/types.js'
@@ -1,5 +1,5 @@
1
- import { BufferReader } from '../../core/buffer-reader.js'
2
- import { BufferWriter } from '../../core/buffer-writer.js'
1
+ import { Draft17BufferReader as BufferReader } from '../../core/buffer-reader.js'
2
+ import { Draft17BufferWriter as BufferWriter } from '../../core/buffer-writer.js'
3
3
  import type { DecodeResult } from '../../core/types.js'
4
4
  import { DecodeError } from '../../core/types.js'
5
5
  import type {
@@ -1,5 +1,5 @@
1
- import { BufferReader } from '../../core/buffer-reader.js'
2
- import { BufferWriter } from '../../core/buffer-writer.js'
1
+ import { MoqtBufferReader as BufferReader } from '../../core/buffer-reader.js'
2
+ import { MoqtBufferWriter as BufferWriter } from '../../core/buffer-writer.js'
3
3
  import { bytesToHex, hexToBytes } from '../../core/hex.js'
4
4
  import type { BaseCodec, DecodeResult } from '../../core/types.js'
5
5
  import { DecodeError } from '../../core/types.js'
@@ -1,5 +1,5 @@
1
- import { BufferReader } from '../../core/buffer-reader.js'
2
- import { BufferWriter } from '../../core/buffer-writer.js'
1
+ import { MoqtBufferReader as BufferReader } from '../../core/buffer-reader.js'
2
+ import { MoqtBufferWriter as BufferWriter } from '../../core/buffer-writer.js'
3
3
  import type { DecodeResult } from '../../core/types.js'
4
4
  import { DecodeError } from '../../core/types.js'
5
5
  import type {
@@ -1,5 +1,5 @@
1
- import { BufferReader } from '../../core/buffer-reader.js'
2
- import { BufferWriter } from '../../core/buffer-writer.js'
1
+ import { MoqtBufferReader as BufferReader } from '../../core/buffer-reader.js'
2
+ import { MoqtBufferWriter as BufferWriter } from '../../core/buffer-writer.js'
3
3
  import { bytesToHex, hexToBytes } from '../../core/hex.js'
4
4
  import type { BaseCodec, DecodeResult } from '../../core/types.js'
5
5
  import { DecodeError } from '../../core/types.js'
@@ -1,5 +1,5 @@
1
- import { BufferReader } from '../../core/buffer-reader.js'
2
- import { BufferWriter } from '../../core/buffer-writer.js'
1
+ import { MoqtBufferReader as BufferReader } from '../../core/buffer-reader.js'
2
+ import { MoqtBufferWriter as BufferWriter } from '../../core/buffer-writer.js'
3
3
  import type { DecodeResult } from '../../core/types.js'
4
4
  import { DecodeError } from '../../core/types.js'
5
5
  import type {
package/src/index.ts CHANGED
@@ -151,6 +151,14 @@ export function createCodec(
151
151
  }
152
152
  }
153
153
 
154
+ // Draft-agnostic readers for decoded messages
155
+ export type { AnyMessage, TrackIdentity } from './core/accessors.js'
156
+ export {
157
+ joiningRequestIdOf,
158
+ requestIdOf,
159
+ trackAliasOf,
160
+ trackOf,
161
+ } from './core/accessors.js'
154
162
  export type {
155
163
  BaseCodec,
156
164
  CodecOptions,