libp2p 1.9.3 → 1.9.4-5214dec4a
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 +15 -16
- package/dist/src/components.d.ts.map +1 -1
- package/dist/src/components.js +4 -3
- package/dist/src/components.js.map +1 -1
- package/dist/src/config.d.ts +1 -1
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +2 -7
- package/dist/src/config.js.map +1 -1
- package/dist/src/connection/index.d.ts +3 -3
- package/dist/src/connection/index.d.ts.map +1 -1
- package/dist/src/connection/index.js +7 -7
- package/dist/src/connection/index.js.map +1 -1
- package/dist/src/connection-manager/connection-pruner.js +1 -1
- package/dist/src/connection-manager/constants.browser.d.ts +0 -8
- package/dist/src/connection-manager/constants.browser.d.ts.map +1 -1
- package/dist/src/connection-manager/constants.browser.js +0 -8
- package/dist/src/connection-manager/constants.browser.js.map +1 -1
- package/dist/src/connection-manager/constants.d.ts +0 -8
- package/dist/src/connection-manager/constants.d.ts.map +1 -1
- package/dist/src/connection-manager/constants.defaults.d.ts +12 -22
- package/dist/src/connection-manager/constants.defaults.d.ts.map +1 -1
- package/dist/src/connection-manager/constants.defaults.js +12 -22
- package/dist/src/connection-manager/constants.defaults.js.map +1 -1
- package/dist/src/connection-manager/constants.js +0 -8
- package/dist/src/connection-manager/constants.js.map +1 -1
- package/dist/src/connection-manager/dial-queue.d.ts.map +1 -1
- package/dist/src/connection-manager/dial-queue.js +29 -15
- package/dist/src/connection-manager/dial-queue.js.map +1 -1
- package/dist/src/connection-manager/index.d.ts +47 -50
- package/dist/src/connection-manager/index.d.ts.map +1 -1
- package/dist/src/connection-manager/index.js +23 -57
- package/dist/src/connection-manager/index.js.map +1 -1
- package/dist/src/connection-manager/reconnect-queue.d.ts +35 -0
- package/dist/src/connection-manager/reconnect-queue.d.ts.map +1 -0
- package/dist/src/connection-manager/reconnect-queue.js +104 -0
- package/dist/src/connection-manager/reconnect-queue.js.map +1 -0
- package/dist/src/connection-monitor.js +1 -1
- package/dist/src/connection-monitor.js.map +1 -1
- package/dist/src/content-routing.js +6 -6
- package/dist/src/content-routing.js.map +1 -1
- package/dist/src/errors.d.ts +41 -61
- package/dist/src/errors.d.ts.map +1 -1
- package/dist/src/errors.js +84 -63
- package/dist/src/errors.js.map +1 -1
- package/dist/src/get-peer.d.ts.map +1 -1
- package/dist/src/get-peer.js +4 -5
- package/dist/src/get-peer.js.map +1 -1
- package/dist/src/index.d.ts +25 -7
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +9 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/libp2p.d.ts +11 -10
- package/dist/src/libp2p.d.ts.map +1 -1
- package/dist/src/libp2p.js +11 -29
- package/dist/src/libp2p.js.map +1 -1
- package/dist/src/peer-routing.js +8 -8
- package/dist/src/peer-routing.js.map +1 -1
- package/dist/src/registrar.js +7 -7
- package/dist/src/registrar.js.map +1 -1
- package/dist/src/transport-manager.d.ts.map +1 -1
- package/dist/src/transport-manager.js +15 -23
- package/dist/src/transport-manager.js.map +1 -1
- package/dist/src/upgrader.d.ts +4 -4
- package/dist/src/upgrader.d.ts.map +1 -1
- package/dist/src/upgrader.js +35 -35
- package/dist/src/upgrader.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.d.ts.map +1 -1
- package/dist/src/version.js +1 -1
- package/dist/src/version.js.map +1 -1
- package/package.json +20 -20
- package/src/components.ts +4 -3
- package/src/config.ts +4 -10
- package/src/connection/index.ts +9 -9
- package/src/connection-manager/connection-pruner.ts +1 -1
- package/src/connection-manager/constants.browser.ts +0 -10
- package/src/connection-manager/constants.defaults.ts +14 -27
- package/src/connection-manager/constants.ts +0 -10
- package/src/connection-manager/dial-queue.ts +30 -15
- package/src/connection-manager/index.ts +80 -118
- package/src/connection-manager/reconnect-queue.ts +134 -0
- package/src/connection-monitor.ts +1 -1
- package/src/content-routing.ts +6 -6
- package/src/errors.ts +96 -61
- package/src/get-peer.ts +4 -5
- package/src/index.ts +40 -10
- package/src/libp2p.ts +20 -34
- package/src/peer-routing.ts +8 -8
- package/src/registrar.ts +7 -7
- package/src/transport-manager.ts +15 -23
- package/src/upgrader.ts +37 -38
- package/src/version.ts +1 -1
- package/dist/src/connection-manager/auto-dial.d.ts +0 -47
- package/dist/src/connection-manager/auto-dial.d.ts.map +0 -1
- package/dist/src/connection-manager/auto-dial.js +0 -223
- package/dist/src/connection-manager/auto-dial.js.map +0 -1
- package/dist/typedoc-urls.json +0 -14
- package/src/connection-manager/auto-dial.ts +0 -285
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { NotStartedError } from '@libp2p/interface';
|
|
2
2
|
import { PeerSet } from '@libp2p/peer-collections';
|
|
3
3
|
import merge from 'it-merge';
|
|
4
|
-
import {
|
|
4
|
+
import { NoContentRoutersError } from './errors.js';
|
|
5
5
|
export class CompoundContentRouting {
|
|
6
6
|
routers;
|
|
7
7
|
started;
|
|
@@ -26,7 +26,7 @@ export class CompoundContentRouting {
|
|
|
26
26
|
*/
|
|
27
27
|
async *findProviders(key, options = {}) {
|
|
28
28
|
if (this.routers.length === 0) {
|
|
29
|
-
throw new
|
|
29
|
+
throw new NoContentRoutersError('No content routers available');
|
|
30
30
|
}
|
|
31
31
|
const self = this;
|
|
32
32
|
const seen = new PeerSet();
|
|
@@ -56,7 +56,7 @@ export class CompoundContentRouting {
|
|
|
56
56
|
*/
|
|
57
57
|
async provide(key, options = {}) {
|
|
58
58
|
if (this.routers.length === 0) {
|
|
59
|
-
throw new
|
|
59
|
+
throw new NoContentRoutersError('No content routers available');
|
|
60
60
|
}
|
|
61
61
|
await Promise.all(this.routers.map(async (router) => {
|
|
62
62
|
await router.provide(key, options);
|
|
@@ -67,7 +67,7 @@ export class CompoundContentRouting {
|
|
|
67
67
|
*/
|
|
68
68
|
async put(key, value, options) {
|
|
69
69
|
if (!this.isStarted()) {
|
|
70
|
-
throw new
|
|
70
|
+
throw new NotStartedError();
|
|
71
71
|
}
|
|
72
72
|
await Promise.all(this.routers.map(async (router) => {
|
|
73
73
|
await router.put(key, value, options);
|
|
@@ -79,7 +79,7 @@ export class CompoundContentRouting {
|
|
|
79
79
|
*/
|
|
80
80
|
async get(key, options) {
|
|
81
81
|
if (!this.isStarted()) {
|
|
82
|
-
throw new
|
|
82
|
+
throw new NotStartedError();
|
|
83
83
|
}
|
|
84
84
|
return Promise.any(this.routers.map(async (router) => {
|
|
85
85
|
return router.get(key, options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-routing.js","sourceRoot":"","sources":["../../src/content-routing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"content-routing.js","sourceRoot":"","sources":["../../src/content-routing.ts"],"names":[],"mappings":"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"}
|
package/dist/src/errors.d.ts
CHANGED
|
@@ -1,67 +1,47 @@
|
|
|
1
1
|
export declare enum messages {
|
|
2
2
|
NOT_STARTED_YET = "The libp2p node is not started yet",
|
|
3
|
-
ERR_PROTECTOR_REQUIRED = "Private network is enforced, but no protector was provided",
|
|
4
3
|
NOT_FOUND = "Not found"
|
|
5
4
|
}
|
|
6
|
-
export declare
|
|
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
|
-
ERR_OLD_KEY_NAME_INVALID = "ERR_OLD_KEY_NAME_INVALID",
|
|
48
|
-
ERR_NEW_KEY_NAME_INVALID = "ERR_NEW_KEY_NAME_INVALID",
|
|
49
|
-
ERR_PASSWORD_REQUIRED = "ERR_PASSWORD_REQUIRED",
|
|
50
|
-
ERR_PEM_REQUIRED = "ERR_PEM_REQUIRED",
|
|
51
|
-
ERR_CANNOT_READ_KEY = "ERR_CANNOT_READ_KEY",
|
|
52
|
-
ERR_MISSING_PRIVATE_KEY = "ERR_MISSING_PRIVATE_KEY",
|
|
53
|
-
ERR_MISSING_PUBLIC_KEY = "ERR_MISSING_PUBLIC_KEY",
|
|
54
|
-
ERR_INVALID_OLD_PASS_TYPE = "ERR_INVALID_OLD_PASS_TYPE",
|
|
55
|
-
ERR_INVALID_NEW_PASS_TYPE = "ERR_INVALID_NEW_PASS_TYPE",
|
|
56
|
-
ERR_INVALID_PASS_LENGTH = "ERR_INVALID_PASS_LENGTH",
|
|
57
|
-
ERR_NOT_IMPLEMENTED = "ERR_NOT_IMPLEMENTED",
|
|
58
|
-
ERR_WRONG_PING_ACK = "ERR_WRONG_PING_ACK",
|
|
59
|
-
ERR_INVALID_RECORD = "ERR_INVALID_RECORD",
|
|
60
|
-
ERR_ALREADY_SUCCEEDED = "ERR_ALREADY_SUCCEEDED",
|
|
61
|
-
ERR_NO_HANDLER_FOR_PROTOCOL = "ERR_NO_HANDLER_FOR_PROTOCOL",
|
|
62
|
-
ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS = "ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS",
|
|
63
|
-
ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS = "ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS",
|
|
64
|
-
ERR_CONNECTION_DENIED = "ERR_CONNECTION_DENIED",
|
|
65
|
-
ERR_TRANSFER_LIMIT_EXCEEDED = "ERR_TRANSFER_LIMIT_EXCEEDED"
|
|
5
|
+
export declare class MissingServiceError extends Error {
|
|
6
|
+
constructor(message?: string);
|
|
7
|
+
}
|
|
8
|
+
export declare class UnmetServiceDependenciesError extends Error {
|
|
9
|
+
constructor(message?: string);
|
|
10
|
+
}
|
|
11
|
+
export declare class NoContentRoutersError extends Error {
|
|
12
|
+
constructor(message?: string);
|
|
13
|
+
}
|
|
14
|
+
export declare class NoPeerRoutersError extends Error {
|
|
15
|
+
constructor(message?: string);
|
|
16
|
+
}
|
|
17
|
+
export declare class QueriedForSelfError extends Error {
|
|
18
|
+
constructor(message?: string);
|
|
19
|
+
}
|
|
20
|
+
export declare class UnhandledProtocolError extends Error {
|
|
21
|
+
constructor(message?: string);
|
|
22
|
+
}
|
|
23
|
+
export declare class DuplicateProtocolHandlerError extends Error {
|
|
24
|
+
constructor(message?: string);
|
|
25
|
+
}
|
|
26
|
+
export declare class DialDeniedError extends Error {
|
|
27
|
+
constructor(message?: string);
|
|
28
|
+
}
|
|
29
|
+
export declare class NoValidAddressesError extends Error {
|
|
30
|
+
constructor(message?: string);
|
|
31
|
+
}
|
|
32
|
+
export declare class ConnectionInterceptedError extends Error {
|
|
33
|
+
constructor(message?: string);
|
|
34
|
+
}
|
|
35
|
+
export declare class ConnectionDeniedError extends Error {
|
|
36
|
+
constructor(message?: string);
|
|
37
|
+
}
|
|
38
|
+
export declare class MuxerUnavailableError extends Error {
|
|
39
|
+
constructor(message?: string);
|
|
40
|
+
}
|
|
41
|
+
export declare class EncryptionFailedError extends Error {
|
|
42
|
+
constructor(message?: string);
|
|
43
|
+
}
|
|
44
|
+
export declare class TransportUnavailableError extends Error {
|
|
45
|
+
constructor(message?: string);
|
|
66
46
|
}
|
|
67
47
|
//# sourceMappingURL=errors.d.ts.map
|
package/dist/src/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,eAAe,uCAAuC;IACtD,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,eAAe,uCAAuC;IACtD,SAAS,cAAc;CACxB;AAED,qBAAa,mBAAoB,SAAQ,KAAK;gBAC/B,OAAO,SAAoB;CAIzC;AAED,qBAAa,6BAA8B,SAAQ,KAAK;gBACzC,OAAO,SAA+B;CAIpD;AAED,qBAAa,qBAAsB,SAAQ,KAAK;gBACjC,OAAO,SAAiC;CAItD;AAED,qBAAa,kBAAmB,SAAQ,KAAK;gBAC9B,OAAO,SAA8B;CAInD;AAED,qBAAa,mBAAoB,SAAQ,KAAK;gBAC/B,OAAO,SAAgC;CAIrD;AAED,qBAAa,sBAAuB,SAAQ,KAAK;gBAClC,OAAO,SAA6B;CAIlD;AAED,qBAAa,6BAA8B,SAAQ,KAAK;gBACzC,OAAO,SAAqC;CAI1D;AAED,qBAAa,eAAgB,SAAQ,KAAK;gBAC3B,OAAO,SAAsB;CAI3C;AAED,qBAAa,qBAAsB,SAAQ,KAAK;gBACjC,OAAO,SAAuB;CAI5C;AAED,qBAAa,0BAA2B,SAAQ,KAAK;gBACtC,OAAO,SAA2B;CAIhD;AAED,qBAAa,qBAAsB,SAAQ,KAAK;gBACjC,OAAO,SAAsB;CAI3C;AAED,qBAAa,qBAAsB,SAAQ,KAAK;gBACjC,OAAO,SAA8B;CAInD;AAED,qBAAa,qBAAsB,SAAQ,KAAK;gBACjC,OAAO,SAAsB;CAI3C;AAED,qBAAa,yBAA0B,SAAQ,KAAK;gBACrC,OAAO,SAA0B;CAI/C"}
|
package/dist/src/errors.js
CHANGED
|
@@ -1,69 +1,90 @@
|
|
|
1
1
|
export var messages;
|
|
2
2
|
(function (messages) {
|
|
3
3
|
messages["NOT_STARTED_YET"] = "The libp2p node is not started yet";
|
|
4
|
-
messages["ERR_PROTECTOR_REQUIRED"] = "Private network is enforced, but no protector was provided";
|
|
5
4
|
messages["NOT_FOUND"] = "Not found";
|
|
6
5
|
})(messages || (messages = {}));
|
|
7
|
-
export
|
|
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
|
-
|
|
6
|
+
export class MissingServiceError extends Error {
|
|
7
|
+
constructor(message = 'Missing service') {
|
|
8
|
+
super(message);
|
|
9
|
+
this.name = 'MissingServiceError';
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export class UnmetServiceDependenciesError extends Error {
|
|
13
|
+
constructor(message = 'Unmet service dependencies') {
|
|
14
|
+
super(message);
|
|
15
|
+
this.name = 'UnmetServiceDependenciesError';
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export class NoContentRoutersError extends Error {
|
|
19
|
+
constructor(message = 'No content routers available') {
|
|
20
|
+
super(message);
|
|
21
|
+
this.name = 'NoContentRoutersError';
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
export class NoPeerRoutersError extends Error {
|
|
25
|
+
constructor(message = 'No peer routers available') {
|
|
26
|
+
super(message);
|
|
27
|
+
this.name = 'NoPeerRoutersError';
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export class QueriedForSelfError extends Error {
|
|
31
|
+
constructor(message = 'Should not try to find self') {
|
|
32
|
+
super(message);
|
|
33
|
+
this.name = 'QueriedForSelfError';
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
export class UnhandledProtocolError extends Error {
|
|
37
|
+
constructor(message = 'Unhandled protocol error') {
|
|
38
|
+
super(message);
|
|
39
|
+
this.name = 'UnhandledProtocolError';
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
export class DuplicateProtocolHandlerError extends Error {
|
|
43
|
+
constructor(message = 'Duplicate protocol handler error') {
|
|
44
|
+
super(message);
|
|
45
|
+
this.name = 'DuplicateProtocolHandlerError';
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
export class DialDeniedError extends Error {
|
|
49
|
+
constructor(message = 'Dial denied error') {
|
|
50
|
+
super(message);
|
|
51
|
+
this.name = 'DialDeniedError';
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
export class NoValidAddressesError extends Error {
|
|
55
|
+
constructor(message = 'No valid addresses') {
|
|
56
|
+
super(message);
|
|
57
|
+
this.name = 'NoValidAddressesError';
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
export class ConnectionInterceptedError extends Error {
|
|
61
|
+
constructor(message = 'Connection intercepted') {
|
|
62
|
+
super(message);
|
|
63
|
+
this.name = 'ConnectionInterceptedError';
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
export class ConnectionDeniedError extends Error {
|
|
67
|
+
constructor(message = 'Connection denied') {
|
|
68
|
+
super(message);
|
|
69
|
+
this.name = 'ConnectionDeniedError';
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
export class MuxerUnavailableError extends Error {
|
|
73
|
+
constructor(message = 'Stream is not multiplexed') {
|
|
74
|
+
super(message);
|
|
75
|
+
this.name = 'MuxerUnavailableError';
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
export class EncryptionFailedError extends Error {
|
|
79
|
+
constructor(message = 'Encryption failed') {
|
|
80
|
+
super(message);
|
|
81
|
+
this.name = 'EncryptionFailedError';
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
export class TransportUnavailableError extends Error {
|
|
85
|
+
constructor(message = 'Transport unavailable') {
|
|
86
|
+
super(message);
|
|
87
|
+
this.name = 'TransportUnavailableError';
|
|
88
|
+
}
|
|
89
|
+
}
|
|
69
90
|
//# sourceMappingURL=errors.js.map
|
package/dist/src/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,kEAAsD,CAAA;IACtD,mCAAuB,CAAA;AACzB,CAAC,EAHW,QAAQ,KAAR,QAAQ,QAGnB;AAED,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C,YAAa,OAAO,GAAG,iBAAiB;QACtC,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAA;IACnC,CAAC;CACF;AAED,MAAM,OAAO,6BAA8B,SAAQ,KAAK;IACtD,YAAa,OAAO,GAAG,4BAA4B;QACjD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAA;IAC7C,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAa,OAAO,GAAG,8BAA8B;QACnD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAA;IACrC,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAC3C,YAAa,OAAO,GAAG,2BAA2B;QAChD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAA;IAClC,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C,YAAa,OAAO,GAAG,6BAA6B;QAClD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAA;IACnC,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C,YAAa,OAAO,GAAG,0BAA0B;QAC/C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAA;IACtC,CAAC;CACF;AAED,MAAM,OAAO,6BAA8B,SAAQ,KAAK;IACtD,YAAa,OAAO,GAAG,kCAAkC;QACvD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAA;IAC7C,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxC,YAAa,OAAO,GAAG,mBAAmB;QACxC,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAA;IAC/B,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAa,OAAO,GAAG,oBAAoB;QACzC,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAA;IACrC,CAAC;CACF;AAED,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IACnD,YAAa,OAAO,GAAG,wBAAwB;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAA;IAC1C,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAa,OAAO,GAAG,mBAAmB;QACxC,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAA;IACrC,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAa,OAAO,GAAG,2BAA2B;QAChD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAA;IACrC,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAa,OAAO,GAAG,mBAAmB;QACxC,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAA;IACrC,CAAC;CACF;AAED,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IAClD,YAAa,OAAO,GAAG,uBAAuB;QAC5C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAA;IACzC,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-peer.d.ts","sourceRoot":"","sources":["../../src/get-peer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-peer.d.ts","sourceRoot":"","sources":["../../src/get-peer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,SAAS,EAAE,CAAA;CACxB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,EAAE,GAAG,WAAW,CAyCnF"}
|
package/dist/src/get-peer.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { InvalidMultiaddrError, InvalidParametersError, isPeerId } from '@libp2p/interface';
|
|
2
2
|
import { peerIdFromString } from '@libp2p/peer-id';
|
|
3
3
|
import { isMultiaddr } from '@multiformats/multiaddr';
|
|
4
|
-
import { codes } from './errors.js';
|
|
5
4
|
/**
|
|
6
5
|
* Extracts a PeerId and/or multiaddr from the passed PeerId or Multiaddr or an array of Multiaddrs
|
|
7
6
|
*/
|
|
@@ -19,18 +18,18 @@ export function getPeerAddress(peer) {
|
|
|
19
18
|
// ensure PeerId is either not set or is consistent
|
|
20
19
|
peer.forEach(ma => {
|
|
21
20
|
if (!isMultiaddr(ma)) {
|
|
22
|
-
throw new
|
|
21
|
+
throw new InvalidMultiaddrError('Invalid multiaddr');
|
|
23
22
|
}
|
|
24
23
|
const maPeerIdStr = ma.getPeerId();
|
|
25
24
|
if (maPeerIdStr == null) {
|
|
26
25
|
if (peerId != null) {
|
|
27
|
-
throw new
|
|
26
|
+
throw new InvalidParametersError('Multiaddrs must all have the same peer id or have no peer id');
|
|
28
27
|
}
|
|
29
28
|
}
|
|
30
29
|
else {
|
|
31
30
|
const maPeerId = peerIdFromString(maPeerIdStr);
|
|
32
31
|
if (peerId?.equals(maPeerId) !== true) {
|
|
33
|
-
throw new
|
|
32
|
+
throw new InvalidParametersError('Multiaddrs must all have the same peer id or have no peer id');
|
|
34
33
|
}
|
|
35
34
|
}
|
|
36
35
|
});
|
package/dist/src/get-peer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-peer.js","sourceRoot":"","sources":["../../src/get-peer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"get-peer.js","sourceRoot":"","sources":["../../src/get-peer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AASrD;;GAEG;AACH,MAAM,UAAU,cAAc,CAAE,IAAsC;IACpE,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAAA;IACzC,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,IAAI,GAAG,CAAC,IAAI,CAAC,CAAA;IACf,CAAC;IAED,IAAI,MAA0B,CAAA;IAE9B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QACrC,MAAM,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;QAEpE,mDAAmD;QACnD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YAChB,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,qBAAqB,CAAC,mBAAmB,CAAC,CAAA;YACtD,CAAC;YAED,MAAM,WAAW,GAAG,EAAE,CAAC,SAAS,EAAE,CAAA;YAElC,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;gBACxB,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnB,MAAM,IAAI,sBAAsB,CAAC,8DAA8D,CAAC,CAAA;gBAClG,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAA;gBAE9C,IAAI,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;oBACtC,MAAM,IAAI,sBAAsB,CAAC,8DAA8D,CAAC,CAAA;gBAClG,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,OAAO;QACL,MAAM;QACN,UAAU,EAAE,IAAI;KACjB,CAAA;AACH,CAAC"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ import type { Components } from './components.js';
|
|
|
18
18
|
import type { ConnectionManagerInit } from './connection-manager/index.js';
|
|
19
19
|
import type { ConnectionMonitorInit } from './connection-monitor.js';
|
|
20
20
|
import type { TransportManagerInit } from './transport-manager.js';
|
|
21
|
-
import type { Libp2p, ServiceMap, ComponentLogger, NodeInfo, ConnectionProtector, ConnectionEncrypter, ConnectionGater, ContentRouting, Metrics, PeerDiscovery,
|
|
21
|
+
import type { Libp2p, ServiceMap, ComponentLogger, NodeInfo, ConnectionProtector, ConnectionEncrypter, ConnectionGater, ContentRouting, Metrics, PeerDiscovery, PeerRouting, StreamMuxerFactory, Transport, PrivateKey } from '@libp2p/interface';
|
|
22
22
|
import type { PersistentPeerStoreInit } from '@libp2p/peer-store';
|
|
23
23
|
import type { DNS } from '@multiformats/dns';
|
|
24
24
|
import type { Datastore } from 'interface-datastore';
|
|
@@ -30,11 +30,11 @@ export type ServiceFactoryMap<T extends ServiceMap = ServiceMap> = {
|
|
|
30
30
|
*/
|
|
31
31
|
export interface Libp2pInit<T extends ServiceMap = ServiceMap> {
|
|
32
32
|
/**
|
|
33
|
-
*
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
*
|
|
33
|
+
* The private key is used in cryptographic operations and the Peer ID derived
|
|
34
|
+
* from it's corresponding public key is used to identify the node to other
|
|
35
|
+
* peers on the network.
|
|
36
|
+
*
|
|
37
|
+
* If this is not passed a new Ed25519 private key will be generated.
|
|
38
38
|
*/
|
|
39
39
|
privateKey?: PrivateKey;
|
|
40
40
|
/**
|
|
@@ -72,13 +72,31 @@ export interface Libp2pInit<T extends ServiceMap = ServiceMap> {
|
|
|
72
72
|
*/
|
|
73
73
|
peerStore?: PersistentPeerStoreInit;
|
|
74
74
|
/**
|
|
75
|
-
*
|
|
75
|
+
* Transports are low-level communication channels
|
|
76
76
|
*/
|
|
77
77
|
transports?: Array<(components: Components) => Transport>;
|
|
78
|
+
/**
|
|
79
|
+
* Stream muxers allow the creation of many data streams over a single
|
|
80
|
+
* connection.
|
|
81
|
+
*/
|
|
78
82
|
streamMuxers?: Array<(components: Components) => StreamMuxerFactory>;
|
|
83
|
+
/**
|
|
84
|
+
* Connection encrypters ensure that data sent over connections cannot be
|
|
85
|
+
* eavesdropped on, and that the remote peer posesses the private key that
|
|
86
|
+
* corresponds to the public key that it's Peer ID is derived from.
|
|
87
|
+
*/
|
|
79
88
|
connectionEncryption?: Array<(components: Components) => ConnectionEncrypter>;
|
|
89
|
+
/**
|
|
90
|
+
* Peer discovery mechanisms allow finding peers on the network
|
|
91
|
+
*/
|
|
80
92
|
peerDiscovery?: Array<(components: Components) => PeerDiscovery>;
|
|
93
|
+
/**
|
|
94
|
+
* Peer routers provide implementations for peer routing queries
|
|
95
|
+
*/
|
|
81
96
|
peerRouters?: Array<(components: Components) => PeerRouting>;
|
|
97
|
+
/**
|
|
98
|
+
* Content routers provide implementations for content routing queries
|
|
99
|
+
*/
|
|
82
100
|
contentRouters?: Array<(components: Components) => ContentRouting>;
|
|
83
101
|
/**
|
|
84
102
|
* A Metrics implementation can be supplied to collect metrics on this node
|
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;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -13,7 +13,10 @@
|
|
|
13
13
|
* })
|
|
14
14
|
* ```
|
|
15
15
|
*/
|
|
16
|
-
import {
|
|
16
|
+
import { generateKeyPair } from '@libp2p/crypto/keys';
|
|
17
|
+
import { peerIdFromPrivateKey } from '@libp2p/peer-id';
|
|
18
|
+
import { validateConfig } from './config.js';
|
|
19
|
+
import { Libp2p as Libp2pClass } from './libp2p.js';
|
|
17
20
|
/**
|
|
18
21
|
* Returns a new instance of the Libp2p interface, generating a new PeerId
|
|
19
22
|
* if one is not passed as part of the options.
|
|
@@ -41,7 +44,11 @@ import { createLibp2pNode } from './libp2p.js';
|
|
|
41
44
|
* ```
|
|
42
45
|
*/
|
|
43
46
|
export async function createLibp2p(options = {}) {
|
|
44
|
-
|
|
47
|
+
options.privateKey ??= await generateKeyPair('Ed25519');
|
|
48
|
+
const node = new Libp2pClass({
|
|
49
|
+
...await validateConfig(options),
|
|
50
|
+
peerId: peerIdFromPrivateKey(options.privateKey)
|
|
51
|
+
});
|
|
45
52
|
if (options.start !== false) {
|
|
46
53
|
await node.start();
|
|
47
54
|
}
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,aAAa,CAAA;AAuJnD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAsC,UAA4B,EAAE;IACpG,OAAO,CAAC,UAAU,KAAK,MAAM,eAAe,CAAC,SAAS,CAAC,CAAA;IAEvD,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC;QAC3B,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC;QAChC,MAAM,EAAE,oBAAoB,CAAC,OAAO,CAAC,UAAU,CAAC;KACjD,CAAC,CAAA;IAEF,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QAC5B,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC"}
|
package/dist/src/libp2p.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { TypedEventEmitter } from '@libp2p/interface';
|
|
2
2
|
import { type Multiaddr } from '@multiformats/multiaddr';
|
|
3
3
|
import type { Components } from './components.js';
|
|
4
|
-
import type { Libp2p, Libp2pInit
|
|
5
|
-
import type { PeerRouting, ContentRouting, Libp2pEvents, PendingDial, ServiceMap, AbortOptions, ComponentLogger, Connection, NewStreamOptions, Stream, Metrics, PeerId, PeerStore, Topology, Libp2pStatus, IsDialableOptions, DialOptions } from '@libp2p/interface';
|
|
4
|
+
import type { Libp2p as Libp2pInterface, Libp2pInit } from './index.js';
|
|
5
|
+
import type { PeerRouting, ContentRouting, Libp2pEvents, PendingDial, ServiceMap, AbortOptions, ComponentLogger, Connection, NewStreamOptions, Stream, Metrics, PeerId, PeerStore, Topology, Libp2pStatus, IsDialableOptions, DialOptions, PublicKey, Ed25519PeerId, Secp256k1PeerId, RSAPublicKey, RSAPeerId, URLPeerId, Ed25519PublicKey, Secp256k1PublicKey } from '@libp2p/interface';
|
|
6
6
|
import type { StreamHandler, StreamHandlerOptions } from '@libp2p/interface-internal';
|
|
7
|
-
export declare class
|
|
7
|
+
export declare class Libp2p<T extends ServiceMap = ServiceMap> extends TypedEventEmitter<Libp2pEvents> implements Libp2pInterface<T> {
|
|
8
8
|
#private;
|
|
9
9
|
peerId: PeerId;
|
|
10
10
|
peerStore: PeerStore;
|
|
@@ -16,7 +16,9 @@ export declare class Libp2pNode<T extends ServiceMap = ServiceMap> extends Typed
|
|
|
16
16
|
status: Libp2pStatus;
|
|
17
17
|
components: Components & T;
|
|
18
18
|
private readonly log;
|
|
19
|
-
constructor(init: Libp2pInit<T> &
|
|
19
|
+
constructor(init: Libp2pInit<T> & {
|
|
20
|
+
peerId: PeerId;
|
|
21
|
+
});
|
|
20
22
|
private configureComponent;
|
|
21
23
|
/**
|
|
22
24
|
* Starts the libp2p node and all its subsystems
|
|
@@ -37,16 +39,15 @@ export declare class Libp2pNode<T extends ServiceMap = ServiceMap> extends Typed
|
|
|
37
39
|
/**
|
|
38
40
|
* Get the public key for the given peer id
|
|
39
41
|
*/
|
|
40
|
-
getPublicKey(peer:
|
|
42
|
+
getPublicKey(peer: Ed25519PeerId, options?: AbortOptions): Promise<Ed25519PublicKey>;
|
|
43
|
+
getPublicKey(peer: Secp256k1PeerId, options?: AbortOptions): Promise<Secp256k1PublicKey>;
|
|
44
|
+
getPublicKey(peer: RSAPeerId, options?: AbortOptions): Promise<RSAPublicKey>;
|
|
45
|
+
getPublicKey(peer: URLPeerId, options?: AbortOptions): Promise<never>;
|
|
46
|
+
getPublicKey(peer: PeerId, options?: AbortOptions): Promise<PublicKey>;
|
|
41
47
|
handle(protocols: string | string[], handler: StreamHandler, options?: StreamHandlerOptions): Promise<void>;
|
|
42
48
|
unhandle(protocols: string[] | string): Promise<void>;
|
|
43
49
|
register(protocol: string, topology: Topology): Promise<string>;
|
|
44
50
|
unregister(id: string): void;
|
|
45
51
|
isDialable(multiaddr: Multiaddr, options?: IsDialableOptions): Promise<boolean>;
|
|
46
52
|
}
|
|
47
|
-
/**
|
|
48
|
-
* Returns a new Libp2pNode instance - this exposes more of the internals than the
|
|
49
|
-
* libp2p interface and is useful for testing and debugging.
|
|
50
|
-
*/
|
|
51
|
-
export declare function createLibp2pNode<T extends ServiceMap = ServiceMap>(options?: Libp2pOptions<T>): Promise<Libp2pNode<T>>;
|
|
52
53
|
//# sourceMappingURL=libp2p.d.ts.map
|
package/dist/src/libp2p.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libp2p.d.ts","sourceRoot":"","sources":["../../src/libp2p.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"libp2p.d.ts","sourceRoot":"","sources":["../../src/libp2p.ts"],"names":[],"mappings":"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"}
|