@libp2p/dcutr 3.0.13 → 3.0.14
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 +1 -1
- package/dist/index.min.js.map +4 -4
- package/dist/src/pb/message.d.ts +12 -2
- package/dist/src/pb/message.d.ts.map +1 -1
- package/dist/src/pb/message.js +46 -7
- package/dist/src/pb/message.js.map +1 -1
- package/package.json +6 -6
- package/src/pb/message.ts +59 -5
package/dist/src/pb/message.d.ts
CHANGED
|
@@ -14,7 +14,17 @@ export declare namespace HolePunch {
|
|
|
14
14
|
const codec: () => Codec<Type>;
|
|
15
15
|
}
|
|
16
16
|
const codec: () => Codec<HolePunch>;
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
interface HolePunchTypeFieldEvent {
|
|
18
|
+
field: '$.type';
|
|
19
|
+
value: HolePunch.Type;
|
|
20
|
+
}
|
|
21
|
+
interface HolePunchObservedAddressesFieldEvent {
|
|
22
|
+
field: '$.observedAddresses[]';
|
|
23
|
+
index: number;
|
|
24
|
+
value: Uint8Array;
|
|
25
|
+
}
|
|
26
|
+
function encode(obj: Partial<HolePunch>): Uint8Array;
|
|
27
|
+
function decode(buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<HolePunch>): HolePunch;
|
|
28
|
+
function stream(buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<HolePunch>): Generator<HolePunchTypeFieldEvent | HolePunchObservedAddressesFieldEvent>;
|
|
19
29
|
}
|
|
20
30
|
//# sourceMappingURL=message.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/pb/message.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,SAAS,CAAC,IAAI,CAAA;IACrB,iBAAiB,EAAE,UAAU,EAAE,CAAA;CAChC;AAED,yBAAiB,SAAS,CAAC;IACzB,KAAY,IAAI;QACd,MAAM,WAAW;QACjB,OAAO,YAAY;QACnB,IAAI,SAAS;KACd;IAQD,UAAiB,IAAI,CAAC;QACb,MAAM,KAAK,QAAO,KAAK,CAAC,IAAI,CAElC,CAAA;KACF;IAIM,MAAM,KAAK,QAAO,KAAK,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/pb/message.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,SAAS,CAAC,IAAI,CAAA;IACrB,iBAAiB,EAAE,UAAU,EAAE,CAAA;CAChC;AAED,yBAAiB,SAAS,CAAC;IACzB,KAAY,IAAI;QACd,MAAM,WAAW;QACjB,OAAO,YAAY;QACnB,IAAI,SAAS;KACd;IAQD,UAAiB,IAAI,CAAC;QACb,MAAM,KAAK,QAAO,KAAK,CAAC,IAAI,CAElC,CAAA;KACF;IAIM,MAAM,KAAK,QAAO,KAAK,CAAC,SAAS,CAgGvC,CAAA;IAED,UAAiB,uBAAuB;QACtC,KAAK,EAAE,QAAQ,CAAA;QACf,KAAK,EAAE,SAAS,CAAC,IAAI,CAAA;KACtB;IAED,UAAiB,oCAAoC;QACnD,KAAK,EAAE,uBAAuB,CAAA;QAC9B,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,UAAU,CAAA;KAClB;IAED,SAAgB,MAAM,CAAE,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,UAAU,CAE3D;IAED,SAAgB,MAAM,CAAE,GAAG,EAAE,UAAU,GAAG,cAAc,EAAE,IAAI,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,SAAS,CAEpG;IAED,SAAgB,MAAM,CAAE,GAAG,EAAE,UAAU,GAAG,cAAc,EAAE,IAAI,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,uBAAuB,GAAG,oCAAoC,CAAC,CAEpK;CACF"}
|
package/dist/src/pb/message.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { decodeMessage, encodeMessage, enumeration, MaxLengthError, message } from 'protons-runtime';
|
|
1
|
+
import { decodeMessage, encodeMessage, enumeration, MaxLengthError, message, streamMessage } from 'protons-runtime';
|
|
2
2
|
export var HolePunch;
|
|
3
3
|
(function (HolePunch) {
|
|
4
4
|
let Type;
|
|
@@ -29,7 +29,7 @@ export var HolePunch;
|
|
|
29
29
|
w.uint32(8);
|
|
30
30
|
HolePunch.Type.codec().encode(obj.type, w);
|
|
31
31
|
}
|
|
32
|
-
if (obj.observedAddresses != null) {
|
|
32
|
+
if (obj.observedAddresses != null && obj.observedAddresses.length > 0) {
|
|
33
33
|
for (const value of obj.observedAddresses) {
|
|
34
34
|
w.uint32(18);
|
|
35
35
|
w.bytes(value);
|
|
@@ -52,7 +52,7 @@ export var HolePunch;
|
|
|
52
52
|
}
|
|
53
53
|
case 2: {
|
|
54
54
|
if (opts.limits?.observedAddresses != null && obj.observedAddresses.length === opts.limits.observedAddresses) {
|
|
55
|
-
throw new MaxLengthError('Decode error -
|
|
55
|
+
throw new MaxLengthError('Decode error - repeated field "observedAddresses" had too many elements');
|
|
56
56
|
}
|
|
57
57
|
obj.observedAddresses.push(reader.bytes());
|
|
58
58
|
break;
|
|
@@ -64,15 +64,54 @@ export var HolePunch;
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
return obj;
|
|
67
|
+
}, function* (reader, length, prefix, opts = {}) {
|
|
68
|
+
const obj = {
|
|
69
|
+
observedAddresses: 0
|
|
70
|
+
};
|
|
71
|
+
const end = length == null ? reader.len : reader.pos + length;
|
|
72
|
+
while (reader.pos < end) {
|
|
73
|
+
const tag = reader.uint32();
|
|
74
|
+
switch (tag >>> 3) {
|
|
75
|
+
case 1: {
|
|
76
|
+
yield {
|
|
77
|
+
field: `${prefix}.type`,
|
|
78
|
+
value: HolePunch.Type.codec().decode(reader)
|
|
79
|
+
};
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
case 2: {
|
|
83
|
+
if (opts.limits?.observedAddresses != null && obj.observedAddresses === opts.limits.observedAddresses) {
|
|
84
|
+
throw new MaxLengthError('Streaming decode error - repeated field "observedAddresses" had too many elements');
|
|
85
|
+
}
|
|
86
|
+
yield {
|
|
87
|
+
field: `${prefix}.observedAddresses[]`,
|
|
88
|
+
index: obj.observedAddresses,
|
|
89
|
+
value: reader.bytes()
|
|
90
|
+
};
|
|
91
|
+
obj.observedAddresses++;
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
default: {
|
|
95
|
+
reader.skipType(tag & 7);
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
67
100
|
});
|
|
68
101
|
}
|
|
69
102
|
return _codec;
|
|
70
103
|
};
|
|
71
|
-
|
|
104
|
+
function encode(obj) {
|
|
72
105
|
return encodeMessage(obj, HolePunch.codec());
|
|
73
|
-
}
|
|
74
|
-
HolePunch.
|
|
106
|
+
}
|
|
107
|
+
HolePunch.encode = encode;
|
|
108
|
+
function decode(buf, opts) {
|
|
75
109
|
return decodeMessage(buf, HolePunch.codec(), opts);
|
|
76
|
-
}
|
|
110
|
+
}
|
|
111
|
+
HolePunch.decode = decode;
|
|
112
|
+
function stream(buf, opts) {
|
|
113
|
+
return streamMessage(buf, HolePunch.codec(), opts);
|
|
114
|
+
}
|
|
115
|
+
HolePunch.stream = stream;
|
|
77
116
|
})(HolePunch || (HolePunch = {}));
|
|
78
117
|
//# sourceMappingURL=message.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/pb/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/pb/message.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libp2p/dcutr",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.14",
|
|
4
4
|
"description": "Implementation of the DCUtR Protocol",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/protocol-dcutr#readme",
|
|
@@ -45,18 +45,18 @@
|
|
|
45
45
|
"doc-check": "aegir doc-check"
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@libp2p/interface": "^3.1.
|
|
49
|
-
"@libp2p/interface-internal": "^3.0.
|
|
50
|
-
"@libp2p/utils": "^7.0.
|
|
48
|
+
"@libp2p/interface": "^3.1.1",
|
|
49
|
+
"@libp2p/interface-internal": "^3.0.14",
|
|
50
|
+
"@libp2p/utils": "^7.0.14",
|
|
51
51
|
"@multiformats/multiaddr": "^13.0.1",
|
|
52
52
|
"@multiformats/multiaddr-matcher": "^3.0.1",
|
|
53
53
|
"delay": "^7.0.0",
|
|
54
|
-
"protons-runtime": "^
|
|
54
|
+
"protons-runtime": "^6.0.1",
|
|
55
55
|
"uint8arraylist": "^2.4.8"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"aegir": "^47.0.22",
|
|
59
|
-
"protons": "^
|
|
59
|
+
"protons": "^8.1.1",
|
|
60
60
|
"sinon": "^21.0.0",
|
|
61
61
|
"sinon-ts": "^2.0.0"
|
|
62
62
|
},
|
package/src/pb/message.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { decodeMessage, encodeMessage, enumeration, MaxLengthError, message } from 'protons-runtime'
|
|
1
|
+
import { decodeMessage, encodeMessage, enumeration, MaxLengthError, message, streamMessage } from 'protons-runtime'
|
|
2
2
|
import type { Codec, DecodeOptions } from 'protons-runtime'
|
|
3
3
|
import type { Uint8ArrayList } from 'uint8arraylist'
|
|
4
4
|
|
|
@@ -40,7 +40,7 @@ export namespace HolePunch {
|
|
|
40
40
|
HolePunch.Type.codec().encode(obj.type, w)
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
if (obj.observedAddresses != null) {
|
|
43
|
+
if (obj.observedAddresses != null && obj.observedAddresses.length > 0) {
|
|
44
44
|
for (const value of obj.observedAddresses) {
|
|
45
45
|
w.uint32(18)
|
|
46
46
|
w.bytes(value)
|
|
@@ -67,7 +67,7 @@ export namespace HolePunch {
|
|
|
67
67
|
}
|
|
68
68
|
case 2: {
|
|
69
69
|
if (opts.limits?.observedAddresses != null && obj.observedAddresses.length === opts.limits.observedAddresses) {
|
|
70
|
-
throw new MaxLengthError('Decode error -
|
|
70
|
+
throw new MaxLengthError('Decode error - repeated field "observedAddresses" had too many elements')
|
|
71
71
|
}
|
|
72
72
|
|
|
73
73
|
obj.observedAddresses.push(reader.bytes())
|
|
@@ -81,17 +81,71 @@ export namespace HolePunch {
|
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
return obj
|
|
84
|
+
}, function * (reader, length, prefix, opts = {}) {
|
|
85
|
+
const obj = {
|
|
86
|
+
observedAddresses: 0
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
const end = length == null ? reader.len : reader.pos + length
|
|
90
|
+
|
|
91
|
+
while (reader.pos < end) {
|
|
92
|
+
const tag = reader.uint32()
|
|
93
|
+
|
|
94
|
+
switch (tag >>> 3) {
|
|
95
|
+
case 1: {
|
|
96
|
+
yield {
|
|
97
|
+
field: `${prefix}.type`,
|
|
98
|
+
value: HolePunch.Type.codec().decode(reader)
|
|
99
|
+
}
|
|
100
|
+
break
|
|
101
|
+
}
|
|
102
|
+
case 2: {
|
|
103
|
+
if (opts.limits?.observedAddresses != null && obj.observedAddresses === opts.limits.observedAddresses) {
|
|
104
|
+
throw new MaxLengthError('Streaming decode error - repeated field "observedAddresses" had too many elements')
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
yield {
|
|
108
|
+
field: `${prefix}.observedAddresses[]`,
|
|
109
|
+
index: obj.observedAddresses,
|
|
110
|
+
value: reader.bytes()
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
obj.observedAddresses++
|
|
114
|
+
|
|
115
|
+
break
|
|
116
|
+
}
|
|
117
|
+
default: {
|
|
118
|
+
reader.skipType(tag & 7)
|
|
119
|
+
break
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
84
123
|
})
|
|
85
124
|
}
|
|
86
125
|
|
|
87
126
|
return _codec
|
|
88
127
|
}
|
|
89
128
|
|
|
90
|
-
export
|
|
129
|
+
export interface HolePunchTypeFieldEvent {
|
|
130
|
+
field: '$.type'
|
|
131
|
+
value: HolePunch.Type
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
export interface HolePunchObservedAddressesFieldEvent {
|
|
135
|
+
field: '$.observedAddresses[]'
|
|
136
|
+
index: number
|
|
137
|
+
value: Uint8Array
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
export function encode (obj: Partial<HolePunch>): Uint8Array {
|
|
91
141
|
return encodeMessage(obj, HolePunch.codec())
|
|
92
142
|
}
|
|
93
143
|
|
|
94
|
-
export
|
|
144
|
+
export function decode (buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<HolePunch>): HolePunch {
|
|
95
145
|
return decodeMessage(buf, HolePunch.codec(), opts)
|
|
96
146
|
}
|
|
147
|
+
|
|
148
|
+
export function stream (buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<HolePunch>): Generator<HolePunchTypeFieldEvent | HolePunchObservedAddressesFieldEvent> {
|
|
149
|
+
return streamMessage(buf, HolePunch.codec(), opts)
|
|
150
|
+
}
|
|
97
151
|
}
|