@nmtjs/protocol 0.15.0-beta.5 → 0.15.0-beta.50

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 (46) hide show
  1. package/README.md +31 -1
  2. package/dist/client/index.js +5 -5
  3. package/dist/client/protocol.d.ts +12 -0
  4. package/dist/client/protocol.js +1 -1
  5. package/dist/client/protocol.js.map +1 -1
  6. package/dist/client/stream.js +2 -2
  7. package/dist/client/stream.js.map +1 -1
  8. package/dist/client/versions/v1.d.ts +67 -36
  9. package/dist/client/versions/v1.js +19 -3
  10. package/dist/client/versions/v1.js.map +1 -1
  11. package/dist/common/binary.d.ts +3 -5
  12. package/dist/common/binary.js.map +1 -1
  13. package/dist/common/blob.d.ts +3 -3
  14. package/dist/common/blob.js +3 -3
  15. package/dist/common/blob.js.map +1 -1
  16. package/dist/common/enums.d.ts +4 -0
  17. package/dist/common/enums.js +16 -6
  18. package/dist/common/enums.js.map +1 -1
  19. package/dist/common/index.js +6 -6
  20. package/dist/common/utils.js +1 -1
  21. package/dist/common/utils.js.map +1 -1
  22. package/dist/server/format.d.ts +5 -3
  23. package/dist/server/format.js +2 -0
  24. package/dist/server/format.js.map +1 -1
  25. package/dist/server/index.js +7 -7
  26. package/dist/server/protocol.d.ts +12 -0
  27. package/dist/server/protocol.js +1 -1
  28. package/dist/server/protocol.js.map +1 -1
  29. package/dist/server/stream.d.ts +3 -0
  30. package/dist/server/stream.js +20 -1
  31. package/dist/server/stream.js.map +1 -1
  32. package/dist/server/utils.js +4 -4
  33. package/dist/server/utils.js.map +1 -1
  34. package/dist/server/versions/v1.d.ts +51 -25
  35. package/dist/server/versions/v1.js +19 -3
  36. package/dist/server/versions/v1.js.map +1 -1
  37. package/package.json +26 -16
  38. package/src/client/protocol.ts +4 -0
  39. package/src/client/versions/v1.ts +24 -0
  40. package/src/common/blob.ts +4 -9
  41. package/src/common/enums.ts +6 -0
  42. package/src/server/format.ts +7 -3
  43. package/src/server/protocol.ts +4 -0
  44. package/src/server/stream.ts +22 -1
  45. package/src/server/utils.ts +5 -5
  46. package/src/server/versions/v1.ts +24 -0
@@ -11,12 +11,12 @@ export const getFormat = (
11
11
  format: ProtocolFormats,
12
12
  { accept, contentType }: ResolveFormatParams,
13
13
  ) => {
14
- const encoder = contentType ? format.supportsEncoder(contentType) : undefined
15
- if (!encoder)
16
- throw new UnsupportedContentTypeError('Unsupported Content type')
14
+ const encoder = accept ? format.supportsEncoder(accept) : undefined
15
+ if (!encoder) throw new UnsupportedAcceptTypeError('Unsupported Accept type')
17
16
 
18
- const decoder = accept ? format.supportsDecoder(accept) : undefined
19
- if (!decoder) throw new UnsupportedAcceptTypeError('Unsupported Accept type')
17
+ const decoder = contentType ? format.supportsDecoder(contentType) : undefined
18
+ if (!decoder)
19
+ throw new UnsupportedContentTypeError('Unsupported Content type')
20
20
 
21
21
  return { encoder, decoder }
22
22
  }
@@ -49,6 +49,14 @@ export class ProtocolVersion1 extends ProtocolVersionInterface {
49
49
  reasonPayload.byteLength > 0 ? decodeText(reasonPayload) : undefined
50
50
  return { type: messageType, callId, reason }
51
51
  }
52
+ case ClientMessageType.Ping: {
53
+ const nonce = messagePayload.readUInt32LE(0)
54
+ return { type: messageType, nonce }
55
+ }
56
+ case ClientMessageType.Pong: {
57
+ const nonce = messagePayload.readUInt32LE(0)
58
+ return { type: messageType, nonce }
59
+ }
52
60
  case ClientMessageType.ServerStreamAbort: {
53
61
  const streamId = messagePayload.readUInt32LE(0)
54
62
  const reasonPayload = messagePayload.subarray(
@@ -146,6 +154,22 @@ export class ProtocolVersion1 extends ProtocolVersionInterface {
146
154
  reason ? encodeText(reason) : Buffer.alloc(0),
147
155
  )
148
156
  }
157
+ case ServerMessageType.Pong: {
158
+ const { nonce } =
159
+ payload as ServerMessageTypePayload[ServerMessageType.Pong]
160
+ return this.encode(
161
+ encodeNumber(messageType, 'Uint8'),
162
+ encodeNumber(nonce, 'Uint32'),
163
+ )
164
+ }
165
+ case ServerMessageType.Ping: {
166
+ const { nonce } =
167
+ payload as ServerMessageTypePayload[ServerMessageType.Ping]
168
+ return this.encode(
169
+ encodeNumber(messageType, 'Uint8'),
170
+ encodeNumber(nonce, 'Uint32'),
171
+ )
172
+ }
149
173
  case ServerMessageType.ClientStreamPull: {
150
174
  const { size, streamId } =
151
175
  payload as ServerMessageTypePayload[ServerMessageType.ClientStreamPull]