@peerbit/stream-interface 5.2.5 → 5.2.7-0fddff8
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/index.d.ts +20 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/keys.d.ts +7 -0
- package/dist/src/keys.d.ts.map +1 -0
- package/dist/src/keys.js +29 -0
- package/dist/src/keys.js.map +1 -0
- package/dist/src/messages.d.ts +4 -4
- package/dist/src/messages.d.ts.map +1 -1
- package/dist/src/messages.js +5 -17
- package/dist/src/messages.js.map +1 -1
- package/package.json +78 -78
- package/src/index.ts +33 -4
- package/src/keys.ts +40 -0
- package/src/messages.ts +7 -34
package/dist/src/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import type { PeerId } from "@libp2p/interface";
|
|
2
1
|
import type { PublicSignKey } from "@peerbit/crypto";
|
|
2
|
+
import type { PeerRefs } from "./keys.js";
|
|
3
3
|
import type { DataMessage, Message } from "./messages.js";
|
|
4
|
+
export * from "./keys.js";
|
|
4
5
|
export interface PeerEvents {
|
|
5
6
|
"peer:session": CustomEvent<PublicSignKey>;
|
|
6
7
|
"peer:reachable": CustomEvent<PublicSignKey>;
|
|
@@ -13,10 +14,25 @@ export interface StreamEvents extends PeerEvents, MessageEvents {
|
|
|
13
14
|
data: CustomEvent<DataMessage>;
|
|
14
15
|
}
|
|
15
16
|
export * from "./messages.js";
|
|
17
|
+
export type Target = "neighbor" | "reachable";
|
|
18
|
+
export type Settle = "any" | "all";
|
|
19
|
+
export interface WaitForBaseOpts {
|
|
20
|
+
settle?: Settle;
|
|
21
|
+
timeout?: number;
|
|
22
|
+
signal?: AbortSignal;
|
|
23
|
+
allowSelf?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export interface WaitForPresentOpts extends WaitForBaseOpts {
|
|
26
|
+
seek: "present";
|
|
27
|
+
target?: "neighbor";
|
|
28
|
+
}
|
|
29
|
+
export interface WaitForAnyOpts extends WaitForBaseOpts {
|
|
30
|
+
seek?: "any";
|
|
31
|
+
target?: Target;
|
|
32
|
+
}
|
|
33
|
+
export type WaitForPeersFn = (peer: PeerRefs, options?: WaitForPresentOpts | WaitForAnyOpts) => Promise<string[]>;
|
|
16
34
|
export interface WaitForPeer {
|
|
17
|
-
waitFor(peer:
|
|
18
|
-
signal?: AbortSignal;
|
|
19
|
-
}): Promise<void>;
|
|
35
|
+
waitFor(peer: PeerRefs, options?: WaitForPresentOpts | WaitForAnyOpts): Promise<string[]>;
|
|
20
36
|
}
|
|
21
37
|
export interface PublicKeyFromHashResolver {
|
|
22
38
|
getPublicKey(hash: string): PublicSignKey | undefined | Promise<PublicSignKey | undefined>;
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE1D,cAAc,WAAW,CAAC;AAE1B,MAAM,WAAW,UAAU;IAC1B,cAAc,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC3C,gBAAgB,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC7C,kBAAkB,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CAC9B;AACD,MAAM,WAAW,YAAa,SAAQ,UAAU,EAAE,aAAa;IAC9D,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;CAC/B;AAED,cAAc,eAAe,CAAC;AAG9B,MAAM,MAAM,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;AAC9C,MAAM,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AAEnC,MAAM,WAAW,eAAe;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAGD,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAC1D,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,CAAC;CAEpB;AAGD,MAAM,WAAW,cAAe,SAAQ,eAAe;IACtD,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,MAAM,cAAc,GAAG,CAC5B,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE,kBAAkB,GAAG,cAAc,KACzC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AACvB,MAAM,WAAW,WAAW;IAC3B,OAAO,CACN,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE,kBAAkB,GAAG,cAAc,GAC3C,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACzC,YAAY,CACX,IAAI,EAAE,MAAM,GACV,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;CAClE;AAED,qBAAa,eAAgB,SAAQ,KAAK;;CAIzC;AAED,qBAAa,aAAc,SAAQ,KAAK;CAAG;AAC3C,qBAAa,mBAAoB,SAAQ,KAAK;CAAG"}
|
package/dist/src/index.js
CHANGED
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,WAAW,CAAC;AAe1B,cAAc,eAAe,CAAC;AA0C9B,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACzC;QACC,KAAK,CAAC,aAAa,CAAC,CAAC;IACtB,CAAC;CACD;AAED,MAAM,OAAO,aAAc,SAAQ,KAAK;CAAG;AAC3C,MAAM,OAAO,mBAAoB,SAAQ,KAAK;CAAG"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type PeerId } from "@libp2p/interface";
|
|
2
|
+
import { PublicSignKey } from "@peerbit/crypto";
|
|
3
|
+
export type PeerRef = PeerId | PublicSignKey | string;
|
|
4
|
+
export type PeerRefs = PeerRef | PeerRef[] | Set<string> | IterableIterator<PeerRef>;
|
|
5
|
+
export declare const coercePeerRefToHash: (to: PeerRef) => string;
|
|
6
|
+
export declare const coercePeerRefsToHashes: (tos: PeerRefs) => string[];
|
|
7
|
+
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAY,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAA0B,MAAM,iBAAiB,CAAC;AAExE,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,aAAa,GAAG,MAAM,CAAC;AACtD,MAAM,MAAM,QAAQ,GACjB,OAAO,GACP,OAAO,EAAE,GACT,GAAG,CAAC,MAAM,CAAC,GACX,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAE7B,eAAO,MAAM,mBAAmB,GAAI,IAAI,OAAO,WAM9C,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,KAAK,QAAQ,aAqBnD,CAAC"}
|
package/dist/src/keys.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { isPeerId } from "@libp2p/interface";
|
|
2
|
+
import { PublicSignKey, getPublicKeyFromPeerId } from "@peerbit/crypto";
|
|
3
|
+
export const coercePeerRefToHash = (to) => {
|
|
4
|
+
return to instanceof PublicSignKey
|
|
5
|
+
? to.hashcode()
|
|
6
|
+
: typeof to === "string"
|
|
7
|
+
? to
|
|
8
|
+
: getPublicKeyFromPeerId(to).hashcode();
|
|
9
|
+
};
|
|
10
|
+
export const coercePeerRefsToHashes = (tos) => {
|
|
11
|
+
if (isPeerId(tos) ||
|
|
12
|
+
tos instanceof PublicSignKey ||
|
|
13
|
+
typeof tos === "string") {
|
|
14
|
+
return [coercePeerRefToHash(tos)];
|
|
15
|
+
}
|
|
16
|
+
if (tos instanceof Set) {
|
|
17
|
+
return Array.from(tos).map(coercePeerRefToHash);
|
|
18
|
+
}
|
|
19
|
+
if (tos instanceof Array) {
|
|
20
|
+
return tos.map(coercePeerRefToHash);
|
|
21
|
+
}
|
|
22
|
+
const toHashes = [];
|
|
23
|
+
for (const to of tos) {
|
|
24
|
+
const hash = coercePeerRefToHash(to);
|
|
25
|
+
toHashes.push(hash);
|
|
26
|
+
}
|
|
27
|
+
return toHashes;
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=keys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../src/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AASxE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAAW,EAAE,EAAE;IAClD,OAAO,EAAE,YAAY,aAAa;QACjC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE;QACf,CAAC,CAAC,OAAO,EAAE,KAAK,QAAQ;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAa,EAAE,EAAE;IACvD,IACC,QAAQ,CAAC,GAAG,CAAC;QACb,GAAG,YAAY,aAAa;QAC5B,OAAO,GAAG,KAAK,QAAQ,EACtB,CAAC;QACF,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,GAAG,YAAY,GAAG,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;QAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;QACrC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC"}
|
package/dist/src/messages.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { PeerId } from "@libp2p/interface";
|
|
2
2
|
import { PublicSignKey, SignatureWithKey } from "@peerbit/crypto";
|
|
3
3
|
import { Uint8ArrayList } from "uint8arraylist";
|
|
4
|
+
import { type PeerRefs } from "./keys";
|
|
4
5
|
export declare const ID_LENGTH = 32;
|
|
5
6
|
/**
|
|
6
7
|
* The default msgID implementation
|
|
@@ -12,7 +13,6 @@ export declare const deliveryModeHasReceiver: (mode: DeliveryMode) => mode is {
|
|
|
12
13
|
};
|
|
13
14
|
export declare abstract class DeliveryMode {
|
|
14
15
|
}
|
|
15
|
-
type PeerIds = (string | PublicSignKey | PeerId)[] | Set<string> | IterableIterator<string>;
|
|
16
16
|
/**
|
|
17
17
|
* when you just want to deliver at paths, but does not expect acknowledgement
|
|
18
18
|
*/
|
|
@@ -20,7 +20,7 @@ export declare class SilentDelivery extends DeliveryMode {
|
|
|
20
20
|
to: string[];
|
|
21
21
|
redundancy: number;
|
|
22
22
|
constructor(properties: {
|
|
23
|
-
to:
|
|
23
|
+
to: PeerRefs;
|
|
24
24
|
redundancy: number;
|
|
25
25
|
});
|
|
26
26
|
}
|
|
@@ -31,7 +31,7 @@ export declare class AcknowledgeDelivery extends DeliveryMode {
|
|
|
31
31
|
to: string[];
|
|
32
32
|
redundancy: number;
|
|
33
33
|
constructor(properties: {
|
|
34
|
-
to:
|
|
34
|
+
to: PeerRefs;
|
|
35
35
|
redundancy: number;
|
|
36
36
|
});
|
|
37
37
|
}
|
|
@@ -43,7 +43,7 @@ export declare class SeekDelivery extends DeliveryMode {
|
|
|
43
43
|
to?: string[];
|
|
44
44
|
redundancy: number;
|
|
45
45
|
constructor(properties: {
|
|
46
|
-
to?:
|
|
46
|
+
to?: PeerRefs;
|
|
47
47
|
redundancy: number;
|
|
48
48
|
});
|
|
49
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACN,aAAa,EACb,gBAAgB,
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":"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"}
|
package/dist/src/messages.js
CHANGED
|
@@ -9,8 +9,9 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
var DataMessage_1, ACK_1, Hello_1, Goodbye_1;
|
|
11
11
|
import { deserialize, field, fixedArray, option, serialize, variant, vec, } from "@dao-xyz/borsh";
|
|
12
|
-
import { PublicSignKey, SignatureWithKey,
|
|
12
|
+
import { PublicSignKey, SignatureWithKey, randomBytes, sha256Base64, verify, } from "@peerbit/crypto";
|
|
13
13
|
import { Uint8ArrayList } from "uint8arraylist";
|
|
14
|
+
import { coercePeerRefsToHashes } from "./keys";
|
|
14
15
|
export const ID_LENGTH = 32;
|
|
15
16
|
const WEEK_MS = 7 * 24 * 60 * 60 + 1000;
|
|
16
17
|
const SIGNATURES_SIZE_ENCODING = "u8"; // with 7 steps you know everyone in the world?, so u8 *should* suffice
|
|
@@ -23,19 +24,6 @@ export const getMsgId = async (msg) => {
|
|
|
23
24
|
// next 32 bytes should be an id
|
|
24
25
|
return sha256Base64(msg.subarray(0, 33)); // base64EncArr(msg, 0, ID_LENGTH + 1);
|
|
25
26
|
};
|
|
26
|
-
const coerceTo = (tos) => {
|
|
27
|
-
const toHashes = [];
|
|
28
|
-
let i = 0;
|
|
29
|
-
for (const to of tos) {
|
|
30
|
-
const hash = to instanceof PublicSignKey
|
|
31
|
-
? to.hashcode()
|
|
32
|
-
: typeof to === "string"
|
|
33
|
-
? to
|
|
34
|
-
: getPublicKeyFromPeerId(to).hashcode();
|
|
35
|
-
toHashes[i++] = hash;
|
|
36
|
-
}
|
|
37
|
-
return toHashes;
|
|
38
|
-
};
|
|
39
27
|
export const deliveryModeHasReceiver = (mode) => {
|
|
40
28
|
if (mode instanceof SilentDelivery && mode.to.length > 0) {
|
|
41
29
|
return true;
|
|
@@ -58,7 +46,7 @@ let SilentDelivery = class SilentDelivery extends DeliveryMode {
|
|
|
58
46
|
redundancy;
|
|
59
47
|
constructor(properties) {
|
|
60
48
|
super();
|
|
61
|
-
this.to =
|
|
49
|
+
this.to = coercePeerRefsToHashes(properties.to);
|
|
62
50
|
this.redundancy = properties.redundancy;
|
|
63
51
|
}
|
|
64
52
|
};
|
|
@@ -86,7 +74,7 @@ let AcknowledgeDelivery = class AcknowledgeDelivery extends DeliveryMode {
|
|
|
86
74
|
if (this.to?.length === 0) {
|
|
87
75
|
throw new Error("Invalud value of property 'to', expecting either undefined or an array with more than one element");
|
|
88
76
|
}
|
|
89
|
-
this.to =
|
|
77
|
+
this.to = coercePeerRefsToHashes(properties.to);
|
|
90
78
|
this.redundancy = properties.redundancy;
|
|
91
79
|
}
|
|
92
80
|
};
|
|
@@ -115,7 +103,7 @@ let SeekDelivery = class SeekDelivery extends DeliveryMode {
|
|
|
115
103
|
if (this.to?.length === 0) {
|
|
116
104
|
throw new Error("Invalud value of property 'to', expecting either undefined or an array with more than one element");
|
|
117
105
|
}
|
|
118
|
-
this.to = properties.to ?
|
|
106
|
+
this.to = properties.to ? coercePeerRefsToHashes(properties.to) : undefined;
|
|
119
107
|
this.redundancy = properties.redundancy;
|
|
120
108
|
}
|
|
121
109
|
};
|
package/dist/src/messages.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,80 +1,80 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
2
|
+
"name": "@peerbit/stream-interface",
|
|
3
|
+
"version": "5.2.7-0fddff8",
|
|
4
|
+
"description": "Block store streaming",
|
|
5
|
+
"sideEffects": false,
|
|
6
|
+
"type": "module",
|
|
7
|
+
"types": "./dist/src/index.d.ts",
|
|
8
|
+
"typesVersions": {
|
|
9
|
+
"*": {
|
|
10
|
+
"*": [
|
|
11
|
+
"*",
|
|
12
|
+
"dist/*",
|
|
13
|
+
"dist/src/*",
|
|
14
|
+
"dist/src/*/index"
|
|
15
|
+
],
|
|
16
|
+
"src/*": [
|
|
17
|
+
"*",
|
|
18
|
+
"dist/*",
|
|
19
|
+
"dist/src/*",
|
|
20
|
+
"dist/src/*/index"
|
|
21
|
+
]
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"files": [
|
|
25
|
+
"src",
|
|
26
|
+
"dist",
|
|
27
|
+
"!dist/test",
|
|
28
|
+
"!**/*.tsbuildinfo"
|
|
29
|
+
],
|
|
30
|
+
"exports": {
|
|
31
|
+
".": {
|
|
32
|
+
"types": "./dist/src/index.d.ts",
|
|
33
|
+
"import": "./dist/src/index.js"
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
"eslintConfig": {
|
|
37
|
+
"extends": "peerbit",
|
|
38
|
+
"parserOptions": {
|
|
39
|
+
"project": true,
|
|
40
|
+
"sourceType": "module"
|
|
41
|
+
},
|
|
42
|
+
"ignorePatterns": [
|
|
43
|
+
"!.aegir.js",
|
|
44
|
+
"test/ts-use",
|
|
45
|
+
"*.d.ts"
|
|
46
|
+
]
|
|
47
|
+
},
|
|
48
|
+
"publishConfig": {
|
|
49
|
+
"access": "public"
|
|
50
|
+
},
|
|
51
|
+
"scripts": {
|
|
52
|
+
"clean": "aegir clean",
|
|
53
|
+
"build": "aegir build --no-bundle",
|
|
54
|
+
"test": "",
|
|
55
|
+
"lint": "aegir lint"
|
|
56
|
+
},
|
|
57
|
+
"engines": {
|
|
58
|
+
"node": ">=16.15.1"
|
|
59
|
+
},
|
|
60
|
+
"repository": {
|
|
61
|
+
"type": "git",
|
|
62
|
+
"url": "git+https://github.com/dao-xyz/peerbit.git"
|
|
63
|
+
},
|
|
64
|
+
"keywords": [
|
|
65
|
+
"peerbit"
|
|
66
|
+
],
|
|
67
|
+
"author": "dao.xyz",
|
|
68
|
+
"license": "MIT",
|
|
69
|
+
"bugs": {
|
|
70
|
+
"url": "https://github.com/dao-xyz/peerbit/issues"
|
|
71
|
+
},
|
|
72
|
+
"homepage": "https://github.com/dao-xyz/peerbit#readme",
|
|
73
|
+
"localMaintainers": [
|
|
74
|
+
"dao.xyz"
|
|
75
|
+
],
|
|
76
|
+
"dependencies": {
|
|
77
|
+
"@dao-xyz/borsh": "^5.2.3",
|
|
78
|
+
"@peerbit/crypto": "2.3.11-0fddff8"
|
|
79
|
+
}
|
|
80
80
|
}
|
package/src/index.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import type { PeerId } from "@libp2p/interface";
|
|
2
1
|
import type { PublicSignKey } from "@peerbit/crypto";
|
|
2
|
+
import type { PeerRefs } from "./keys.js";
|
|
3
3
|
import type { DataMessage, Message } from "./messages.js";
|
|
4
4
|
|
|
5
|
+
export * from "./keys.js";
|
|
6
|
+
|
|
5
7
|
export interface PeerEvents {
|
|
6
8
|
"peer:session": CustomEvent<PublicSignKey>;
|
|
7
9
|
"peer:reachable": CustomEvent<PublicSignKey>;
|
|
@@ -17,11 +19,38 @@ export interface StreamEvents extends PeerEvents, MessageEvents {
|
|
|
17
19
|
|
|
18
20
|
export * from "./messages.js";
|
|
19
21
|
|
|
22
|
+
// ---------- wait for peer types ----------
|
|
23
|
+
export type Target = "neighbor" | "reachable";
|
|
24
|
+
export type Settle = "any" | "all";
|
|
25
|
+
|
|
26
|
+
export interface WaitForBaseOpts {
|
|
27
|
+
settle?: Settle; // default: "any"
|
|
28
|
+
timeout?: number; // ms
|
|
29
|
+
signal?: AbortSignal;
|
|
30
|
+
allowSelf?: boolean; // default: false
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
// Special-case overload: seek="present" => target is implicitly "neighbor"
|
|
34
|
+
export interface WaitForPresentOpts extends WaitForBaseOpts {
|
|
35
|
+
seek: "present";
|
|
36
|
+
target?: "neighbor";
|
|
37
|
+
// target is intentionally omitted here (always "neighbor")
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// General-case overload: seek omitted or "any" => target must be explicit (defaults to "reachable")
|
|
41
|
+
export interface WaitForAnyOpts extends WaitForBaseOpts {
|
|
42
|
+
seek?: "any";
|
|
43
|
+
target?: Target; // default: "reachable"
|
|
44
|
+
}
|
|
45
|
+
export type WaitForPeersFn = (
|
|
46
|
+
peer: PeerRefs,
|
|
47
|
+
options?: WaitForPresentOpts | WaitForAnyOpts,
|
|
48
|
+
) => Promise<string[]>;
|
|
20
49
|
export interface WaitForPeer {
|
|
21
50
|
waitFor(
|
|
22
|
-
peer:
|
|
23
|
-
options?:
|
|
24
|
-
): Promise<
|
|
51
|
+
peer: PeerRefs,
|
|
52
|
+
options?: WaitForPresentOpts | WaitForAnyOpts,
|
|
53
|
+
): Promise<string[]>;
|
|
25
54
|
}
|
|
26
55
|
|
|
27
56
|
export interface PublicKeyFromHashResolver {
|
package/src/keys.ts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { type PeerId, isPeerId } from "@libp2p/interface";
|
|
2
|
+
import { PublicSignKey, getPublicKeyFromPeerId } from "@peerbit/crypto";
|
|
3
|
+
|
|
4
|
+
export type PeerRef = PeerId | PublicSignKey | string;
|
|
5
|
+
export type PeerRefs =
|
|
6
|
+
| PeerRef
|
|
7
|
+
| PeerRef[]
|
|
8
|
+
| Set<string>
|
|
9
|
+
| IterableIterator<PeerRef>;
|
|
10
|
+
|
|
11
|
+
export const coercePeerRefToHash = (to: PeerRef) => {
|
|
12
|
+
return to instanceof PublicSignKey
|
|
13
|
+
? to.hashcode()
|
|
14
|
+
: typeof to === "string"
|
|
15
|
+
? to
|
|
16
|
+
: getPublicKeyFromPeerId(to).hashcode();
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export const coercePeerRefsToHashes = (tos: PeerRefs) => {
|
|
20
|
+
if (
|
|
21
|
+
isPeerId(tos) ||
|
|
22
|
+
tos instanceof PublicSignKey ||
|
|
23
|
+
typeof tos === "string"
|
|
24
|
+
) {
|
|
25
|
+
return [coercePeerRefToHash(tos)];
|
|
26
|
+
}
|
|
27
|
+
if (tos instanceof Set) {
|
|
28
|
+
return Array.from(tos).map(coercePeerRefToHash);
|
|
29
|
+
}
|
|
30
|
+
if (tos instanceof Array) {
|
|
31
|
+
return tos.map(coercePeerRefToHash);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const toHashes: string[] = [];
|
|
35
|
+
for (const to of tos) {
|
|
36
|
+
const hash = coercePeerRefToHash(to);
|
|
37
|
+
toHashes.push(hash);
|
|
38
|
+
}
|
|
39
|
+
return toHashes;
|
|
40
|
+
};
|
package/src/messages.ts
CHANGED
|
@@ -11,12 +11,12 @@ import type { PeerId } from "@libp2p/interface";
|
|
|
11
11
|
import {
|
|
12
12
|
PublicSignKey,
|
|
13
13
|
SignatureWithKey,
|
|
14
|
-
getPublicKeyFromPeerId,
|
|
15
14
|
randomBytes,
|
|
16
15
|
sha256Base64,
|
|
17
16
|
verify,
|
|
18
17
|
} from "@peerbit/crypto";
|
|
19
18
|
import { Uint8ArrayList } from "uint8arraylist";
|
|
19
|
+
import { type PeerRefs, coercePeerRefsToHashes } from "./keys";
|
|
20
20
|
|
|
21
21
|
export const ID_LENGTH = 32;
|
|
22
22
|
|
|
@@ -34,28 +34,6 @@ export const getMsgId = async (msg: Uint8ArrayList | Uint8Array) => {
|
|
|
34
34
|
return sha256Base64(msg.subarray(0, 33)); // base64EncArr(msg, 0, ID_LENGTH + 1);
|
|
35
35
|
};
|
|
36
36
|
|
|
37
|
-
const coerceTo = (
|
|
38
|
-
tos:
|
|
39
|
-
| (string | PublicSignKey | PeerId)[]
|
|
40
|
-
| Set<string>
|
|
41
|
-
| IterableIterator<string>,
|
|
42
|
-
) => {
|
|
43
|
-
const toHashes: string[] = [];
|
|
44
|
-
let i = 0;
|
|
45
|
-
|
|
46
|
-
for (const to of tos) {
|
|
47
|
-
const hash =
|
|
48
|
-
to instanceof PublicSignKey
|
|
49
|
-
? to.hashcode()
|
|
50
|
-
: typeof to === "string"
|
|
51
|
-
? to
|
|
52
|
-
: getPublicKeyFromPeerId(to).hashcode();
|
|
53
|
-
|
|
54
|
-
toHashes[i++] = hash;
|
|
55
|
-
}
|
|
56
|
-
return toHashes;
|
|
57
|
-
};
|
|
58
|
-
|
|
59
37
|
export const deliveryModeHasReceiver = (
|
|
60
38
|
mode: DeliveryMode,
|
|
61
39
|
): mode is { to: string[] } => {
|
|
@@ -73,11 +51,6 @@ export const deliveryModeHasReceiver = (
|
|
|
73
51
|
|
|
74
52
|
export abstract class DeliveryMode {}
|
|
75
53
|
|
|
76
|
-
type PeerIds =
|
|
77
|
-
| (string | PublicSignKey | PeerId)[]
|
|
78
|
-
| Set<string>
|
|
79
|
-
| IterableIterator<string>;
|
|
80
|
-
|
|
81
54
|
/**
|
|
82
55
|
* when you just want to deliver at paths, but does not expect acknowledgement
|
|
83
56
|
*/
|
|
@@ -89,9 +62,9 @@ export class SilentDelivery extends DeliveryMode {
|
|
|
89
62
|
@field({ type: "u8" })
|
|
90
63
|
redundancy: number;
|
|
91
64
|
|
|
92
|
-
constructor(properties: { to:
|
|
65
|
+
constructor(properties: { to: PeerRefs; redundancy: number }) {
|
|
93
66
|
super();
|
|
94
|
-
this.to =
|
|
67
|
+
this.to = coercePeerRefsToHashes(properties.to);
|
|
95
68
|
this.redundancy = properties.redundancy;
|
|
96
69
|
}
|
|
97
70
|
}
|
|
@@ -107,14 +80,14 @@ export class AcknowledgeDelivery extends DeliveryMode {
|
|
|
107
80
|
@field({ type: "u8" })
|
|
108
81
|
redundancy: number;
|
|
109
82
|
|
|
110
|
-
constructor(properties: { to:
|
|
83
|
+
constructor(properties: { to: PeerRefs; redundancy: number }) {
|
|
111
84
|
super();
|
|
112
85
|
if (this.to?.length === 0) {
|
|
113
86
|
throw new Error(
|
|
114
87
|
"Invalud value of property 'to', expecting either undefined or an array with more than one element",
|
|
115
88
|
);
|
|
116
89
|
}
|
|
117
|
-
this.to =
|
|
90
|
+
this.to = coercePeerRefsToHashes(properties.to);
|
|
118
91
|
this.redundancy = properties.redundancy;
|
|
119
92
|
}
|
|
120
93
|
}
|
|
@@ -131,14 +104,14 @@ export class SeekDelivery extends DeliveryMode {
|
|
|
131
104
|
@field({ type: "u8" })
|
|
132
105
|
redundancy: number;
|
|
133
106
|
|
|
134
|
-
constructor(properties: { to?:
|
|
107
|
+
constructor(properties: { to?: PeerRefs; redundancy: number }) {
|
|
135
108
|
super();
|
|
136
109
|
if (this.to?.length === 0) {
|
|
137
110
|
throw new Error(
|
|
138
111
|
"Invalud value of property 'to', expecting either undefined or an array with more than one element",
|
|
139
112
|
);
|
|
140
113
|
}
|
|
141
|
-
this.to = properties.to ?
|
|
114
|
+
this.to = properties.to ? coercePeerRefsToHashes(properties.to) : undefined;
|
|
142
115
|
this.redundancy = properties.redundancy;
|
|
143
116
|
}
|
|
144
117
|
}
|