@libp2p/peer-collections 2.0.0 → 2.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.
- package/dist/src/list.d.ts +1 -1
- package/dist/src/list.d.ts.map +1 -1
- package/dist/src/list.js.map +1 -1
- package/dist/src/map.d.ts.map +1 -1
- package/dist/src/set.d.ts +3 -0
- package/dist/src/set.d.ts.map +1 -1
- package/dist/src/set.js +28 -0
- package/dist/src/set.js.map +1 -1
- package/package.json +1 -1
- package/src/list.ts +6 -6
- package/src/map.ts +6 -6
- package/src/set.ts +44 -6
package/dist/src/list.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ import type { PeerId } from '@libp2p/interface-peer-id';
|
|
|
9
9
|
*/
|
|
10
10
|
export declare class PeerList {
|
|
11
11
|
private readonly list;
|
|
12
|
-
constructor(list?: PeerList);
|
|
12
|
+
constructor(list?: PeerList | Iterable<PeerId>);
|
|
13
13
|
[Symbol.iterator](): IterableIterator<PeerId>;
|
|
14
14
|
concat(list: PeerList): PeerList;
|
|
15
15
|
entries(): IterableIterator<[number, PeerId]>;
|
package/dist/src/list.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAIvD;;;;;;;GAOG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;gBAElB,IAAI,CAAC,EAAE,QAAQ;
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAIvD;;;;;;;GAOG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;gBAElB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;IAU/C,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAK,gBAAgB,CAAC,MAAM,CAAC;IAS9C,MAAM,CAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ;IAUjC,OAAO,IAAK,gBAAgB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAS9C,KAAK,CAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,GAAG,OAAO;IAMrF,MAAM,CAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,GAAG,QAAQ;IAcvF,IAAI,CAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,GAAG,MAAM,GAAG,SAAS;IAY/F,SAAS,CAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,GAAG,MAAM;IAMxF,OAAO,CAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,KAAK,IAAI,GAAG,IAAI;IAMjF,QAAQ,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAIlC,OAAO,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAIhC,GAAG,IAAK,MAAM,GAAG,SAAS;IAU1B,IAAI,CAAE,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAMjC,KAAK,IAAK,MAAM,GAAG,SAAS;IAU5B,OAAO,CAAE,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM;IAUtC,IAAI,MAAM,IAAK,MAAM,CAEpB;CACF"}
|
package/dist/src/list.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/list.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAEvC;;;;;;;GAOG;AACH,MAAM,OAAO,QAAQ;IAGnB,YAAa,
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/list.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAEvC;;;;;;;GAOG;AACH,MAAM,OAAO,QAAQ;IAGnB,YAAa,IAAkC;QAC7C,IAAI,CAAC,IAAI,GAAG,EAAE,CAAA;QAEd,IAAI,IAAI,IAAI,IAAI,EAAE;YAChB,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE;gBACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;aACjC;SACF;IACH,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,WAAW,CAChB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EACnB,CAAC,GAAG,EAAE,EAAE;YACN,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QACjC,CAAC,CACF,CAAA;IACH,CAAC;IAED,MAAM,CAAE,IAAc;QACpB,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;QAEjC,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE;YACxB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;SACnB;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,OAAO;QACL,OAAO,WAAW,CAChB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EACnB,CAAC,GAAG,EAAE,EAAE;YACN,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3C,CAAC,CACF,CAAA;IACH,CAAC;IAED,KAAK,CAAE,SAAoE;QACzE,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACpC,OAAO,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAE,SAAoE;QAC1E,MAAM,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAA;QAE7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;YAEpC,IAAI,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE;gBAClC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;aACpB;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,CAAE,SAAoE;QACxE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACxC,OAAO,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;QAEF,IAAI,GAAG,IAAI,IAAI,EAAE;YACf,OAAO,SAAS,CAAA;SACjB;QAED,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC;IAED,SAAS,CAAE,SAAoE;QAC7E,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACxC,OAAO,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,CAAE,SAAiE;QACxE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC/B,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,QAAQ,CAAE,MAAc;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC9C,CAAC;IAED,OAAO,CAAE,MAAc;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC7C,CAAC;IAED,GAAG;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;QAE3B,IAAI,GAAG,IAAI,IAAI,EAAE;YACf,OAAO,SAAS,CAAA;SACjB;QAED,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC;IAED,IAAI,CAAE,GAAG,OAAiB;QACxB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;SAClC;IACH,CAAC;IAED,KAAK;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;QAE7B,IAAI,GAAG,IAAI,IAAI,EAAE;YACf,OAAO,SAAS,CAAA;SACjB;QAED,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC;IAED,OAAO,CAAE,GAAG,OAAiB;QAC3B,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;QAE1B,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC5C,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;SAC/C;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;IACzB,CAAC;CACF"}
|
package/dist/src/map.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../src/map.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAIvD;;;;;;;GAOG;AACH,qBAAa,OAAO,CAAE,CAAC;IACrB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;gBAEvB,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAU7B,CAAC,MAAM,CAAC,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../src/map.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAIvD;;;;;;;GAOG;AACH,qBAAa,OAAO,CAAE,CAAC;IACrB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;gBAEvB,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAU7B,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAK,gBAAgB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAInD,KAAK,IAAK,IAAI;IAId,MAAM,CAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAI3B,OAAO,IAAK,gBAAgB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IASzC,OAAO,CAAE,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI;IAMpE,GAAG,CAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAIjC,GAAG,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAI3B,GAAG,CAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAIlC,IAAI,IAAK,gBAAgB,CAAC,MAAM,CAAC;IASjC,MAAM,IAAK,gBAAgB,CAAC,CAAC,CAAC;IAI9B,IAAI,IAAI,IAAK,MAAM,CAElB;CACF"}
|
package/dist/src/set.d.ts
CHANGED
|
@@ -19,5 +19,8 @@ export declare class PeerSet {
|
|
|
19
19
|
forEach(predicate: (peerId: PeerId, index: PeerId, set: PeerSet) => void): void;
|
|
20
20
|
has(peer: PeerId): boolean;
|
|
21
21
|
values(): IterableIterator<PeerId>;
|
|
22
|
+
intersection(other: PeerSet): PeerSet;
|
|
23
|
+
difference(other: PeerSet): PeerSet;
|
|
24
|
+
union(other: PeerSet): PeerSet;
|
|
22
25
|
}
|
|
23
26
|
//# sourceMappingURL=set.d.ts.map
|
package/dist/src/set.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set.d.ts","sourceRoot":"","sources":["../../src/set.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAIvD;;;;;;;GAOG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;gBAEpB,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC;IAU7C,IAAI,IAAI,
|
|
1
|
+
{"version":3,"file":"set.d.ts","sourceRoot":"","sources":["../../src/set.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAIvD;;;;;;;GAOG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;gBAEpB,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC;IAU7C,IAAI,IAAI,IAAK,MAAM,CAElB;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAK,gBAAgB,CAAC,MAAM,CAAC;IAI9C,GAAG,CAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIxB,KAAK,IAAK,IAAI;IAId,MAAM,CAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAI3B,OAAO,IAAK,gBAAgB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAW9C,OAAO,CAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAQhF,GAAG,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAI3B,MAAM,IAAK,gBAAgB,CAAC,MAAM,CAAC;IASnC,YAAY,CAAE,KAAK,EAAE,OAAO,GAAG,OAAO;IAYtC,UAAU,CAAE,KAAK,EAAE,OAAO,GAAG,OAAO;IAYpC,KAAK,CAAE,KAAK,EAAE,OAAO,GAAG,OAAO;CAahC"}
|
package/dist/src/set.js
CHANGED
|
@@ -52,5 +52,33 @@ export class PeerSet {
|
|
|
52
52
|
return peerIdFromString(val);
|
|
53
53
|
});
|
|
54
54
|
}
|
|
55
|
+
intersection(other) {
|
|
56
|
+
const output = new PeerSet();
|
|
57
|
+
for (const peerId of other) {
|
|
58
|
+
if (this.has(peerId)) {
|
|
59
|
+
output.add(peerId);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return output;
|
|
63
|
+
}
|
|
64
|
+
difference(other) {
|
|
65
|
+
const output = new PeerSet();
|
|
66
|
+
for (const peerId of this) {
|
|
67
|
+
if (!other.has(peerId)) {
|
|
68
|
+
output.add(peerId);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return output;
|
|
72
|
+
}
|
|
73
|
+
union(other) {
|
|
74
|
+
const output = new PeerSet();
|
|
75
|
+
for (const peerId of other) {
|
|
76
|
+
output.add(peerId);
|
|
77
|
+
}
|
|
78
|
+
for (const peerId of this) {
|
|
79
|
+
output.add(peerId);
|
|
80
|
+
}
|
|
81
|
+
return output;
|
|
82
|
+
}
|
|
55
83
|
}
|
|
56
84
|
//# sourceMappingURL=set.js.map
|
package/dist/src/set.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../src/set.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAEvC;;;;;;;GAOG;AACH,MAAM,OAAO,OAAO;IAGlB,YAAa,GAAgC;QAC3C,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAA;QAEpB,IAAI,GAAG,IAAI,IAAI,EAAE;YACf,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;gBACrB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;aAC7B;SACF;IACH,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAA;IACtB,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;IACtB,CAAC;IAED,GAAG,CAAE,IAAY;QACf,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC/B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAA;IAClB,CAAC;IAED,MAAM,CAAE,IAAY;QAClB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IAClC,CAAC;IAED,OAAO;QACL,OAAO,WAAW,CAChB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,EAClB,CAAC,GAAG,EAAE,EAAE;YACN,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YAEvC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACzB,CAAC,CACF,CAAA;IACH,CAAC;IAED,OAAO,CAAE,SAAgE;QACvE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACvB,MAAM,EAAE,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;YAEhC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAA;QACzB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,GAAG,CAAE,IAAY;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IACtC,CAAC;IAED,MAAM;QACJ,OAAO,WAAW,CAChB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EACjB,CAAC,GAAG,EAAE,EAAE;YACN,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAA;QAC9B,CAAC,CACF,CAAA;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../src/set.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/list.ts
CHANGED
|
@@ -13,7 +13,7 @@ import { mapIterable } from './util.js'
|
|
|
13
13
|
export class PeerList {
|
|
14
14
|
private readonly list: string[]
|
|
15
15
|
|
|
16
|
-
constructor (list?: PeerList) {
|
|
16
|
+
constructor (list?: PeerList | Iterable<PeerId>) {
|
|
17
17
|
this.list = []
|
|
18
18
|
|
|
19
19
|
if (list != null) {
|
|
@@ -23,7 +23,7 @@ export class PeerList {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
[Symbol.iterator] () {
|
|
26
|
+
[Symbol.iterator] (): IterableIterator<PeerId> {
|
|
27
27
|
return mapIterable<[number, string], PeerId>(
|
|
28
28
|
this.list.entries(),
|
|
29
29
|
(val) => {
|
|
@@ -32,7 +32,7 @@ export class PeerList {
|
|
|
32
32
|
)
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
-
concat (list: PeerList) {
|
|
35
|
+
concat (list: PeerList): PeerList {
|
|
36
36
|
const output = new PeerList(this)
|
|
37
37
|
|
|
38
38
|
for (const value of list) {
|
|
@@ -113,7 +113,7 @@ export class PeerList {
|
|
|
113
113
|
return peerIdFromString(str)
|
|
114
114
|
}
|
|
115
115
|
|
|
116
|
-
push (...peerIds: PeerId[]) {
|
|
116
|
+
push (...peerIds: PeerId[]): void {
|
|
117
117
|
for (const peerId of peerIds) {
|
|
118
118
|
this.list.push(peerId.toString())
|
|
119
119
|
}
|
|
@@ -129,7 +129,7 @@ export class PeerList {
|
|
|
129
129
|
return peerIdFromString(str)
|
|
130
130
|
}
|
|
131
131
|
|
|
132
|
-
unshift (...peerIds: PeerId[]) {
|
|
132
|
+
unshift (...peerIds: PeerId[]): number {
|
|
133
133
|
let len = this.list.length
|
|
134
134
|
|
|
135
135
|
for (let i = peerIds.length - 1; i > -1; i--) {
|
|
@@ -139,7 +139,7 @@ export class PeerList {
|
|
|
139
139
|
return len
|
|
140
140
|
}
|
|
141
141
|
|
|
142
|
-
get length () {
|
|
142
|
+
get length (): number {
|
|
143
143
|
return this.list.length
|
|
144
144
|
}
|
|
145
145
|
}
|
package/src/map.ts
CHANGED
|
@@ -23,15 +23,15 @@ export class PeerMap <T> {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
[Symbol.iterator] () {
|
|
26
|
+
[Symbol.iterator] (): IterableIterator<[PeerId, T]> {
|
|
27
27
|
return this.entries()
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
clear () {
|
|
30
|
+
clear (): void {
|
|
31
31
|
this.map.clear()
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
delete (peer: PeerId) {
|
|
34
|
+
delete (peer: PeerId): void {
|
|
35
35
|
this.map.delete(peer.toString())
|
|
36
36
|
}
|
|
37
37
|
|
|
@@ -58,7 +58,7 @@ export class PeerMap <T> {
|
|
|
58
58
|
return this.map.has(peer.toString())
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
set (peer: PeerId, value: T) {
|
|
61
|
+
set (peer: PeerId, value: T): void {
|
|
62
62
|
this.map.set(peer.toString(), value)
|
|
63
63
|
}
|
|
64
64
|
|
|
@@ -71,11 +71,11 @@ export class PeerMap <T> {
|
|
|
71
71
|
)
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
-
values () {
|
|
74
|
+
values (): IterableIterator<T> {
|
|
75
75
|
return this.map.values()
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
-
get size () {
|
|
78
|
+
get size (): number {
|
|
79
79
|
return this.map.size
|
|
80
80
|
}
|
|
81
81
|
}
|
package/src/set.ts
CHANGED
|
@@ -23,23 +23,23 @@ export class PeerSet {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
get size () {
|
|
26
|
+
get size (): number {
|
|
27
27
|
return this.set.size
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
[Symbol.iterator] () {
|
|
30
|
+
[Symbol.iterator] (): IterableIterator<PeerId> {
|
|
31
31
|
return this.values()
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
add (peer: PeerId) {
|
|
34
|
+
add (peer: PeerId): void {
|
|
35
35
|
this.set.add(peer.toString())
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
clear () {
|
|
38
|
+
clear (): void {
|
|
39
39
|
this.set.clear()
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
delete (peer: PeerId) {
|
|
42
|
+
delete (peer: PeerId): void {
|
|
43
43
|
this.set.delete(peer.toString())
|
|
44
44
|
}
|
|
45
45
|
|
|
@@ -66,7 +66,7 @@ export class PeerSet {
|
|
|
66
66
|
return this.set.has(peer.toString())
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
-
values () {
|
|
69
|
+
values (): IterableIterator<PeerId> {
|
|
70
70
|
return mapIterable<string, PeerId>(
|
|
71
71
|
this.set.values(),
|
|
72
72
|
(val) => {
|
|
@@ -74,4 +74,42 @@ export class PeerSet {
|
|
|
74
74
|
}
|
|
75
75
|
)
|
|
76
76
|
}
|
|
77
|
+
|
|
78
|
+
intersection (other: PeerSet): PeerSet {
|
|
79
|
+
const output = new PeerSet()
|
|
80
|
+
|
|
81
|
+
for (const peerId of other) {
|
|
82
|
+
if (this.has(peerId)) {
|
|
83
|
+
output.add(peerId)
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
return output
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
difference (other: PeerSet): PeerSet {
|
|
91
|
+
const output = new PeerSet()
|
|
92
|
+
|
|
93
|
+
for (const peerId of this) {
|
|
94
|
+
if (!other.has(peerId)) {
|
|
95
|
+
output.add(peerId)
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
return output
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
union (other: PeerSet): PeerSet {
|
|
103
|
+
const output = new PeerSet()
|
|
104
|
+
|
|
105
|
+
for (const peerId of other) {
|
|
106
|
+
output.add(peerId)
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
for (const peerId of this) {
|
|
110
|
+
output.add(peerId)
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
return output
|
|
114
|
+
}
|
|
77
115
|
}
|