@streamr/trackerless-network 103.0.0 → 103.1.0-rc.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/generated/packages/trackerless-network/protos/NetworkRpc.client.d.ts +4 -4
- package/dist/generated/packages/trackerless-network/protos/NetworkRpc.client.js +7 -7
- package/dist/generated/packages/trackerless-network/protos/NetworkRpc.d.ts +2 -2
- package/dist/generated/packages/trackerless-network/protos/NetworkRpc.js +3 -3
- package/dist/generated/packages/trackerless-network/protos/NetworkRpc.server.d.ts +2 -2
- package/dist/package.json +5 -5
- package/dist/src/ContentDeliveryManager.d.ts +1 -1
- package/dist/src/ContentDeliveryManager.js +1 -1
- package/dist/src/content-delivery-layer/ContentDeliveryLayerNode.d.ts +2 -2
- package/dist/src/content-delivery-layer/ContentDeliveryLayerNode.js +4 -4
- package/dist/src/content-delivery-layer/ContentDeliveryRpcLocal.d.ts +2 -2
- package/dist/src/content-delivery-layer/ContentDeliveryRpcLocal.js +3 -3
- package/dist/src/content-delivery-layer/createContentDeliveryLayerNode.d.ts +1 -1
- package/dist/src/content-delivery-layer/createContentDeliveryLayerNode.js +3 -3
- package/dist/src/content-delivery-layer/createContentDeliveryLayerNode.js.map +1 -1
- package/dist/src/content-delivery-layer/plumtree/PausedNeighbors.js.map +1 -0
- package/dist/src/content-delivery-layer/{plum-tree/PlumTreeManager.d.ts → plumtree/PlumtreeManager.d.ts} +1 -1
- package/dist/src/content-delivery-layer/{plum-tree/PlumTreeManager.js → plumtree/PlumtreeManager.js} +8 -8
- package/dist/src/content-delivery-layer/plumtree/PlumtreeManager.js.map +1 -0
- package/dist/src/content-delivery-layer/{plum-tree/PlumTreeRpcLocal.d.ts → plumtree/PlumtreeRpcLocal.d.ts} +2 -2
- package/dist/src/content-delivery-layer/{plum-tree/PlumTreeRpcLocal.js → plumtree/PlumtreeRpcLocal.js} +4 -4
- package/dist/src/content-delivery-layer/plumtree/PlumtreeRpcLocal.js.map +1 -0
- package/dist/src/content-delivery-layer/{plum-tree/PlumTreeRpcRemote.d.ts → plumtree/PlumtreeRpcRemote.d.ts} +2 -2
- package/dist/src/content-delivery-layer/{plum-tree/PlumTreeRpcRemote.js → plumtree/PlumtreeRpcRemote.js} +4 -4
- package/dist/src/content-delivery-layer/plumtree/PlumtreeRpcRemote.js.map +1 -0
- package/dist/src/exports.d.ts +1 -1
- package/dist/src/exports.js.map +1 -1
- package/dist/test/utils/utils.d.ts +1 -1
- package/dist/test/utils/utils.js +2 -2
- package/package.json +5 -5
- package/dist/src/content-delivery-layer/plum-tree/PausedNeighbors.js.map +0 -1
- package/dist/src/content-delivery-layer/plum-tree/PlumTreeManager.js.map +0 -1
- package/dist/src/content-delivery-layer/plum-tree/PlumTreeRpcLocal.js.map +0 -1
- package/dist/src/content-delivery-layer/plum-tree/PlumTreeRpcRemote.js.map +0 -1
- /package/dist/src/content-delivery-layer/{plum-tree → plumtree}/PausedNeighbors.d.ts +0 -0
- /package/dist/src/content-delivery-layer/{plum-tree → plumtree}/PausedNeighbors.js +0 -0
|
@@ -195,9 +195,9 @@ export declare class NodeInfoRpcClient implements INodeInfoRpcClient, ServiceInf
|
|
|
195
195
|
getInfo(input: NodeInfoRequest, options?: RpcOptions): UnaryCall<NodeInfoRequest, NodeInfoResponse>;
|
|
196
196
|
}
|
|
197
197
|
/**
|
|
198
|
-
* @generated from protobuf service
|
|
198
|
+
* @generated from protobuf service PlumtreeRpc
|
|
199
199
|
*/
|
|
200
|
-
export interface
|
|
200
|
+
export interface IPlumtreeRpcClient {
|
|
201
201
|
/**
|
|
202
202
|
* @generated from protobuf rpc: pauseNeighbor
|
|
203
203
|
*/
|
|
@@ -212,9 +212,9 @@ export interface IPlumTreeRpcClient {
|
|
|
212
212
|
sendMetadata(input: MessageID, options?: RpcOptions): UnaryCall<MessageID, Empty>;
|
|
213
213
|
}
|
|
214
214
|
/**
|
|
215
|
-
* @generated from protobuf service
|
|
215
|
+
* @generated from protobuf service PlumtreeRpc
|
|
216
216
|
*/
|
|
217
|
-
export declare class
|
|
217
|
+
export declare class PlumtreeRpcClient implements IPlumtreeRpcClient, ServiceInfo {
|
|
218
218
|
private readonly _transport;
|
|
219
219
|
typeName: string;
|
|
220
220
|
methods: import("@protobuf-ts/runtime-rpc").MethodInfo<any, any>[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.PlumtreeRpcClient = exports.NodeInfoRpcClient = exports.TemporaryConnectionRpcClient = exports.NeighborUpdateRpcClient = exports.HandshakeRpcClient = exports.ProxyConnectionRpcClient = exports.ContentDeliveryRpcClient = void 0;
|
|
4
4
|
// @generated by protobuf-ts 2.11.0 with parameter server_generic,generate_dependencies,long_type_number
|
|
5
5
|
// @generated from protobuf file "packages/trackerless-network/protos/NetworkRpc.proto" (syntax proto3)
|
|
6
6
|
// tslint:disable
|
|
@@ -154,13 +154,13 @@ class NodeInfoRpcClient {
|
|
|
154
154
|
}
|
|
155
155
|
exports.NodeInfoRpcClient = NodeInfoRpcClient;
|
|
156
156
|
/**
|
|
157
|
-
* @generated from protobuf service
|
|
157
|
+
* @generated from protobuf service PlumtreeRpc
|
|
158
158
|
*/
|
|
159
|
-
class
|
|
159
|
+
class PlumtreeRpcClient {
|
|
160
160
|
_transport;
|
|
161
|
-
typeName = NetworkRpc_1.
|
|
162
|
-
methods = NetworkRpc_1.
|
|
163
|
-
options = NetworkRpc_1.
|
|
161
|
+
typeName = NetworkRpc_1.PlumtreeRpc.typeName;
|
|
162
|
+
methods = NetworkRpc_1.PlumtreeRpc.methods;
|
|
163
|
+
options = NetworkRpc_1.PlumtreeRpc.options;
|
|
164
164
|
constructor(_transport) {
|
|
165
165
|
this._transport = _transport;
|
|
166
166
|
}
|
|
@@ -186,5 +186,5 @@ class PlumTreeRpcClient {
|
|
|
186
186
|
return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input);
|
|
187
187
|
}
|
|
188
188
|
}
|
|
189
|
-
exports.
|
|
189
|
+
exports.PlumtreeRpcClient = PlumtreeRpcClient;
|
|
190
190
|
//# sourceMappingURL=NetworkRpc.client.js.map
|
|
@@ -681,7 +681,7 @@ export declare const TemporaryConnectionRpc: ServiceType;
|
|
|
681
681
|
*/
|
|
682
682
|
export declare const NodeInfoRpc: ServiceType;
|
|
683
683
|
/**
|
|
684
|
-
* @generated ServiceType for protobuf service
|
|
684
|
+
* @generated ServiceType for protobuf service PlumtreeRpc
|
|
685
685
|
*/
|
|
686
|
-
export declare const
|
|
686
|
+
export declare const PlumtreeRpc: ServiceType;
|
|
687
687
|
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.PlumtreeRpc = exports.NodeInfoRpc = exports.TemporaryConnectionRpc = exports.NeighborUpdateRpc = exports.HandshakeRpc = exports.ProxyConnectionRpc = exports.ContentDeliveryRpc = exports.ResumeNeighborRequest = exports.PauseNeighborRequest = exports.NodeInfoResponse = exports.NodeInfoRequest = exports.ControlLayerInfo = exports.ContentDeliveryLayerNeighborInfo = exports.StreamPartitionInfo = exports.CloseTemporaryConnection = exports.TemporaryConnectionResponse = exports.TemporaryConnectionRequest = exports.ProxyConnectionResponse = exports.ProxyConnectionRequest = exports.NeighborUpdate = exports.LeaveStreamPartNotice = exports.InterleaveResponse = exports.InterleaveRequest = exports.StreamPartHandshakeResponse = exports.StreamPartHandshakeRequest = exports.EncryptedGroupKey = exports.GroupKeyResponse = exports.GroupKeyRequest = exports.ContentMessage = exports.StreamMessage = exports.MessageRef = exports.MessageID = exports.ProxyDirection = exports.SignatureType = exports.AsymmetricEncryptionType = exports.EncryptionType = exports.ContentType = void 0;
|
|
4
4
|
// @generated by protobuf-ts 2.11.0 with parameter server_generic,generate_dependencies,long_type_number
|
|
5
5
|
// @generated from protobuf file "packages/trackerless-network/protos/NetworkRpc.proto" (syntax proto3)
|
|
6
6
|
// tslint:disable
|
|
@@ -469,9 +469,9 @@ exports.NodeInfoRpc = new runtime_rpc_1.ServiceType("NodeInfoRpc", [
|
|
|
469
469
|
{ name: "getInfo", options: {}, I: exports.NodeInfoRequest, O: exports.NodeInfoResponse }
|
|
470
470
|
]);
|
|
471
471
|
/**
|
|
472
|
-
* @generated ServiceType for protobuf service
|
|
472
|
+
* @generated ServiceType for protobuf service PlumtreeRpc
|
|
473
473
|
*/
|
|
474
|
-
exports.
|
|
474
|
+
exports.PlumtreeRpc = new runtime_rpc_1.ServiceType("PlumtreeRpc", [
|
|
475
475
|
{ name: "pauseNeighbor", options: {}, I: exports.PauseNeighborRequest, O: empty_1.Empty },
|
|
476
476
|
{ name: "resumeNeighbor", options: {}, I: exports.ResumeNeighborRequest, O: empty_1.Empty },
|
|
477
477
|
{ name: "sendMetadata", options: {}, I: exports.MessageID, O: empty_1.Empty }
|
|
@@ -84,9 +84,9 @@ export interface INodeInfoRpc<T = ServerCallContext> {
|
|
|
84
84
|
getInfo(request: NodeInfoRequest, context: T): Promise<NodeInfoResponse>;
|
|
85
85
|
}
|
|
86
86
|
/**
|
|
87
|
-
* @generated from protobuf service
|
|
87
|
+
* @generated from protobuf service PlumtreeRpc
|
|
88
88
|
*/
|
|
89
|
-
export interface
|
|
89
|
+
export interface IPlumtreeRpc<T = ServerCallContext> {
|
|
90
90
|
/**
|
|
91
91
|
* @generated from protobuf rpc: pauseNeighbor
|
|
92
92
|
*/
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@streamr/trackerless-network",
|
|
3
|
-
"version": "103.0.0",
|
|
3
|
+
"version": "103.1.0-rc.0",
|
|
4
4
|
"description": "Minimal and extendable implementation of the Streamr Network node.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@protobuf-ts/runtime": "^2.8.2",
|
|
38
38
|
"@protobuf-ts/runtime-rpc": "^2.8.2",
|
|
39
|
-
"@streamr/dht": "103.0.0",
|
|
40
|
-
"@streamr/proto-rpc": "103.0.0",
|
|
41
|
-
"@streamr/utils": "103.0.0",
|
|
39
|
+
"@streamr/dht": "103.1.0-rc.0",
|
|
40
|
+
"@streamr/proto-rpc": "103.1.0-rc.0",
|
|
41
|
+
"@streamr/utils": "103.1.0-rc.0",
|
|
42
42
|
"eventemitter3": "^5.0.0",
|
|
43
43
|
"lodash": "^4.17.21",
|
|
44
44
|
"ts-essentials": "^10.1.0",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@streamr/browser-test-runner": "^0.0.1",
|
|
50
|
-
"@streamr/test-utils": "103.0.0",
|
|
50
|
+
"@streamr/test-utils": "103.1.0-rc.0",
|
|
51
51
|
"@types/lodash": "^4.17.17",
|
|
52
52
|
"@types/yallist": "^4.0.1",
|
|
53
53
|
"expect": "^29.6.2",
|
|
@@ -36,7 +36,7 @@ export interface ContentDeliveryManagerOptions {
|
|
|
36
36
|
doNotBufferWhileConnecting?: boolean;
|
|
37
37
|
}
|
|
38
38
|
export interface StreamPartDeliveryOptions {
|
|
39
|
-
|
|
39
|
+
plumtreeOptimization?: boolean;
|
|
40
40
|
}
|
|
41
41
|
export declare const streamPartIdToDataKey: (streamPartId: StreamPartID) => DhtAddress;
|
|
42
42
|
export declare class ContentDeliveryManager extends EventEmitter<Events> {
|
|
@@ -208,7 +208,7 @@ class ContentDeliveryManager extends eventemitter3_1.EventEmitter {
|
|
|
208
208
|
neighborUpdateInterval: this.options.neighborUpdateInterval,
|
|
209
209
|
isLocalNodeEntryPoint,
|
|
210
210
|
doNotBufferWhileConnecting: this.options.doNotBufferWhileConnecting,
|
|
211
|
-
|
|
211
|
+
plumtreeOptimization: streamPartDeliveryOptions?.plumtreeOptimization
|
|
212
212
|
});
|
|
213
213
|
}
|
|
214
214
|
async setProxies(streamPartId, nodes, direction, userId, connectionCount) {
|
|
@@ -12,7 +12,7 @@ import { Propagation } from './propagation/Propagation';
|
|
|
12
12
|
import { ProxyConnectionRpcLocal } from './proxy/ProxyConnectionRpcLocal';
|
|
13
13
|
import { TemporaryConnectionRpcLocal } from './temporary-connection/TemporaryConnectionRpcLocal';
|
|
14
14
|
import { ContentDeliveryLayerNeighborInfo } from '../types';
|
|
15
|
-
import {
|
|
15
|
+
import { PlumtreeManager } from './plumtree/PlumtreeManager';
|
|
16
16
|
export interface Events {
|
|
17
17
|
message: (message: StreamMessage) => void;
|
|
18
18
|
neighborConnected: (nodeId: DhtAddress) => void;
|
|
@@ -41,7 +41,7 @@ export interface StrictContentDeliveryLayerNodeOptions {
|
|
|
41
41
|
isLocalNodeEntryPoint: () => boolean;
|
|
42
42
|
proxyConnectionRpcLocal?: ProxyConnectionRpcLocal;
|
|
43
43
|
rpcRequestTimeout?: number;
|
|
44
|
-
|
|
44
|
+
plumtreeManager?: PlumtreeManager;
|
|
45
45
|
}
|
|
46
46
|
export declare const DEFAULT_NODE_VIEW_SIZE = 20;
|
|
47
47
|
export declare const DEFAULT_NEIGHBOR_TARGET_COUNT = 4;
|
|
@@ -54,7 +54,7 @@ class ContentDeliveryLayerNode extends eventemitter3_1.EventEmitter {
|
|
|
54
54
|
}
|
|
55
55
|
},
|
|
56
56
|
markForInspection: (remoteNodeId, messageId) => this.options.inspector.markMessage(remoteNodeId, messageId),
|
|
57
|
-
|
|
57
|
+
plumtreeManager: this.options.plumtreeManager
|
|
58
58
|
});
|
|
59
59
|
}
|
|
60
60
|
async start() {
|
|
@@ -78,8 +78,8 @@ class ContentDeliveryLayerNode extends eventemitter3_1.EventEmitter {
|
|
|
78
78
|
if (this.options.proxyConnectionRpcLocal !== undefined) {
|
|
79
79
|
(0, utils_1.addManagedEventListener)(this.options.proxyConnectionRpcLocal, 'newConnection', (id) => this.options.propagation.onNeighborJoined(id), this.abortController.signal);
|
|
80
80
|
}
|
|
81
|
-
if (this.options.
|
|
82
|
-
(0, utils_1.addManagedEventListener)(this.options.
|
|
81
|
+
if (this.options.plumtreeManager) {
|
|
82
|
+
(0, utils_1.addManagedEventListener)(this.options.plumtreeManager, 'message', (msg) => this.emit('message', msg), this.abortController.signal);
|
|
83
83
|
}
|
|
84
84
|
this.options.neighborFinder.start();
|
|
85
85
|
await this.options.neighborUpdateManager.start();
|
|
@@ -171,7 +171,7 @@ class ContentDeliveryLayerNode extends eventemitter3_1.EventEmitter {
|
|
|
171
171
|
});
|
|
172
172
|
this.options.rpcCommunicator.destroy();
|
|
173
173
|
this.removeAllListeners();
|
|
174
|
-
this.options.
|
|
174
|
+
this.options.plumtreeManager?.stop();
|
|
175
175
|
this.options.nearbyNodeView.stop();
|
|
176
176
|
this.options.neighbors.stop();
|
|
177
177
|
this.options.randomNodeView.stop();
|
|
@@ -4,7 +4,7 @@ import { StreamPartID } from '@streamr/utils';
|
|
|
4
4
|
import { Empty } from '../../generated/google/protobuf/empty';
|
|
5
5
|
import { LeaveStreamPartNotice, MessageID, MessageRef, StreamMessage } from '../../generated/packages/trackerless-network/protos/NetworkRpc';
|
|
6
6
|
import { IContentDeliveryRpc } from '../../generated/packages/trackerless-network/protos/NetworkRpc.server';
|
|
7
|
-
import {
|
|
7
|
+
import { PlumtreeManager } from './plumtree/PlumtreeManager';
|
|
8
8
|
export interface ContentDeliveryRpcLocalOptions {
|
|
9
9
|
localPeerDescriptor: PeerDescriptor;
|
|
10
10
|
streamPartId: StreamPartID;
|
|
@@ -13,7 +13,7 @@ export interface ContentDeliveryRpcLocalOptions {
|
|
|
13
13
|
onLeaveNotice(remoteNodeId: DhtAddress, isLocalNodeEntryPoint: boolean): void;
|
|
14
14
|
markForInspection(remoteNodeId: DhtAddress, messageId: MessageID): void;
|
|
15
15
|
rpcCommunicator: ListeningRpcCommunicator;
|
|
16
|
-
|
|
16
|
+
plumtreeManager?: PlumtreeManager;
|
|
17
17
|
}
|
|
18
18
|
export declare class ContentDeliveryRpcLocal implements IContentDeliveryRpc {
|
|
19
19
|
private readonly options;
|
|
@@ -12,18 +12,18 @@ class ContentDeliveryRpcLocal {
|
|
|
12
12
|
const previousNode = context.incomingSourceDescriptor;
|
|
13
13
|
const previousNodeId = (0, dht_1.toNodeId)(previousNode);
|
|
14
14
|
this.options.markForInspection(previousNodeId, message.messageId);
|
|
15
|
-
if (this.options.
|
|
15
|
+
if (this.options.plumtreeManager === undefined) {
|
|
16
16
|
if (this.options.markAndCheckDuplicate(message.messageId, message.previousMessageRef)) {
|
|
17
17
|
this.options.broadcast(message, previousNodeId);
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
else if (this.options.markAndCheckDuplicate(message.messageId, message.previousMessageRef)) {
|
|
21
21
|
// Message is not a duplicate, so we can broadcast it over the plumtree
|
|
22
|
-
this.options.
|
|
22
|
+
this.options.plumtreeManager.broadcast(message, previousNodeId);
|
|
23
23
|
}
|
|
24
24
|
else {
|
|
25
25
|
// Message is a duplicate, so we need to pause the neighbor
|
|
26
|
-
await this.options.
|
|
26
|
+
await this.options.plumtreeManager.pauseNeighbor(previousNode, message.messageId.messageChainId);
|
|
27
27
|
}
|
|
28
28
|
return empty_1.Empty;
|
|
29
29
|
}
|
|
@@ -7,7 +7,7 @@ type ContentDeliveryLayerNodeOptions = MarkOptional<StrictContentDeliveryLayerNo
|
|
|
7
7
|
neighborUpdateInterval?: number;
|
|
8
8
|
maxPropagationBufferSize?: number;
|
|
9
9
|
doNotBufferWhileConnecting?: boolean;
|
|
10
|
-
|
|
10
|
+
plumtreeOptimization?: boolean;
|
|
11
11
|
};
|
|
12
12
|
export declare const createContentDeliveryLayerNode: (options: ContentDeliveryLayerNodeOptions) => ContentDeliveryLayerNode;
|
|
13
13
|
export {};
|
|
@@ -12,7 +12,7 @@ const ProxyConnectionRpcLocal_1 = require("./proxy/ProxyConnectionRpcLocal");
|
|
|
12
12
|
const Inspector_1 = require("./inspection/Inspector");
|
|
13
13
|
const TemporaryConnectionRpcLocal_1 = require("./temporary-connection/TemporaryConnectionRpcLocal");
|
|
14
14
|
const formStreamPartDeliveryServiceId_1 = require("./formStreamPartDeliveryServiceId");
|
|
15
|
-
const
|
|
15
|
+
const PlumtreeManager_1 = require("./plumtree/PlumtreeManager");
|
|
16
16
|
const createConfigWithDefaults = (options) => {
|
|
17
17
|
const ownNodeId = (0, dht_1.toNodeId)(options.localPeerDescriptor);
|
|
18
18
|
const rpcCommunicator = options.rpcCommunicator ?? new dht_1.ListeningRpcCommunicator((0, formStreamPartDeliveryServiceId_1.formStreamPartContentDeliveryServiceId)(options.streamPartId), options.transport);
|
|
@@ -39,7 +39,7 @@ const createConfigWithDefaults = (options) => {
|
|
|
39
39
|
streamPartId: options.streamPartId,
|
|
40
40
|
rpcCommunicator
|
|
41
41
|
}) : undefined;
|
|
42
|
-
const
|
|
42
|
+
const plumtreeManager = options.plumtreeOptimization ? new PlumtreeManager_1.PlumtreeManager({
|
|
43
43
|
neighbors,
|
|
44
44
|
localPeerDescriptor: options.localPeerDescriptor,
|
|
45
45
|
rpcCommunicator
|
|
@@ -118,7 +118,7 @@ const createConfigWithDefaults = (options) => {
|
|
|
118
118
|
proxyConnectionRpcLocal,
|
|
119
119
|
inspector,
|
|
120
120
|
temporaryConnectionRpcLocal,
|
|
121
|
-
|
|
121
|
+
plumtreeManager
|
|
122
122
|
};
|
|
123
123
|
};
|
|
124
124
|
const createContentDeliveryLayerNode = (options) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createContentDeliveryLayerNode.js","sourceRoot":"","sources":["../../../src/content-delivery-layer/createContentDeliveryLayerNode.ts"],"names":[],"mappings":";;;AAAA,sCAA6E;AAC7E,gEAA4D;AAC5D,wEAAoE;AACpE,sFAAoH;AACpH,yEAMmC;AACnC,yCAAqC;AACrC,2DAKkC;AAGlC,6EAAyE;AACzE,sDAAkD;AAClD,oGAAgG;AAChG,uFAA0F;AAC1F,
|
|
1
|
+
{"version":3,"file":"createContentDeliveryLayerNode.js","sourceRoot":"","sources":["../../../src/content-delivery-layer/createContentDeliveryLayerNode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PausedNeighbors.js","sourceRoot":"","sources":["../../../../src/content-delivery-layer/plumtree/PausedNeighbors.ts"],"names":[],"mappings":";;;AACA,MAAa,eAAe;IACP,eAAe,CAA8B;IAC7C,KAAK,CAAQ;IAE9B,YAAY,KAAa;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,EAAE,CAAA;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAED,GAAG,CAAC,IAAgB,EAAE,UAAkB;QACpC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;QACnD,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3D,OAAM;QACV,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,CAAC,IAAgB,EAAE,UAAkB;QACvC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAC3C,CAAC;IACL,CAAC;IAED,SAAS,CAAC,IAAgB;QACtB,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE;YACnD,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACtB,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACvB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;YAC3C,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAED,QAAQ,CAAC,IAAgB,EAAE,UAAkB;QACzC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,OAAO,KAAK,CAAA;QAChB,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC1D,CAAC;IAED,OAAO,CAAC,EAA4D;QAChE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE;YACnD,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;IACN,CAAC;CAEJ;AAhDD,0CAgDC"}
|
|
@@ -11,7 +11,7 @@ export declare const MAX_PAUSED_NEIGHBORS_DEFAULT = 3;
|
|
|
11
11
|
interface Events {
|
|
12
12
|
message: (msg: StreamMessage) => void;
|
|
13
13
|
}
|
|
14
|
-
export declare class
|
|
14
|
+
export declare class PlumtreeManager extends EventEmitter<Events> {
|
|
15
15
|
private readonly neighbors;
|
|
16
16
|
private readonly localPeerDescriptor;
|
|
17
17
|
private readonly localPausedNeighbors;
|
package/dist/src/content-delivery-layer/{plum-tree/PlumTreeManager.js → plumtree/PlumtreeManager.js}
RENAMED
|
@@ -3,11 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.PlumtreeManager = exports.MAX_PAUSED_NEIGHBORS_DEFAULT = void 0;
|
|
7
7
|
const dht_1 = require("@streamr/dht");
|
|
8
8
|
const NetworkRpc_1 = require("../../../generated/packages/trackerless-network/protos/NetworkRpc");
|
|
9
|
-
const
|
|
10
|
-
const
|
|
9
|
+
const PlumtreeRpcLocal_1 = require("./PlumtreeRpcLocal");
|
|
10
|
+
const PlumtreeRpcRemote_1 = require("./PlumtreeRpcRemote");
|
|
11
11
|
const NetworkRpc_client_1 = require("../../../generated/packages/trackerless-network/protos/NetworkRpc.client");
|
|
12
12
|
const eventemitter3_1 = __importDefault(require("eventemitter3"));
|
|
13
13
|
const utils_1 = require("@streamr/utils");
|
|
@@ -15,7 +15,7 @@ const ContentDeliveryRpcRemote_1 = require("../ContentDeliveryRpcRemote");
|
|
|
15
15
|
const PausedNeighbors_1 = require("./PausedNeighbors");
|
|
16
16
|
exports.MAX_PAUSED_NEIGHBORS_DEFAULT = 3;
|
|
17
17
|
const logger = new utils_1.Logger(module);
|
|
18
|
-
class
|
|
18
|
+
class PlumtreeManager extends eventemitter3_1.default {
|
|
19
19
|
neighbors;
|
|
20
20
|
localPeerDescriptor;
|
|
21
21
|
// We have paused sending real data to these neighbrs and only send metadata
|
|
@@ -30,7 +30,7 @@ class PlumTreeManager extends eventemitter3_1.default {
|
|
|
30
30
|
super();
|
|
31
31
|
this.neighbors = options.neighbors;
|
|
32
32
|
this.localPeerDescriptor = options.localPeerDescriptor;
|
|
33
|
-
this.rpcLocal = new
|
|
33
|
+
this.rpcLocal = new PlumtreeRpcLocal_1.PlumtreeRpcLocal(this.neighbors, this.localPausedNeighbors, (metadata, previousNode) => this.onMetadata(metadata, previousNode), (fromTimestamp, msgChainId, remotePeerDescriptor) => this.sendBuffer(fromTimestamp, msgChainId, remotePeerDescriptor));
|
|
34
34
|
this.neighbors.on('nodeRemoved', (nodeId) => this.onNeighborRemoved(nodeId));
|
|
35
35
|
this.rpcCommunicator = options.rpcCommunicator;
|
|
36
36
|
this.rpcCommunicator.registerRpcNotification(NetworkRpc_1.MessageID, 'sendMetadata', (msg, context) => this.rpcLocal.sendMetadata(msg, context));
|
|
@@ -94,7 +94,7 @@ class PlumTreeManager extends eventemitter3_1.default {
|
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
96
|
createRemote(neighbor) {
|
|
97
|
-
return new
|
|
97
|
+
return new PlumtreeRpcRemote_1.PlumtreeRpcRemote(this.localPeerDescriptor, neighbor, this.rpcCommunicator, NetworkRpc_client_1.PlumtreeRpcClient);
|
|
98
98
|
}
|
|
99
99
|
broadcast(msg, previousNode) {
|
|
100
100
|
const messageChainId = msg.messageId.messageChainId;
|
|
@@ -131,5 +131,5 @@ class PlumTreeManager extends eventemitter3_1.default {
|
|
|
131
131
|
this.neighbors.off('nodeRemoved', this.onNeighborRemoved);
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
|
-
exports.
|
|
135
|
-
//# sourceMappingURL=
|
|
134
|
+
exports.PlumtreeManager = PlumtreeManager;
|
|
135
|
+
//# sourceMappingURL=PlumtreeManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlumtreeManager.js","sourceRoot":"","sources":["../../../../src/content-delivery-layer/plumtree/PlumtreeManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,12 +2,12 @@ import { PeerDescriptor } from '@streamr/dht';
|
|
|
2
2
|
import { MessageID, PauseNeighborRequest, ResumeNeighborRequest } from '../../../generated/packages/trackerless-network/protos/NetworkRpc';
|
|
3
3
|
import { Empty } from '../../../generated/google/protobuf/empty';
|
|
4
4
|
import { ServerCallContext } from '@protobuf-ts/runtime-rpc';
|
|
5
|
-
import {
|
|
5
|
+
import { IPlumtreeRpc } from '../../../generated/packages/trackerless-network/protos/NetworkRpc.server';
|
|
6
6
|
import { NodeList } from '../NodeList';
|
|
7
7
|
import { PausedNeighbors } from './PausedNeighbors';
|
|
8
8
|
type OnMetadataCb = (msg: MessageID, previousNode: PeerDescriptor) => Promise<void>;
|
|
9
9
|
type SendBufferCb = (fromTimestamp: number, msgChainId: string, remotePeerDescriptor: PeerDescriptor) => Promise<void>;
|
|
10
|
-
export declare class
|
|
10
|
+
export declare class PlumtreeRpcLocal implements IPlumtreeRpc {
|
|
11
11
|
private readonly neighbors;
|
|
12
12
|
private readonly pausedNodes;
|
|
13
13
|
private readonly onMetadataCb;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.PlumtreeRpcLocal = void 0;
|
|
4
4
|
const dht_1 = require("@streamr/dht");
|
|
5
5
|
const empty_1 = require("../../../generated/google/protobuf/empty");
|
|
6
|
-
class
|
|
6
|
+
class PlumtreeRpcLocal {
|
|
7
7
|
neighbors;
|
|
8
8
|
pausedNodes;
|
|
9
9
|
onMetadataCb;
|
|
@@ -33,5 +33,5 @@ class PlumTreeRpcLocal {
|
|
|
33
33
|
return empty_1.Empty;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
-
exports.
|
|
37
|
-
//# sourceMappingURL=
|
|
36
|
+
exports.PlumtreeRpcLocal = PlumtreeRpcLocal;
|
|
37
|
+
//# sourceMappingURL=PlumtreeRpcLocal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlumtreeRpcLocal.js","sourceRoot":"","sources":["../../../../src/content-delivery-layer/plumtree/PlumtreeRpcLocal.ts"],"names":[],"mappings":";;;AAAA,sCAAuE;AAEvE,oEAAgE;AAQhE,MAAa,gBAAgB;IAER,SAAS,CAAU;IACnB,WAAW,CAAiB;IAC5B,YAAY,CAAc;IAC1B,UAAU,CAAc;IAEzC,YACI,SAAmB,EACnB,WAA4B,EAC5B,YAA0B,EAC1B,UAAwB;QAExB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAChC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAkB,EAAE,OAA0B;QAC7D,MAAM,YAAY,GAAI,OAA0B,CAAC,wBAAyB,CAAA;QAC1E,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;QAC9C,OAAO,aAAK,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAA6B,EAAE,OAA0B;QACzE,MAAM,MAAM,GAAG,IAAA,cAAQ,EAAE,OAA0B,CAAC,wBAAyB,CAAC,CAAA;QAC9E,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;QACxD,CAAC;QACD,OAAO,aAAK,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAA8B,EAAE,OAA0B;QAC3E,MAAM,MAAM,GAAI,OAA0B,CAAC,wBAAyB,CAAA;QACpE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAA,cAAQ,EAAC,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;QACjE,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;QAC5E,OAAO,aAAK,CAAA;IAChB,CAAC;CACJ;AAvCD,4CAuCC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { RpcRemote } from '@streamr/dht';
|
|
2
2
|
import { MessageID } from '../../../generated/packages/trackerless-network/protos/NetworkRpc';
|
|
3
|
-
import {
|
|
4
|
-
export declare class
|
|
3
|
+
import { PlumtreeRpcClient } from '../../../generated/packages/trackerless-network/protos/NetworkRpc.client';
|
|
4
|
+
export declare class PlumtreeRpcRemote extends RpcRemote<PlumtreeRpcClient> {
|
|
5
5
|
sendMetadata(msg: MessageID): Promise<void>;
|
|
6
6
|
pauseNeighbor(messageChainId: string): Promise<void>;
|
|
7
7
|
resumeNeighbor(fromTimestamp: number, messageChainId: string): Promise<void>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.PlumtreeRpcRemote = void 0;
|
|
4
4
|
const dht_1 = require("@streamr/dht");
|
|
5
|
-
class
|
|
5
|
+
class PlumtreeRpcRemote extends dht_1.RpcRemote {
|
|
6
6
|
async sendMetadata(msg) {
|
|
7
7
|
const options = this.formDhtRpcOptions({
|
|
8
8
|
notification: true
|
|
@@ -22,5 +22,5 @@ class PlumTreeRpcRemote extends dht_1.RpcRemote {
|
|
|
22
22
|
await this.getClient().resumeNeighbor({ fromTimestamp, messageChainId }, options);
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
exports.
|
|
26
|
-
//# sourceMappingURL=
|
|
25
|
+
exports.PlumtreeRpcRemote = PlumtreeRpcRemote;
|
|
26
|
+
//# sourceMappingURL=PlumtreeRpcRemote.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlumtreeRpcRemote.js","sourceRoot":"","sources":["../../../../src/content-delivery-layer/plumtree/PlumtreeRpcRemote.ts"],"names":[],"mappings":";;;AAAA,sCAAwC;AAIxC,MAAa,iBAAkB,SAAQ,eAA4B;IAE/D,KAAK,CAAC,YAAY,CAAC,GAAc;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACrD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,cAAsB;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,aAAa,CAAC,EAAE,cAAc,EAAE,EAAE,OAAO,CAAC,CAAA;IACrE,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,aAAqB,EAAE,cAAsB;QAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,cAAc,EAAE,EAAE,OAAO,CAAC,CAAA;IACrF,CAAC;CAEJ;AAvBD,8CAuBC"}
|
package/dist/src/exports.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { NetworkNode, createNetworkNode } from './NetworkNode';
|
|
2
2
|
export { type NetworkOptions, NetworkStack } from './NetworkStack';
|
|
3
|
-
export { type ContentDeliveryManagerOptions, streamPartIdToDataKey } from './ContentDeliveryManager';
|
|
3
|
+
export { type ContentDeliveryManagerOptions, type StreamPartDeliveryOptions, streamPartIdToDataKey } from './ContentDeliveryManager';
|
|
4
4
|
export { AsymmetricEncryptionType, ContentType, EncryptionType, EncryptedGroupKey, GroupKeyRequest, GroupKeyResponse, MessageID, MessageRef, ProxyDirection, SignatureType, StreamMessage, ControlLayerInfo } from '../generated/packages/trackerless-network/protos/NetworkRpc';
|
|
5
5
|
export type { ExternalRpcClient, ExternalRpcClientClass } from './control-layer/ExternalNetworkRpc';
|
|
6
6
|
export type { NodeInfo, StreamPartitionInfo, ContentDeliveryLayerNeighborInfo } from './types';
|
package/dist/src/exports.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../../src/exports.ts"],"names":[],"mappings":";;;AAAA,6CAA8D;AAArD,0GAAA,WAAW,OAAA;AAAE,gHAAA,iBAAiB,OAAA;AACvC,+CAAkE;AAApC,4GAAA,YAAY,OAAA;AAC1C,
|
|
1
|
+
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../../src/exports.ts"],"names":[],"mappings":";;;AAAA,6CAA8D;AAArD,0GAAA,WAAW,OAAA;AAAE,gHAAA,iBAAiB,OAAA;AACvC,+CAAkE;AAApC,4GAAA,YAAY,OAAA;AAC1C,mEAAoI;AAAvD,+HAAA,qBAAqB,OAAA;AAClG,0FAaoE;AAZhE,sHAAA,wBAAwB,OAAA;AACxB,yGAAA,WAAW,OAAA;AACX,4GAAA,cAAc,OAAA;AACd,+GAAA,iBAAiB,OAAA;AACjB,6GAAA,eAAe,OAAA;AACf,8GAAA,gBAAgB,OAAA;AAChB,uGAAA,SAAS,OAAA;AACT,wGAAA,UAAU,OAAA;AACV,4GAAA,cAAc,OAAA;AACd,2GAAA,aAAa,OAAA;AACb,2GAAA,aAAa,OAAA;AACb,8GAAA,gBAAgB,OAAA"}
|
|
@@ -7,7 +7,7 @@ import { DiscoveryLayerNode } from '../../src/discovery-layer/DiscoveryLayerNode
|
|
|
7
7
|
import { HandshakeRpcRemote } from '../../src/content-delivery-layer/neighbor-discovery/HandshakeRpcRemote';
|
|
8
8
|
import { StreamMessage } from '../../generated/packages/trackerless-network/protos/NetworkRpc';
|
|
9
9
|
export declare const mockConnectionLocker: ConnectionLocker;
|
|
10
|
-
export declare const createMockContentDeliveryLayerNodeAndDhtNode: (localPeerDescriptor: PeerDescriptor, entryPointDescriptor: PeerDescriptor, streamPartId: StreamPartID, simulator: Simulator,
|
|
10
|
+
export declare const createMockContentDeliveryLayerNodeAndDhtNode: (localPeerDescriptor: PeerDescriptor, entryPointDescriptor: PeerDescriptor, streamPartId: StreamPartID, simulator: Simulator, plumtreeOptimization?: boolean) => Promise<[DiscoveryLayerNode, ContentDeliveryLayerNode]>;
|
|
11
11
|
export declare const createStreamMessage: (content: string, streamPartId: StreamPartID, publisherId: UserID, timestamp?: number, sequenceNumber?: number) => StreamMessage;
|
|
12
12
|
export declare const createMockPeerDescriptor: (opts?: Partial<PeerDescriptor>) => PeerDescriptor;
|
|
13
13
|
export declare const createMockContentDeliveryRpcRemote: (remotePeerDescriptor?: PeerDescriptor) => ContentDeliveryRpcRemote;
|
package/dist/test/utils/utils.js
CHANGED
|
@@ -19,7 +19,7 @@ exports.mockConnectionLocker = {
|
|
|
19
19
|
getRemoteLockedConnectionCount: () => 0,
|
|
20
20
|
getWeakLockedConnectionCount: () => 0,
|
|
21
21
|
};
|
|
22
|
-
const createMockContentDeliveryLayerNodeAndDhtNode = async (localPeerDescriptor, entryPointDescriptor, streamPartId, simulator,
|
|
22
|
+
const createMockContentDeliveryLayerNodeAndDhtNode = async (localPeerDescriptor, entryPointDescriptor, streamPartId, simulator, plumtreeOptimization) => {
|
|
23
23
|
const mockCm = new dht_1.SimulatorTransport(localPeerDescriptor, simulator);
|
|
24
24
|
await mockCm.start();
|
|
25
25
|
const discoveryLayerNode = new dht_1.DhtNode({
|
|
@@ -39,7 +39,7 @@ const createMockContentDeliveryLayerNodeAndDhtNode = async (localPeerDescriptor,
|
|
|
39
39
|
localPeerDescriptor,
|
|
40
40
|
rpcRequestTimeout: 5000,
|
|
41
41
|
isLocalNodeEntryPoint: () => false,
|
|
42
|
-
|
|
42
|
+
plumtreeOptimization
|
|
43
43
|
});
|
|
44
44
|
return [discoveryLayerNode, contentDeliveryLayerNode];
|
|
45
45
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@streamr/trackerless-network",
|
|
3
|
-
"version": "103.0.0",
|
|
3
|
+
"version": "103.1.0-rc.0",
|
|
4
4
|
"description": "Minimal and extendable implementation of the Streamr Network node.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@protobuf-ts/runtime": "^2.8.2",
|
|
38
38
|
"@protobuf-ts/runtime-rpc": "^2.8.2",
|
|
39
|
-
"@streamr/dht": "103.0.0",
|
|
40
|
-
"@streamr/proto-rpc": "103.0.0",
|
|
41
|
-
"@streamr/utils": "103.0.0",
|
|
39
|
+
"@streamr/dht": "103.1.0-rc.0",
|
|
40
|
+
"@streamr/proto-rpc": "103.1.0-rc.0",
|
|
41
|
+
"@streamr/utils": "103.1.0-rc.0",
|
|
42
42
|
"eventemitter3": "^5.0.0",
|
|
43
43
|
"lodash": "^4.17.21",
|
|
44
44
|
"ts-essentials": "^10.1.0",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@streamr/browser-test-runner": "^0.0.1",
|
|
50
|
-
"@streamr/test-utils": "103.0.0",
|
|
50
|
+
"@streamr/test-utils": "103.1.0-rc.0",
|
|
51
51
|
"@types/lodash": "^4.17.17",
|
|
52
52
|
"@types/yallist": "^4.0.1",
|
|
53
53
|
"expect": "^29.6.2",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PausedNeighbors.js","sourceRoot":"","sources":["../../../../src/content-delivery-layer/plum-tree/PausedNeighbors.ts"],"names":[],"mappings":";;;AACA,MAAa,eAAe;IACP,eAAe,CAA8B;IAC7C,KAAK,CAAQ;IAE9B,YAAY,KAAa;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,EAAE,CAAA;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAED,GAAG,CAAC,IAAgB,EAAE,UAAkB;QACpC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;QACnD,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3D,OAAM;QACV,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,CAAC,IAAgB,EAAE,UAAkB;QACvC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAC3C,CAAC;IACL,CAAC;IAED,SAAS,CAAC,IAAgB;QACtB,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE;YACnD,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACtB,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACvB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;YAC3C,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAED,QAAQ,CAAC,IAAgB,EAAE,UAAkB;QACzC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,OAAO,KAAK,CAAA;QAChB,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC1D,CAAC;IAED,OAAO,CAAC,EAA4D;QAChE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE;YACnD,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;IACN,CAAC;CAEJ;AAhDD,0CAgDC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PlumTreeManager.js","sourceRoot":"","sources":["../../../../src/content-delivery-layer/plum-tree/PlumTreeManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PlumTreeRpcLocal.js","sourceRoot":"","sources":["../../../../src/content-delivery-layer/plum-tree/PlumTreeRpcLocal.ts"],"names":[],"mappings":";;;AAAA,sCAAuE;AAEvE,oEAAgE;AAQhE,MAAa,gBAAgB;IAER,SAAS,CAAU;IACnB,WAAW,CAAiB;IAC5B,YAAY,CAAc;IAC1B,UAAU,CAAc;IAEzC,YACI,SAAmB,EACnB,WAA4B,EAC5B,YAA0B,EAC1B,UAAwB;QAExB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAChC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAkB,EAAE,OAA0B;QAC7D,MAAM,YAAY,GAAI,OAA0B,CAAC,wBAAyB,CAAA;QAC1E,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;QAC9C,OAAO,aAAK,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAA6B,EAAE,OAA0B;QACzE,MAAM,MAAM,GAAG,IAAA,cAAQ,EAAE,OAA0B,CAAC,wBAAyB,CAAC,CAAA;QAC9E,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;QACxD,CAAC;QACD,OAAO,aAAK,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAA8B,EAAE,OAA0B;QAC3E,MAAM,MAAM,GAAI,OAA0B,CAAC,wBAAyB,CAAA;QACpE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAA,cAAQ,EAAC,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;QACjE,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;QAC5E,OAAO,aAAK,CAAA;IAChB,CAAC;CACJ;AAvCD,4CAuCC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PlumTreeRpcRemote.js","sourceRoot":"","sources":["../../../../src/content-delivery-layer/plum-tree/PlumTreeRpcRemote.ts"],"names":[],"mappings":";;;AAAA,sCAAwC;AAIxC,MAAa,iBAAkB,SAAQ,eAA4B;IAE/D,KAAK,CAAC,YAAY,CAAC,GAAc;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACrD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,cAAsB;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,aAAa,CAAC,EAAE,cAAc,EAAE,EAAE,OAAO,CAAC,CAAA;IACrE,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,aAAqB,EAAE,cAAsB;QAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,cAAc,EAAE,EAAE,OAAO,CAAC,CAAA;IACrF,CAAC;CAEJ;AAvBD,8CAuBC"}
|
|
File without changes
|
|
File without changes
|