@libp2p/daemon-protocol 1.0.2 → 1.0.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.
- package/dist/index.min.js +2 -2
- package/dist/src/index.d.ts +82 -82
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +236 -186
- package/dist/src/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +272 -222
package/src/index.ts
CHANGED
|
@@ -3,23 +3,125 @@
|
|
|
3
3
|
|
|
4
4
|
import { enumeration, encodeMessage, decodeMessage, message, bytes, int64, string, int32 } from 'protons-runtime'
|
|
5
5
|
|
|
6
|
+
export interface Request {
|
|
7
|
+
type: Request.Type
|
|
8
|
+
connect?: ConnectRequest
|
|
9
|
+
streamOpen?: StreamOpenRequest
|
|
10
|
+
streamHandler?: StreamHandlerRequest
|
|
11
|
+
dht?: DHTRequest
|
|
12
|
+
connManager?: ConnManagerRequest
|
|
13
|
+
disconnect?: DisconnectRequest
|
|
14
|
+
pubsub?: PSRequest
|
|
15
|
+
peerStore?: PeerstoreRequest
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export namespace Request {
|
|
19
|
+
export enum Type {
|
|
20
|
+
IDENTIFY = 'IDENTIFY',
|
|
21
|
+
CONNECT = 'CONNECT',
|
|
22
|
+
STREAM_OPEN = 'STREAM_OPEN',
|
|
23
|
+
STREAM_HANDLER = 'STREAM_HANDLER',
|
|
24
|
+
DHT = 'DHT',
|
|
25
|
+
LIST_PEERS = 'LIST_PEERS',
|
|
26
|
+
CONNMANAGER = 'CONNMANAGER',
|
|
27
|
+
DISCONNECT = 'DISCONNECT',
|
|
28
|
+
PUBSUB = 'PUBSUB',
|
|
29
|
+
PEERSTORE = 'PEERSTORE'
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export namespace Type {
|
|
33
|
+
export const codec = () => {
|
|
34
|
+
return enumeration<typeof Type>(Type)
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export const codec = () => {
|
|
39
|
+
return message<Request>({
|
|
40
|
+
1: { name: 'type', codec: Request.Type.codec() },
|
|
41
|
+
2: { name: 'connect', codec: ConnectRequest.codec(), optional: true },
|
|
42
|
+
3: { name: 'streamOpen', codec: StreamOpenRequest.codec(), optional: true },
|
|
43
|
+
4: { name: 'streamHandler', codec: StreamHandlerRequest.codec(), optional: true },
|
|
44
|
+
5: { name: 'dht', codec: DHTRequest.codec(), optional: true },
|
|
45
|
+
6: { name: 'connManager', codec: ConnManagerRequest.codec(), optional: true },
|
|
46
|
+
7: { name: 'disconnect', codec: DisconnectRequest.codec(), optional: true },
|
|
47
|
+
8: { name: 'pubsub', codec: PSRequest.codec(), optional: true },
|
|
48
|
+
9: { name: 'peerStore', codec: PeerstoreRequest.codec(), optional: true }
|
|
49
|
+
})
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export const encode = (obj: Request): Uint8Array => {
|
|
53
|
+
return encodeMessage(obj, Request.codec())
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export const decode = (buf: Uint8Array): Request => {
|
|
57
|
+
return decodeMessage(buf, Request.codec())
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export interface Response {
|
|
62
|
+
type: Response.Type
|
|
63
|
+
error?: ErrorResponse
|
|
64
|
+
streamInfo?: StreamInfo
|
|
65
|
+
identify?: IdentifyResponse
|
|
66
|
+
dht?: DHTResponse
|
|
67
|
+
peers: PeerInfo[]
|
|
68
|
+
pubsub?: PSResponse
|
|
69
|
+
peerStore?: PeerstoreResponse
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export namespace Response {
|
|
73
|
+
export enum Type {
|
|
74
|
+
OK = 'OK',
|
|
75
|
+
ERROR = 'ERROR'
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export namespace Type {
|
|
79
|
+
export const codec = () => {
|
|
80
|
+
return enumeration<typeof Type>(Type)
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export const codec = () => {
|
|
85
|
+
return message<Response>({
|
|
86
|
+
1: { name: 'type', codec: Response.Type.codec() },
|
|
87
|
+
2: { name: 'error', codec: ErrorResponse.codec(), optional: true },
|
|
88
|
+
3: { name: 'streamInfo', codec: StreamInfo.codec(), optional: true },
|
|
89
|
+
4: { name: 'identify', codec: IdentifyResponse.codec(), optional: true },
|
|
90
|
+
5: { name: 'dht', codec: DHTResponse.codec(), optional: true },
|
|
91
|
+
6: { name: 'peers', codec: PeerInfo.codec(), repeats: true },
|
|
92
|
+
7: { name: 'pubsub', codec: PSResponse.codec(), optional: true },
|
|
93
|
+
8: { name: 'peerStore', codec: PeerstoreResponse.codec(), optional: true }
|
|
94
|
+
})
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export const encode = (obj: Response): Uint8Array => {
|
|
98
|
+
return encodeMessage(obj, Response.codec())
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export const decode = (buf: Uint8Array): Response => {
|
|
102
|
+
return decodeMessage(buf, Response.codec())
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
|
|
6
106
|
export interface IdentifyResponse {
|
|
7
107
|
id: Uint8Array
|
|
8
108
|
addrs: Uint8Array[]
|
|
9
109
|
}
|
|
10
110
|
|
|
11
111
|
export namespace IdentifyResponse {
|
|
12
|
-
export const codec =
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
112
|
+
export const codec = () => {
|
|
113
|
+
return message<IdentifyResponse>({
|
|
114
|
+
1: { name: 'id', codec: bytes },
|
|
115
|
+
2: { name: 'addrs', codec: bytes, repeats: true }
|
|
116
|
+
})
|
|
117
|
+
}
|
|
16
118
|
|
|
17
119
|
export const encode = (obj: IdentifyResponse): Uint8Array => {
|
|
18
|
-
return encodeMessage(obj, IdentifyResponse.codec)
|
|
120
|
+
return encodeMessage(obj, IdentifyResponse.codec())
|
|
19
121
|
}
|
|
20
122
|
|
|
21
123
|
export const decode = (buf: Uint8Array): IdentifyResponse => {
|
|
22
|
-
return decodeMessage(buf, IdentifyResponse.codec)
|
|
124
|
+
return decodeMessage(buf, IdentifyResponse.codec())
|
|
23
125
|
}
|
|
24
126
|
}
|
|
25
127
|
|
|
@@ -30,18 +132,20 @@ export interface ConnectRequest {
|
|
|
30
132
|
}
|
|
31
133
|
|
|
32
134
|
export namespace ConnectRequest {
|
|
33
|
-
export const codec =
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
135
|
+
export const codec = () => {
|
|
136
|
+
return message<ConnectRequest>({
|
|
137
|
+
1: { name: 'peer', codec: bytes },
|
|
138
|
+
2: { name: 'addrs', codec: bytes, repeats: true },
|
|
139
|
+
3: { name: 'timeout', codec: int64, optional: true }
|
|
140
|
+
})
|
|
141
|
+
}
|
|
38
142
|
|
|
39
143
|
export const encode = (obj: ConnectRequest): Uint8Array => {
|
|
40
|
-
return encodeMessage(obj, ConnectRequest.codec)
|
|
144
|
+
return encodeMessage(obj, ConnectRequest.codec())
|
|
41
145
|
}
|
|
42
146
|
|
|
43
147
|
export const decode = (buf: Uint8Array): ConnectRequest => {
|
|
44
|
-
return decodeMessage(buf, ConnectRequest.codec)
|
|
148
|
+
return decodeMessage(buf, ConnectRequest.codec())
|
|
45
149
|
}
|
|
46
150
|
}
|
|
47
151
|
|
|
@@ -52,18 +156,20 @@ export interface StreamOpenRequest {
|
|
|
52
156
|
}
|
|
53
157
|
|
|
54
158
|
export namespace StreamOpenRequest {
|
|
55
|
-
export const codec =
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
159
|
+
export const codec = () => {
|
|
160
|
+
return message<StreamOpenRequest>({
|
|
161
|
+
1: { name: 'peer', codec: bytes },
|
|
162
|
+
2: { name: 'proto', codec: string, repeats: true },
|
|
163
|
+
3: { name: 'timeout', codec: int64, optional: true }
|
|
164
|
+
})
|
|
165
|
+
}
|
|
60
166
|
|
|
61
167
|
export const encode = (obj: StreamOpenRequest): Uint8Array => {
|
|
62
|
-
return encodeMessage(obj, StreamOpenRequest.codec)
|
|
168
|
+
return encodeMessage(obj, StreamOpenRequest.codec())
|
|
63
169
|
}
|
|
64
170
|
|
|
65
171
|
export const decode = (buf: Uint8Array): StreamOpenRequest => {
|
|
66
|
-
return decodeMessage(buf, StreamOpenRequest.codec)
|
|
172
|
+
return decodeMessage(buf, StreamOpenRequest.codec())
|
|
67
173
|
}
|
|
68
174
|
}
|
|
69
175
|
|
|
@@ -73,17 +179,19 @@ export interface StreamHandlerRequest {
|
|
|
73
179
|
}
|
|
74
180
|
|
|
75
181
|
export namespace StreamHandlerRequest {
|
|
76
|
-
export const codec =
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
182
|
+
export const codec = () => {
|
|
183
|
+
return message<StreamHandlerRequest>({
|
|
184
|
+
1: { name: 'addr', codec: bytes },
|
|
185
|
+
2: { name: 'proto', codec: string, repeats: true }
|
|
186
|
+
})
|
|
187
|
+
}
|
|
80
188
|
|
|
81
189
|
export const encode = (obj: StreamHandlerRequest): Uint8Array => {
|
|
82
|
-
return encodeMessage(obj, StreamHandlerRequest.codec)
|
|
190
|
+
return encodeMessage(obj, StreamHandlerRequest.codec())
|
|
83
191
|
}
|
|
84
192
|
|
|
85
193
|
export const decode = (buf: Uint8Array): StreamHandlerRequest => {
|
|
86
|
-
return decodeMessage(buf, StreamHandlerRequest.codec)
|
|
194
|
+
return decodeMessage(buf, StreamHandlerRequest.codec())
|
|
87
195
|
}
|
|
88
196
|
}
|
|
89
197
|
|
|
@@ -92,16 +200,18 @@ export interface ErrorResponse {
|
|
|
92
200
|
}
|
|
93
201
|
|
|
94
202
|
export namespace ErrorResponse {
|
|
95
|
-
export const codec =
|
|
96
|
-
|
|
97
|
-
|
|
203
|
+
export const codec = () => {
|
|
204
|
+
return message<ErrorResponse>({
|
|
205
|
+
1: { name: 'msg', codec: string }
|
|
206
|
+
})
|
|
207
|
+
}
|
|
98
208
|
|
|
99
209
|
export const encode = (obj: ErrorResponse): Uint8Array => {
|
|
100
|
-
return encodeMessage(obj, ErrorResponse.codec)
|
|
210
|
+
return encodeMessage(obj, ErrorResponse.codec())
|
|
101
211
|
}
|
|
102
212
|
|
|
103
213
|
export const decode = (buf: Uint8Array): ErrorResponse => {
|
|
104
|
-
return decodeMessage(buf, ErrorResponse.codec)
|
|
214
|
+
return decodeMessage(buf, ErrorResponse.codec())
|
|
105
215
|
}
|
|
106
216
|
}
|
|
107
217
|
|
|
@@ -112,18 +222,20 @@ export interface StreamInfo {
|
|
|
112
222
|
}
|
|
113
223
|
|
|
114
224
|
export namespace StreamInfo {
|
|
115
|
-
export const codec =
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
225
|
+
export const codec = () => {
|
|
226
|
+
return message<StreamInfo>({
|
|
227
|
+
1: { name: 'peer', codec: bytes },
|
|
228
|
+
2: { name: 'addr', codec: bytes },
|
|
229
|
+
3: { name: 'proto', codec: string }
|
|
230
|
+
})
|
|
231
|
+
}
|
|
120
232
|
|
|
121
233
|
export const encode = (obj: StreamInfo): Uint8Array => {
|
|
122
|
-
return encodeMessage(obj, StreamInfo.codec)
|
|
234
|
+
return encodeMessage(obj, StreamInfo.codec())
|
|
123
235
|
}
|
|
124
236
|
|
|
125
237
|
export const decode = (buf: Uint8Array): StreamInfo => {
|
|
126
|
-
return decodeMessage(buf, StreamInfo.codec)
|
|
238
|
+
return decodeMessage(buf, StreamInfo.codec())
|
|
127
239
|
}
|
|
128
240
|
}
|
|
129
241
|
|
|
@@ -151,45 +263,29 @@ export namespace DHTRequest {
|
|
|
151
263
|
}
|
|
152
264
|
|
|
153
265
|
export namespace Type {
|
|
154
|
-
export const codec =
|
|
266
|
+
export const codec = () => {
|
|
267
|
+
return enumeration<typeof Type>(Type)
|
|
268
|
+
}
|
|
155
269
|
}
|
|
156
270
|
|
|
157
|
-
export const codec =
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
271
|
+
export const codec = () => {
|
|
272
|
+
return message<DHTRequest>({
|
|
273
|
+
1: { name: 'type', codec: DHTRequest.Type.codec() },
|
|
274
|
+
2: { name: 'peer', codec: bytes, optional: true },
|
|
275
|
+
3: { name: 'cid', codec: bytes, optional: true },
|
|
276
|
+
4: { name: 'key', codec: bytes, optional: true },
|
|
277
|
+
5: { name: 'value', codec: bytes, optional: true },
|
|
278
|
+
6: { name: 'count', codec: int32, optional: true },
|
|
279
|
+
7: { name: 'timeout', codec: int64, optional: true }
|
|
280
|
+
})
|
|
281
|
+
}
|
|
166
282
|
|
|
167
283
|
export const encode = (obj: DHTRequest): Uint8Array => {
|
|
168
|
-
return encodeMessage(obj, DHTRequest.codec)
|
|
284
|
+
return encodeMessage(obj, DHTRequest.codec())
|
|
169
285
|
}
|
|
170
286
|
|
|
171
287
|
export const decode = (buf: Uint8Array): DHTRequest => {
|
|
172
|
-
return decodeMessage(buf, DHTRequest.codec)
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
export interface PeerInfo {
|
|
177
|
-
id: Uint8Array
|
|
178
|
-
addrs: Uint8Array[]
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
export namespace PeerInfo {
|
|
182
|
-
export const codec = message<PeerInfo>({
|
|
183
|
-
1: { name: 'id', codec: bytes },
|
|
184
|
-
2: { name: 'addrs', codec: bytes, repeats: true }
|
|
185
|
-
})
|
|
186
|
-
|
|
187
|
-
export const encode = (obj: PeerInfo): Uint8Array => {
|
|
188
|
-
return encodeMessage(obj, PeerInfo.codec)
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
export const decode = (buf: Uint8Array): PeerInfo => {
|
|
192
|
-
return decodeMessage(buf, PeerInfo.codec)
|
|
288
|
+
return decodeMessage(buf, DHTRequest.codec())
|
|
193
289
|
}
|
|
194
290
|
}
|
|
195
291
|
|
|
@@ -207,21 +303,47 @@ export namespace DHTResponse {
|
|
|
207
303
|
}
|
|
208
304
|
|
|
209
305
|
export namespace Type {
|
|
210
|
-
export const codec =
|
|
306
|
+
export const codec = () => {
|
|
307
|
+
return enumeration<typeof Type>(Type)
|
|
308
|
+
}
|
|
211
309
|
}
|
|
212
310
|
|
|
213
|
-
export const codec =
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
311
|
+
export const codec = () => {
|
|
312
|
+
return message<DHTResponse>({
|
|
313
|
+
1: { name: 'type', codec: DHTResponse.Type.codec() },
|
|
314
|
+
2: { name: 'peer', codec: PeerInfo.codec(), optional: true },
|
|
315
|
+
3: { name: 'value', codec: bytes, optional: true }
|
|
316
|
+
})
|
|
317
|
+
}
|
|
218
318
|
|
|
219
319
|
export const encode = (obj: DHTResponse): Uint8Array => {
|
|
220
|
-
return encodeMessage(obj, DHTResponse.codec)
|
|
320
|
+
return encodeMessage(obj, DHTResponse.codec())
|
|
221
321
|
}
|
|
222
322
|
|
|
223
323
|
export const decode = (buf: Uint8Array): DHTResponse => {
|
|
224
|
-
return decodeMessage(buf, DHTResponse.codec)
|
|
324
|
+
return decodeMessage(buf, DHTResponse.codec())
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
export interface PeerInfo {
|
|
329
|
+
id: Uint8Array
|
|
330
|
+
addrs: Uint8Array[]
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
export namespace PeerInfo {
|
|
334
|
+
export const codec = () => {
|
|
335
|
+
return message<PeerInfo>({
|
|
336
|
+
1: { name: 'id', codec: bytes },
|
|
337
|
+
2: { name: 'addrs', codec: bytes, repeats: true }
|
|
338
|
+
})
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
export const encode = (obj: PeerInfo): Uint8Array => {
|
|
342
|
+
return encodeMessage(obj, PeerInfo.codec())
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
export const decode = (buf: Uint8Array): PeerInfo => {
|
|
346
|
+
return decodeMessage(buf, PeerInfo.codec())
|
|
225
347
|
}
|
|
226
348
|
}
|
|
227
349
|
|
|
@@ -240,22 +362,26 @@ export namespace ConnManagerRequest {
|
|
|
240
362
|
}
|
|
241
363
|
|
|
242
364
|
export namespace Type {
|
|
243
|
-
export const codec =
|
|
365
|
+
export const codec = () => {
|
|
366
|
+
return enumeration<typeof Type>(Type)
|
|
367
|
+
}
|
|
244
368
|
}
|
|
245
369
|
|
|
246
|
-
export const codec =
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
370
|
+
export const codec = () => {
|
|
371
|
+
return message<ConnManagerRequest>({
|
|
372
|
+
1: { name: 'type', codec: ConnManagerRequest.Type.codec() },
|
|
373
|
+
2: { name: 'peer', codec: bytes, optional: true },
|
|
374
|
+
3: { name: 'tag', codec: string, optional: true },
|
|
375
|
+
4: { name: 'weight', codec: int64, optional: true }
|
|
376
|
+
})
|
|
377
|
+
}
|
|
252
378
|
|
|
253
379
|
export const encode = (obj: ConnManagerRequest): Uint8Array => {
|
|
254
|
-
return encodeMessage(obj, ConnManagerRequest.codec)
|
|
380
|
+
return encodeMessage(obj, ConnManagerRequest.codec())
|
|
255
381
|
}
|
|
256
382
|
|
|
257
383
|
export const decode = (buf: Uint8Array): ConnManagerRequest => {
|
|
258
|
-
return decodeMessage(buf, ConnManagerRequest.codec)
|
|
384
|
+
return decodeMessage(buf, ConnManagerRequest.codec())
|
|
259
385
|
}
|
|
260
386
|
}
|
|
261
387
|
|
|
@@ -264,16 +390,18 @@ export interface DisconnectRequest {
|
|
|
264
390
|
}
|
|
265
391
|
|
|
266
392
|
export namespace DisconnectRequest {
|
|
267
|
-
export const codec =
|
|
268
|
-
|
|
269
|
-
|
|
393
|
+
export const codec = () => {
|
|
394
|
+
return message<DisconnectRequest>({
|
|
395
|
+
1: { name: 'peer', codec: bytes }
|
|
396
|
+
})
|
|
397
|
+
}
|
|
270
398
|
|
|
271
399
|
export const encode = (obj: DisconnectRequest): Uint8Array => {
|
|
272
|
-
return encodeMessage(obj, DisconnectRequest.codec)
|
|
400
|
+
return encodeMessage(obj, DisconnectRequest.codec())
|
|
273
401
|
}
|
|
274
402
|
|
|
275
403
|
export const decode = (buf: Uint8Array): DisconnectRequest => {
|
|
276
|
-
return decodeMessage(buf, DisconnectRequest.codec)
|
|
404
|
+
return decodeMessage(buf, DisconnectRequest.codec())
|
|
277
405
|
}
|
|
278
406
|
}
|
|
279
407
|
|
|
@@ -292,21 +420,25 @@ export namespace PSRequest {
|
|
|
292
420
|
}
|
|
293
421
|
|
|
294
422
|
export namespace Type {
|
|
295
|
-
export const codec =
|
|
423
|
+
export const codec = () => {
|
|
424
|
+
return enumeration<typeof Type>(Type)
|
|
425
|
+
}
|
|
296
426
|
}
|
|
297
427
|
|
|
298
|
-
export const codec =
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
428
|
+
export const codec = () => {
|
|
429
|
+
return message<PSRequest>({
|
|
430
|
+
1: { name: 'type', codec: PSRequest.Type.codec() },
|
|
431
|
+
2: { name: 'topic', codec: string, optional: true },
|
|
432
|
+
3: { name: 'data', codec: bytes, optional: true }
|
|
433
|
+
})
|
|
434
|
+
}
|
|
303
435
|
|
|
304
436
|
export const encode = (obj: PSRequest): Uint8Array => {
|
|
305
|
-
return encodeMessage(obj, PSRequest.codec)
|
|
437
|
+
return encodeMessage(obj, PSRequest.codec())
|
|
306
438
|
}
|
|
307
439
|
|
|
308
440
|
export const decode = (buf: Uint8Array): PSRequest => {
|
|
309
|
-
return decodeMessage(buf, PSRequest.codec)
|
|
441
|
+
return decodeMessage(buf, PSRequest.codec())
|
|
310
442
|
}
|
|
311
443
|
}
|
|
312
444
|
|
|
@@ -320,21 +452,23 @@ export interface PSMessage {
|
|
|
320
452
|
}
|
|
321
453
|
|
|
322
454
|
export namespace PSMessage {
|
|
323
|
-
export const codec =
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
455
|
+
export const codec = () => {
|
|
456
|
+
return message<PSMessage>({
|
|
457
|
+
1: { name: 'from', codec: bytes, optional: true },
|
|
458
|
+
2: { name: 'data', codec: bytes, optional: true },
|
|
459
|
+
3: { name: 'seqno', codec: bytes, optional: true },
|
|
460
|
+
4: { name: 'topicIDs', codec: string, repeats: true },
|
|
461
|
+
5: { name: 'signature', codec: bytes, optional: true },
|
|
462
|
+
6: { name: 'key', codec: bytes, optional: true }
|
|
463
|
+
})
|
|
464
|
+
}
|
|
331
465
|
|
|
332
466
|
export const encode = (obj: PSMessage): Uint8Array => {
|
|
333
|
-
return encodeMessage(obj, PSMessage.codec)
|
|
467
|
+
return encodeMessage(obj, PSMessage.codec())
|
|
334
468
|
}
|
|
335
469
|
|
|
336
470
|
export const decode = (buf: Uint8Array): PSMessage => {
|
|
337
|
-
return decodeMessage(buf, PSMessage.codec)
|
|
471
|
+
return decodeMessage(buf, PSMessage.codec())
|
|
338
472
|
}
|
|
339
473
|
}
|
|
340
474
|
|
|
@@ -344,17 +478,19 @@ export interface PSResponse {
|
|
|
344
478
|
}
|
|
345
479
|
|
|
346
480
|
export namespace PSResponse {
|
|
347
|
-
export const codec =
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
481
|
+
export const codec = () => {
|
|
482
|
+
return message<PSResponse>({
|
|
483
|
+
1: { name: 'topics', codec: string, repeats: true },
|
|
484
|
+
2: { name: 'peerIDs', codec: bytes, repeats: true }
|
|
485
|
+
})
|
|
486
|
+
}
|
|
351
487
|
|
|
352
488
|
export const encode = (obj: PSResponse): Uint8Array => {
|
|
353
|
-
return encodeMessage(obj, PSResponse.codec)
|
|
489
|
+
return encodeMessage(obj, PSResponse.codec())
|
|
354
490
|
}
|
|
355
491
|
|
|
356
492
|
export const decode = (buf: Uint8Array): PSResponse => {
|
|
357
|
-
return decodeMessage(buf, PSResponse.codec)
|
|
493
|
+
return decodeMessage(buf, PSResponse.codec())
|
|
358
494
|
}
|
|
359
495
|
}
|
|
360
496
|
|
|
@@ -371,21 +507,25 @@ export namespace PeerstoreRequest {
|
|
|
371
507
|
}
|
|
372
508
|
|
|
373
509
|
export namespace Type {
|
|
374
|
-
export const codec =
|
|
510
|
+
export const codec = () => {
|
|
511
|
+
return enumeration<typeof Type>(Type)
|
|
512
|
+
}
|
|
375
513
|
}
|
|
376
514
|
|
|
377
|
-
export const codec =
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
515
|
+
export const codec = () => {
|
|
516
|
+
return message<PeerstoreRequest>({
|
|
517
|
+
1: { name: 'type', codec: PeerstoreRequest.Type.codec() },
|
|
518
|
+
2: { name: 'id', codec: bytes, optional: true },
|
|
519
|
+
3: { name: 'protos', codec: string, repeats: true }
|
|
520
|
+
})
|
|
521
|
+
}
|
|
382
522
|
|
|
383
523
|
export const encode = (obj: PeerstoreRequest): Uint8Array => {
|
|
384
|
-
return encodeMessage(obj, PeerstoreRequest.codec)
|
|
524
|
+
return encodeMessage(obj, PeerstoreRequest.codec())
|
|
385
525
|
}
|
|
386
526
|
|
|
387
527
|
export const decode = (buf: Uint8Array): PeerstoreRequest => {
|
|
388
|
-
return decodeMessage(buf, PeerstoreRequest.codec)
|
|
528
|
+
return decodeMessage(buf, PeerstoreRequest.codec())
|
|
389
529
|
}
|
|
390
530
|
}
|
|
391
531
|
|
|
@@ -395,108 +535,18 @@ export interface PeerstoreResponse {
|
|
|
395
535
|
}
|
|
396
536
|
|
|
397
537
|
export namespace PeerstoreResponse {
|
|
398
|
-
export const codec =
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
538
|
+
export const codec = () => {
|
|
539
|
+
return message<PeerstoreResponse>({
|
|
540
|
+
1: { name: 'peer', codec: PeerInfo.codec(), optional: true },
|
|
541
|
+
2: { name: 'protos', codec: string, repeats: true }
|
|
542
|
+
})
|
|
543
|
+
}
|
|
402
544
|
|
|
403
545
|
export const encode = (obj: PeerstoreResponse): Uint8Array => {
|
|
404
|
-
return encodeMessage(obj, PeerstoreResponse.codec)
|
|
546
|
+
return encodeMessage(obj, PeerstoreResponse.codec())
|
|
405
547
|
}
|
|
406
548
|
|
|
407
549
|
export const decode = (buf: Uint8Array): PeerstoreResponse => {
|
|
408
|
-
return decodeMessage(buf, PeerstoreResponse.codec)
|
|
409
|
-
}
|
|
410
|
-
}
|
|
411
|
-
|
|
412
|
-
export interface Request {
|
|
413
|
-
type: Request.Type
|
|
414
|
-
connect?: ConnectRequest
|
|
415
|
-
streamOpen?: StreamOpenRequest
|
|
416
|
-
streamHandler?: StreamHandlerRequest
|
|
417
|
-
dht?: DHTRequest
|
|
418
|
-
connManager?: ConnManagerRequest
|
|
419
|
-
disconnect?: DisconnectRequest
|
|
420
|
-
pubsub?: PSRequest
|
|
421
|
-
peerStore?: PeerstoreRequest
|
|
422
|
-
}
|
|
423
|
-
|
|
424
|
-
export namespace Request {
|
|
425
|
-
export enum Type {
|
|
426
|
-
IDENTIFY = 'IDENTIFY',
|
|
427
|
-
CONNECT = 'CONNECT',
|
|
428
|
-
STREAM_OPEN = 'STREAM_OPEN',
|
|
429
|
-
STREAM_HANDLER = 'STREAM_HANDLER',
|
|
430
|
-
DHT = 'DHT',
|
|
431
|
-
LIST_PEERS = 'LIST_PEERS',
|
|
432
|
-
CONNMANAGER = 'CONNMANAGER',
|
|
433
|
-
DISCONNECT = 'DISCONNECT',
|
|
434
|
-
PUBSUB = 'PUBSUB',
|
|
435
|
-
PEERSTORE = 'PEERSTORE'
|
|
436
|
-
}
|
|
437
|
-
|
|
438
|
-
export namespace Type {
|
|
439
|
-
export const codec = enumeration<typeof Type>(Type)
|
|
440
|
-
}
|
|
441
|
-
|
|
442
|
-
export const codec = message<Request>({
|
|
443
|
-
1: { name: 'type', codec: Request.Type.codec },
|
|
444
|
-
2: { name: 'connect', codec: ConnectRequest.codec, optional: true },
|
|
445
|
-
3: { name: 'streamOpen', codec: StreamOpenRequest.codec, optional: true },
|
|
446
|
-
4: { name: 'streamHandler', codec: StreamHandlerRequest.codec, optional: true },
|
|
447
|
-
5: { name: 'dht', codec: DHTRequest.codec, optional: true },
|
|
448
|
-
6: { name: 'connManager', codec: ConnManagerRequest.codec, optional: true },
|
|
449
|
-
7: { name: 'disconnect', codec: DisconnectRequest.codec, optional: true },
|
|
450
|
-
8: { name: 'pubsub', codec: PSRequest.codec, optional: true },
|
|
451
|
-
9: { name: 'peerStore', codec: PeerstoreRequest.codec, optional: true }
|
|
452
|
-
})
|
|
453
|
-
|
|
454
|
-
export const encode = (obj: Request): Uint8Array => {
|
|
455
|
-
return encodeMessage(obj, Request.codec)
|
|
456
|
-
}
|
|
457
|
-
|
|
458
|
-
export const decode = (buf: Uint8Array): Request => {
|
|
459
|
-
return decodeMessage(buf, Request.codec)
|
|
460
|
-
}
|
|
461
|
-
}
|
|
462
|
-
|
|
463
|
-
export interface Response {
|
|
464
|
-
type: Response.Type
|
|
465
|
-
error?: ErrorResponse
|
|
466
|
-
streamInfo?: StreamInfo
|
|
467
|
-
identify?: IdentifyResponse
|
|
468
|
-
dht?: DHTResponse
|
|
469
|
-
peers: PeerInfo[]
|
|
470
|
-
pubsub?: PSResponse
|
|
471
|
-
peerStore?: PeerstoreResponse
|
|
472
|
-
}
|
|
473
|
-
|
|
474
|
-
export namespace Response {
|
|
475
|
-
export enum Type {
|
|
476
|
-
OK = 'OK',
|
|
477
|
-
ERROR = 'ERROR'
|
|
478
|
-
}
|
|
479
|
-
|
|
480
|
-
export namespace Type {
|
|
481
|
-
export const codec = enumeration<typeof Type>(Type)
|
|
482
|
-
}
|
|
483
|
-
|
|
484
|
-
export const codec = message<Response>({
|
|
485
|
-
1: { name: 'type', codec: Response.Type.codec },
|
|
486
|
-
2: { name: 'error', codec: ErrorResponse.codec, optional: true },
|
|
487
|
-
3: { name: 'streamInfo', codec: StreamInfo.codec, optional: true },
|
|
488
|
-
4: { name: 'identify', codec: IdentifyResponse.codec, optional: true },
|
|
489
|
-
5: { name: 'dht', codec: DHTResponse.codec, optional: true },
|
|
490
|
-
6: { name: 'peers', codec: PeerInfo.codec, repeats: true },
|
|
491
|
-
7: { name: 'pubsub', codec: PSResponse.codec, optional: true },
|
|
492
|
-
8: { name: 'peerStore', codec: PeerstoreResponse.codec, optional: true }
|
|
493
|
-
})
|
|
494
|
-
|
|
495
|
-
export const encode = (obj: Response): Uint8Array => {
|
|
496
|
-
return encodeMessage(obj, Response.codec)
|
|
497
|
-
}
|
|
498
|
-
|
|
499
|
-
export const decode = (buf: Uint8Array): Response => {
|
|
500
|
-
return decodeMessage(buf, Response.codec)
|
|
550
|
+
return decodeMessage(buf, PeerstoreResponse.codec())
|
|
501
551
|
}
|
|
502
552
|
}
|