@streamr/trackerless-network 103.0.0 → 103.1.0-rc.1

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.
Files changed (43) hide show
  1. package/dist/generated/packages/dht/protos/DhtRpc.client.js +1 -1
  2. package/dist/generated/packages/dht/protos/DhtRpc.js +1 -1
  3. package/dist/generated/packages/proto-rpc/protos/ProtoRpc.js +1 -1
  4. package/dist/generated/packages/trackerless-network/protos/NetworkRpc.client.d.ts +4 -4
  5. package/dist/generated/packages/trackerless-network/protos/NetworkRpc.client.js +8 -8
  6. package/dist/generated/packages/trackerless-network/protos/NetworkRpc.d.ts +2 -2
  7. package/dist/generated/packages/trackerless-network/protos/NetworkRpc.js +4 -4
  8. package/dist/generated/packages/trackerless-network/protos/NetworkRpc.server.d.ts +2 -2
  9. package/dist/package.json +9 -9
  10. package/dist/src/ContentDeliveryManager.d.ts +8 -1
  11. package/dist/src/ContentDeliveryManager.js +3 -1
  12. package/dist/src/ContentDeliveryManager.js.map +1 -1
  13. package/dist/src/content-delivery-layer/ContentDeliveryLayerNode.d.ts +2 -2
  14. package/dist/src/content-delivery-layer/ContentDeliveryLayerNode.js +4 -4
  15. package/dist/src/content-delivery-layer/ContentDeliveryRpcLocal.d.ts +2 -2
  16. package/dist/src/content-delivery-layer/ContentDeliveryRpcLocal.js +3 -3
  17. package/dist/src/content-delivery-layer/createContentDeliveryLayerNode.d.ts +2 -1
  18. package/dist/src/content-delivery-layer/createContentDeliveryLayerNode.js +5 -4
  19. package/dist/src/content-delivery-layer/createContentDeliveryLayerNode.js.map +1 -1
  20. package/dist/src/content-delivery-layer/neighbor-discovery/Handshaker.js +37 -41
  21. package/dist/src/content-delivery-layer/neighbor-discovery/Handshaker.js.map +1 -1
  22. package/dist/src/content-delivery-layer/{plum-tree → plumtree}/PausedNeighbors.d.ts +1 -0
  23. package/dist/src/content-delivery-layer/{plum-tree → plumtree}/PausedNeighbors.js +3 -0
  24. package/dist/src/content-delivery-layer/plumtree/PausedNeighbors.js.map +1 -0
  25. package/dist/src/content-delivery-layer/{plum-tree/PlumTreeManager.d.ts → plumtree/PlumtreeManager.d.ts} +3 -1
  26. package/dist/src/content-delivery-layer/{plum-tree/PlumTreeManager.js → plumtree/PlumtreeManager.js} +17 -11
  27. package/dist/src/content-delivery-layer/plumtree/PlumtreeManager.js.map +1 -0
  28. package/dist/src/content-delivery-layer/{plum-tree/PlumTreeRpcLocal.d.ts → plumtree/PlumtreeRpcLocal.d.ts} +2 -2
  29. package/dist/src/content-delivery-layer/{plum-tree/PlumTreeRpcLocal.js → plumtree/PlumtreeRpcLocal.js} +4 -4
  30. package/dist/src/content-delivery-layer/plumtree/PlumtreeRpcLocal.js.map +1 -0
  31. package/dist/src/content-delivery-layer/{plum-tree/PlumTreeRpcRemote.d.ts → plumtree/PlumtreeRpcRemote.d.ts} +2 -2
  32. package/dist/src/content-delivery-layer/{plum-tree/PlumTreeRpcRemote.js → plumtree/PlumtreeRpcRemote.js} +4 -4
  33. package/dist/src/content-delivery-layer/plumtree/PlumtreeRpcRemote.js.map +1 -0
  34. package/dist/src/exports.d.ts +1 -1
  35. package/dist/src/exports.js.map +1 -1
  36. package/dist/test/utils/utils.d.ts +1 -1
  37. package/dist/test/utils/utils.js +3 -2
  38. package/dist/test/utils/utils.js.map +1 -1
  39. package/package.json +9 -9
  40. package/dist/src/content-delivery-layer/plum-tree/PausedNeighbors.js.map +0 -1
  41. package/dist/src/content-delivery-layer/plum-tree/PlumTreeManager.js.map +0 -1
  42. package/dist/src/content-delivery-layer/plum-tree/PlumTreeRpcLocal.js.map +0 -1
  43. package/dist/src/content-delivery-layer/plum-tree/PlumTreeRpcRemote.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ExternalApiRpcClient = exports.ConnectionLockRpcClient = exports.WebrtcConnectorRpcClient = exports.WebsocketClientConnectorRpcClient = exports.RecursiveOperationSessionRpcClient = exports.StoreRpcClient = exports.RecursiveOperationRpcClient = exports.RouterRpcClient = exports.DhtNodeRpcClient = void 0;
4
- // @generated by protobuf-ts 2.11.0 with parameter server_generic,generate_dependencies,long_type_number
4
+ // @generated by protobuf-ts 2.11.1 with parameter server_generic,generate_dependencies,long_type_number
5
5
  // @generated from protobuf file "packages/dht/protos/DhtRpc.proto" (package "dht", syntax proto3)
6
6
  // tslint:disable
7
7
  const DhtRpc_1 = require("./DhtRpc");
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.WebsocketClientConnectorRpc = exports.RecursiveOperationSessionRpc = exports.StoreRpc = exports.RecursiveOperationRpc = exports.RouterRpc = exports.DhtNodeRpc = exports.ExternalFindClosestNodesResponse = exports.ExternalFindClosestNodesRequest = exports.ExternalFetchDataResponse = exports.ExternalFetchDataRequest = exports.SetPrivateRequest = exports.DisconnectNotice = exports.LockResponse = exports.UnlockRequest = exports.LockRequest = exports.IceCandidate = exports.RtcAnswer = exports.RtcOffer = exports.WebrtcConnectionRequest = exports.WebsocketConnectionRequest = exports.Message = exports.HandshakeResponse = exports.HandshakeRequest = exports.ConnectivityResponse = exports.ConnectivityRequest = exports.RouteMessageAck = exports.RouteMessageWrapper = exports.ConnectivityMethod = exports.PeerDescriptor = exports.LeaveNotice = exports.PingResponse = exports.PingRequest = exports.RecursiveOperationResponse = exports.RecursiveOperationRequest = exports.ClosestRingPeersResponse = exports.ClosestRingPeersRequest = exports.ClosestPeersResponse = exports.ClosestPeersRequest = exports.DataEntry = exports.ReplicateDataRequest = exports.ExternalStoreDataResponse = exports.ExternalStoreDataRequest = exports.StoreDataResponse = exports.StoreDataRequest = exports.DisconnectMode = exports.HandshakeError = exports.RouteMessageError = exports.RpcResponseError = exports.NodeType = exports.RecursiveOperation = void 0;
4
4
  exports.ExternalApiRpc = exports.ConnectionLockRpc = exports.WebrtcConnectorRpc = void 0;
5
- // @generated by protobuf-ts 2.11.0 with parameter server_generic,generate_dependencies,long_type_number
5
+ // @generated by protobuf-ts 2.11.1 with parameter server_generic,generate_dependencies,long_type_number
6
6
  // @generated from protobuf file "packages/dht/protos/DhtRpc.proto" (package "dht", syntax proto3)
7
7
  // tslint:disable
8
8
  const empty_1 = require("../../../google/protobuf/empty");
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Mnfo2uhnf92hvqi2nviouq2hv9puhq = exports.RpcMessage = exports.RpcErrorType = void 0;
4
- // @generated by protobuf-ts 2.11.0 with parameter server_generic,generate_dependencies,long_type_number
4
+ // @generated by protobuf-ts 2.11.1 with parameter server_generic,generate_dependencies,long_type_number
5
5
  // @generated from protobuf file "packages/proto-rpc/protos/ProtoRpc.proto" (package "protorpc", syntax proto3)
6
6
  // tslint:disable
7
7
  const runtime_1 = require("@protobuf-ts/runtime");
@@ -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 PlumTreeRpc
198
+ * @generated from protobuf service PlumtreeRpc
199
199
  */
200
- export interface IPlumTreeRpcClient {
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 PlumTreeRpc
215
+ * @generated from protobuf service PlumtreeRpc
216
216
  */
217
- export declare class PlumTreeRpcClient implements IPlumTreeRpcClient, ServiceInfo {
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,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PlumTreeRpcClient = exports.NodeInfoRpcClient = exports.TemporaryConnectionRpcClient = exports.NeighborUpdateRpcClient = exports.HandshakeRpcClient = exports.ProxyConnectionRpcClient = exports.ContentDeliveryRpcClient = void 0;
4
- // @generated by protobuf-ts 2.11.0 with parameter server_generic,generate_dependencies,long_type_number
3
+ exports.PlumtreeRpcClient = exports.NodeInfoRpcClient = exports.TemporaryConnectionRpcClient = exports.NeighborUpdateRpcClient = exports.HandshakeRpcClient = exports.ProxyConnectionRpcClient = exports.ContentDeliveryRpcClient = void 0;
4
+ // @generated by protobuf-ts 2.11.1 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
7
7
  const NetworkRpc_1 = require("./NetworkRpc");
@@ -154,13 +154,13 @@ class NodeInfoRpcClient {
154
154
  }
155
155
  exports.NodeInfoRpcClient = NodeInfoRpcClient;
156
156
  /**
157
- * @generated from protobuf service PlumTreeRpc
157
+ * @generated from protobuf service PlumtreeRpc
158
158
  */
159
- class PlumTreeRpcClient {
159
+ class PlumtreeRpcClient {
160
160
  _transport;
161
- typeName = NetworkRpc_1.PlumTreeRpc.typeName;
162
- methods = NetworkRpc_1.PlumTreeRpc.methods;
163
- options = NetworkRpc_1.PlumTreeRpc.options;
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.PlumTreeRpcClient = PlumTreeRpcClient;
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 PlumTreeRpc
684
+ * @generated ServiceType for protobuf service PlumtreeRpc
685
685
  */
686
- export declare const PlumTreeRpc: ServiceType;
686
+ export declare const PlumtreeRpc: ServiceType;
687
687
  export {};
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
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
- // @generated by protobuf-ts 2.11.0 with parameter server_generic,generate_dependencies,long_type_number
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
+ // @generated by protobuf-ts 2.11.1 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
7
7
  const empty_1 = require("../../../google/protobuf/empty");
@@ -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 PlumTreeRpc
472
+ * @generated ServiceType for protobuf service PlumtreeRpc
473
473
  */
474
- exports.PlumTreeRpc = new runtime_rpc_1.ServiceType("PlumTreeRpc", [
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 PlumTreeRpc
87
+ * @generated from protobuf service PlumtreeRpc
88
88
  */
89
- export interface IPlumTreeRpc<T = ServerCallContext> {
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.1",
4
4
  "description": "Minimal and extendable implementation of the Streamr Network node.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -36,21 +36,21 @@
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.1",
40
+ "@streamr/proto-rpc": "103.1.0-rc.1",
41
+ "@streamr/utils": "103.1.0-rc.1",
42
42
  "eventemitter3": "^5.0.0",
43
43
  "lodash": "^4.17.21",
44
- "ts-essentials": "^10.1.0",
44
+ "ts-essentials": "^10.1.1",
45
45
  "uuid": "^11.1.0",
46
46
  "yallist": "^5.0.0"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@streamr/browser-test-runner": "^0.0.1",
50
- "@streamr/test-utils": "103.0.0",
51
- "@types/lodash": "^4.17.17",
52
- "@types/yallist": "^4.0.1",
53
- "expect": "^29.6.2",
50
+ "@streamr/test-utils": "103.1.0-rc.1",
51
+ "@types/lodash": "^4.17.20",
52
+ "@types/yallist": "^5.0.0",
53
+ "expect": "^30.0.5",
54
54
  "ts-node": "^10.9.2"
55
55
  }
56
56
  }
@@ -35,8 +35,14 @@ export interface ContentDeliveryManagerOptions {
35
35
  neighborUpdateInterval?: number;
36
36
  doNotBufferWhileConnecting?: boolean;
37
37
  }
38
+ type PlumtreeOptions = {
39
+ enabled: true;
40
+ maxPausedNeighbors?: number;
41
+ } | {
42
+ enabled: false;
43
+ };
38
44
  export interface StreamPartDeliveryOptions {
39
- plumTreeOptimisation?: boolean;
45
+ plumtreeOptimization?: PlumtreeOptions;
40
46
  }
41
47
  export declare const streamPartIdToDataKey: (streamPartId: StreamPartID) => DhtAddress;
42
48
  export declare class ContentDeliveryManager extends EventEmitter<Events> {
@@ -73,3 +79,4 @@ export declare class ContentDeliveryManager extends EventEmitter<Events> {
73
79
  getStreamParts(): StreamPartID[];
74
80
  getDiagnosticInfo(): Record<string, unknown>;
75
81
  }
82
+ export {};
@@ -208,7 +208,9 @@ class ContentDeliveryManager extends eventemitter3_1.EventEmitter {
208
208
  neighborUpdateInterval: this.options.neighborUpdateInterval,
209
209
  isLocalNodeEntryPoint,
210
210
  doNotBufferWhileConnecting: this.options.doNotBufferWhileConnecting,
211
- plumTreeOptimisation: streamPartDeliveryOptions?.plumTreeOptimisation
211
+ plumtreeOptimization: streamPartDeliveryOptions?.plumtreeOptimization?.enabled,
212
+ plumtreeMaxPausedNeighbors: streamPartDeliveryOptions?.plumtreeOptimization?.enabled === true ?
213
+ streamPartDeliveryOptions?.plumtreeOptimization?.maxPausedNeighbors : undefined
212
214
  });
213
215
  }
214
216
  async setProxies(streamPartId, nodes, direction, userId, connectionCount) {
@@ -1 +1 @@
1
- {"version":3,"file":"ContentDeliveryManager.js","sourceRoot":"","sources":["../../src/ContentDeliveryManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContentDeliveryManager.js","sourceRoot":"","sources":["../../src/ContentDeliveryManager.ts"],"names":[],"mappings":"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"}
@@ -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 { PlumTreeManager } from './plum-tree/PlumTreeManager';
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
- plumTreeManager?: PlumTreeManager;
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
- plumTreeManager: this.options.plumTreeManager
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.plumTreeManager) {
82
- (0, utils_1.addManagedEventListener)(this.options.plumTreeManager, 'message', (msg) => this.emit('message', msg), this.abortController.signal);
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.plumTreeManager?.stop();
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 { PlumTreeManager } from './plum-tree/PlumTreeManager';
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
- plumTreeManager?: PlumTreeManager;
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.plumTreeManager === undefined) {
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.plumTreeManager.broadcast(message, previousNodeId);
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.plumTreeManager.pauseNeighbor(previousNode, message.messageId.messageChainId);
26
+ await this.options.plumtreeManager.pauseNeighbor(previousNode, message.messageId.messageChainId);
27
27
  }
28
28
  return empty_1.Empty;
29
29
  }
@@ -7,7 +7,8 @@ type ContentDeliveryLayerNodeOptions = MarkOptional<StrictContentDeliveryLayerNo
7
7
  neighborUpdateInterval?: number;
8
8
  maxPropagationBufferSize?: number;
9
9
  doNotBufferWhileConnecting?: boolean;
10
- plumTreeOptimisation?: boolean;
10
+ plumtreeOptimization?: boolean;
11
+ plumtreeMaxPausedNeighbors?: number;
11
12
  };
12
13
  export declare const createContentDeliveryLayerNode: (options: ContentDeliveryLayerNodeOptions) => ContentDeliveryLayerNode;
13
14
  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 PlumTreeManager_1 = require("./plum-tree/PlumTreeManager");
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,10 +39,11 @@ const createConfigWithDefaults = (options) => {
39
39
  streamPartId: options.streamPartId,
40
40
  rpcCommunicator
41
41
  }) : undefined;
42
- const plumTreeManager = options.plumTreeOptimisation ? new PlumTreeManager_1.PlumTreeManager({
42
+ const plumtreeManager = options.plumtreeOptimization ? new PlumtreeManager_1.PlumtreeManager({
43
43
  neighbors,
44
44
  localPeerDescriptor: options.localPeerDescriptor,
45
- rpcCommunicator
45
+ rpcCommunicator,
46
+ maxPausedNeighbors: options.plumtreeMaxPausedNeighbors
46
47
  }) : undefined;
47
48
  const propagation = options.propagation ?? new Propagation_1.Propagation({
48
49
  minPropagationTargets,
@@ -118,7 +119,7 @@ const createConfigWithDefaults = (options) => {
118
119
  proxyConnectionRpcLocal,
119
120
  inspector,
120
121
  temporaryConnectionRpcLocal,
121
- plumTreeManager
122
+ plumtreeManager
122
123
  };
123
124
  };
124
125
  const createContentDeliveryLayerNode = (options) => {
@@ -1 +1 @@
1
- {"version":3,"file":"createContentDeliveryLayerNode.js","sourceRoot":"","sources":["../../../src/content-delivery-layer/createContentDeliveryLayerNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createContentDeliveryLayerNode.js","sourceRoot":"","sources":["../../../src/content-delivery-layer/createContentDeliveryLayerNode.ts"],"names":[],"mappings":"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"}
@@ -42,50 +42,46 @@ class Handshaker {
42
42
  }
43
43
  async selectParallelTargetsAndHandshake(excludedIds) {
44
44
  const exclude = excludedIds.concat(this.options.neighbors.getIds());
45
- const neighbors = this.selectParallelTargets(exclude);
46
- neighbors.forEach((contact) => this.options.ongoingHandshakes.add((0, dht_1.toNodeId)(contact.getPeerDescriptor())));
47
- return this.doParallelHandshakes(neighbors, exclude);
45
+ const targets = this.selectParallelTargets(exclude);
46
+ targets.forEach((contact) => this.options.ongoingHandshakes.add((0, dht_1.toNodeId)(contact.getPeerDescriptor())));
47
+ return this.doParallelHandshakes(targets, exclude);
48
48
  }
49
49
  selectParallelTargets(excludedIds) {
50
- const neighbors = new Map();
51
- // If the node has 0 neighbors find a node in the stream with a WS server to connect to for faster time to data.
50
+ const targets = new Map();
51
+ const getExcludedIds = () => [...excludedIds, ...Array.from(targets.keys())];
52
+ // Step 1: If no neighbors, try to find a WebSocket node first
52
53
  if (this.options.neighbors.size() === 0) {
53
- const wsNode = this.options.nearbyNodeView.getFirst([...excludedIds, ...Array.from(neighbors.keys())], true);
54
+ const wsNode = this.options.nearbyNodeView.getFirst(getExcludedIds(), true);
54
55
  if (wsNode) {
55
56
  const wsNodeId = (0, dht_1.toNodeId)(wsNode.getPeerDescriptor());
56
- excludedIds.push(wsNodeId);
57
- neighbors.set(wsNodeId, wsNode);
57
+ targets.set(wsNodeId, wsNode);
58
58
  }
59
59
  }
60
- // Add the closest left and then right contacts from the ring if possible.
61
- const left = this.options.leftNodeView.getFirst([...excludedIds, ...Array.from(neighbors.keys())]);
62
- const right = this.options.rightNodeView.getFirst([...excludedIds, ...Array.from(neighbors.keys())]);
60
+ // Step 2: Add left and right contacts from the ring
61
+ const left = this.options.leftNodeView.getFirst(getExcludedIds());
62
+ const right = this.options.rightNodeView.getFirst(getExcludedIds());
63
63
  if (left) {
64
- neighbors.set((0, dht_1.toNodeId)(left.getPeerDescriptor()), left);
64
+ targets.set((0, dht_1.toNodeId)(left.getPeerDescriptor()), left);
65
65
  }
66
66
  if (right) {
67
- neighbors.set((0, dht_1.toNodeId)(right.getPeerDescriptor()), right);
67
+ targets.set((0, dht_1.toNodeId)(right.getPeerDescriptor()), right);
68
68
  }
69
- // If there is still room add the closest contact based on the kademlia metric
70
- if (neighbors.size < PARALLEL_HANDSHAKE_COUNT) {
71
- const first = this.options.nearbyNodeView.getFirst([...excludedIds, ...Array.from(neighbors.keys())]);
72
- if (first) {
73
- neighbors.set((0, dht_1.toNodeId)(first.getPeerDescriptor()), first);
69
+ // Step 3: Add closest contact based on Kademlia metric if needed
70
+ if (targets.size < PARALLEL_HANDSHAKE_COUNT) {
71
+ const closest = this.options.nearbyNodeView.getFirst(getExcludedIds());
72
+ if (closest) {
73
+ targets.set((0, dht_1.toNodeId)(closest.getPeerDescriptor()), closest);
74
74
  }
75
75
  }
76
- const getExcludedFromRandomView = () => [
77
- ...excludedIds,
78
- ...Array.from(neighbors.values()).map((neighbor) => (0, dht_1.toNodeId)(neighbor.getPeerDescriptor()))
79
- ];
80
- // If there is still room add a random contact until PARALLEL_HANDSHAKE_COUNT is reached
81
- while (neighbors.size < PARALLEL_HANDSHAKE_COUNT
82
- && this.options.randomNodeView.size(getExcludedFromRandomView()) > 0) {
83
- const random = this.options.randomNodeView.getRandom([...excludedIds, ...Array.from(neighbors.keys())]);
84
- if (random) {
85
- neighbors.set((0, dht_1.toNodeId)(random.getPeerDescriptor()), random);
76
+ // Step 4: Fill remaining slots with random contacts
77
+ while (targets.size < PARALLEL_HANDSHAKE_COUNT) {
78
+ const random = this.options.randomNodeView.getRandom(getExcludedIds());
79
+ if (!random) {
80
+ break;
86
81
  }
82
+ targets.set((0, dht_1.toNodeId)(random.getPeerDescriptor()), random);
87
83
  }
88
- return Array.from(neighbors.values()).map((neighbor) => this.createRpcRemote(neighbor.getPeerDescriptor()));
84
+ return Array.from(targets.values()).map((neighbor) => this.createRpcRemote(neighbor.getPeerDescriptor()));
89
85
  }
90
86
  async doParallelHandshakes(targets, excludedIds) {
91
87
  const results = await Promise.allSettled(Array.from(targets.values()).map(async (target, i) => {
@@ -103,24 +99,24 @@ class Handshaker {
103
99
  }
104
100
  async selectNewTargetAndHandshake(excludedIds) {
105
101
  const exclude = excludedIds.concat(this.options.neighbors.getIds());
106
- const neighbor = this.options.leftNodeView.getFirst(exclude)
102
+ const target = this.options.leftNodeView.getFirst(exclude)
107
103
  ?? this.options.rightNodeView.getFirst(exclude)
108
104
  ?? this.options.nearbyNodeView.getFirst(exclude)
109
105
  ?? this.options.randomNodeView.getRandom(exclude);
110
- if (neighbor) {
111
- const accepted = await this.handshakeWithTarget(this.createRpcRemote(neighbor.getPeerDescriptor()));
106
+ if (target) {
107
+ const accepted = await this.handshakeWithTarget(this.createRpcRemote(target.getPeerDescriptor()));
112
108
  if (!accepted) {
113
- excludedIds.push((0, dht_1.toNodeId)(neighbor.getPeerDescriptor()));
109
+ excludedIds.push((0, dht_1.toNodeId)(target.getPeerDescriptor()));
114
110
  }
115
111
  }
116
112
  return excludedIds;
117
113
  }
118
- async handshakeWithTarget(neighbor, concurrentNodeId) {
119
- const targetNodeId = (0, dht_1.toNodeId)(neighbor.getPeerDescriptor());
114
+ async handshakeWithTarget(target, concurrentNodeId) {
115
+ const targetNodeId = (0, dht_1.toNodeId)(target.getPeerDescriptor());
120
116
  this.options.ongoingHandshakes.add(targetNodeId);
121
- const result = await neighbor.handshake(this.options.streamPartId, this.options.neighbors.getIds(), concurrentNodeId);
117
+ const result = await target.handshake(this.options.streamPartId, this.options.neighbors.getIds(), concurrentNodeId);
122
118
  if (result.accepted) {
123
- this.options.neighbors.add(this.createContentDeliveryRpcRemote(neighbor.getPeerDescriptor()));
119
+ this.options.neighbors.add(this.createContentDeliveryRpcRemote(target.getPeerDescriptor()));
124
120
  }
125
121
  if (result.interleaveTargetDescriptor) {
126
122
  await this.handshakeWithInterleaving(result.interleaveTargetDescriptor, targetNodeId);
@@ -129,12 +125,12 @@ class Handshaker {
129
125
  return result.accepted;
130
126
  }
131
127
  async handshakeWithInterleaving(target, remoteNodeId) {
132
- const neighbor = this.createRpcRemote(target);
133
- const targetNodeId = (0, dht_1.toNodeId)(neighbor.getPeerDescriptor());
128
+ const remote = this.createRpcRemote(target);
129
+ const targetNodeId = (0, dht_1.toNodeId)(remote.getPeerDescriptor());
134
130
  this.options.ongoingHandshakes.add(targetNodeId);
135
- const result = await neighbor.handshake(this.options.streamPartId, this.options.neighbors.getIds(), undefined, remoteNodeId);
131
+ const result = await remote.handshake(this.options.streamPartId, this.options.neighbors.getIds(), undefined, remoteNodeId);
136
132
  if (result.accepted) {
137
- this.options.neighbors.add(this.createContentDeliveryRpcRemote(neighbor.getPeerDescriptor()));
133
+ this.options.neighbors.add(this.createContentDeliveryRpcRemote(remote.getPeerDescriptor()));
138
134
  }
139
135
  this.options.ongoingHandshakes.delete(targetNodeId);
140
136
  return result.accepted;
@@ -1 +1 @@
1
- {"version":3,"file":"Handshaker.js","sourceRoot":"","sources":["../../../../src/content-delivery-layer/neighbor-discovery/Handshaker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Handshaker.js","sourceRoot":"","sources":["../../../../src/content-delivery-layer/neighbor-discovery/Handshaker.ts"],"names":[],"mappings":"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"}
@@ -8,4 +8,5 @@ export declare class PausedNeighbors {
8
8
  deleteAll(node: DhtAddress): void;
9
9
  isPaused(node: DhtAddress, msgChainId: string): boolean;
10
10
  forEach(fn: (neighbors: Set<DhtAddress>, msgChainId: string) => void): void;
11
+ size(msgChainId: string): number;
11
12
  }
@@ -42,6 +42,9 @@ class PausedNeighbors {
42
42
  fn(neighbors, msgChainId);
43
43
  });
44
44
  }
45
+ size(msgChainId) {
46
+ return this.pausedNeighbors.get(msgChainId)?.size ?? 0;
47
+ }
45
48
  }
46
49
  exports.PausedNeighbors = PausedNeighbors;
47
50
  //# sourceMappingURL=PausedNeighbors.js.map
@@ -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;IAED,IAAI,CAAC,UAAkB;QACnB,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,IAAI,IAAI,CAAC,CAAA;IAC1D,CAAC;CAEJ;AApDD,0CAoDC"}
@@ -6,12 +6,13 @@ interface Options {
6
6
  neighbors: NodeList;
7
7
  localPeerDescriptor: PeerDescriptor;
8
8
  rpcCommunicator: ListeningRpcCommunicator;
9
+ maxPausedNeighbors?: number;
9
10
  }
10
11
  export declare const MAX_PAUSED_NEIGHBORS_DEFAULT = 3;
11
12
  interface Events {
12
13
  message: (msg: StreamMessage) => void;
13
14
  }
14
- export declare class PlumTreeManager extends EventEmitter<Events> {
15
+ export declare class PlumtreeManager extends EventEmitter<Events> {
15
16
  private readonly neighbors;
16
17
  private readonly localPeerDescriptor;
17
18
  private readonly localPausedNeighbors;
@@ -20,6 +21,7 @@ export declare class PlumTreeManager extends EventEmitter<Events> {
20
21
  private readonly latestMessages;
21
22
  private readonly rpcCommunicator;
22
23
  private readonly metadataTimestampsAheadOfRealData;
24
+ private readonly maxPausedNeighbors;
23
25
  constructor(options: Options);
24
26
  pauseNeighbor(node: PeerDescriptor, msgChainId: string): Promise<void>;
25
27
  resumeNeighbor(node: PeerDescriptor, msgChainId: string, fromTimestamp: number): Promise<void>;
@@ -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.PlumTreeManager = exports.MAX_PAUSED_NEIGHBORS_DEFAULT = void 0;
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 PlumTreeRpcLocal_1 = require("./PlumTreeRpcLocal");
10
- const PlumTreeRpcRemote_1 = require("./PlumTreeRpcRemote");
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,22 +15,26 @@ 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 PlumTreeManager extends eventemitter3_1.default {
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
22
- localPausedNeighbors = new PausedNeighbors_1.PausedNeighbors(exports.MAX_PAUSED_NEIGHBORS_DEFAULT);
22
+ localPausedNeighbors;
23
23
  // We have asked these nodes to pause sending real data to us, used to limit sending of pausing and resuming requests
24
- remotePausedNeighbors = new PausedNeighbors_1.PausedNeighbors(exports.MAX_PAUSED_NEIGHBORS_DEFAULT);
24
+ remotePausedNeighbors;
25
25
  rpcLocal;
26
26
  latestMessages = new Map();
27
27
  rpcCommunicator;
28
28
  metadataTimestampsAheadOfRealData = new Map();
29
+ maxPausedNeighbors;
29
30
  constructor(options) {
30
31
  super();
31
32
  this.neighbors = options.neighbors;
33
+ this.maxPausedNeighbors = options.maxPausedNeighbors ?? exports.MAX_PAUSED_NEIGHBORS_DEFAULT;
32
34
  this.localPeerDescriptor = options.localPeerDescriptor;
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));
35
+ this.localPausedNeighbors = new PausedNeighbors_1.PausedNeighbors(options.maxPausedNeighbors ?? exports.MAX_PAUSED_NEIGHBORS_DEFAULT);
36
+ this.remotePausedNeighbors = new PausedNeighbors_1.PausedNeighbors(options.maxPausedNeighbors ?? exports.MAX_PAUSED_NEIGHBORS_DEFAULT);
37
+ 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
38
  this.neighbors.on('nodeRemoved', (nodeId) => this.onNeighborRemoved(nodeId));
35
39
  this.rpcCommunicator = options.rpcCommunicator;
36
40
  this.rpcCommunicator.registerRpcNotification(NetworkRpc_1.MessageID, 'sendMetadata', (msg, context) => this.rpcLocal.sendMetadata(msg, context));
@@ -38,7 +42,9 @@ class PlumTreeManager extends eventemitter3_1.default {
38
42
  this.rpcCommunicator.registerRpcNotification(NetworkRpc_1.ResumeNeighborRequest, 'resumeNeighbor', (msg, context) => this.rpcLocal.resumeNeighbor(msg, context));
39
43
  }
40
44
  async pauseNeighbor(node, msgChainId) {
41
- if (this.neighbors.has((0, dht_1.toNodeId)(node)) && !this.remotePausedNeighbors.isPaused((0, dht_1.toNodeId)(node), msgChainId)) {
45
+ if (this.neighbors.has((0, dht_1.toNodeId)(node))
46
+ && !this.remotePausedNeighbors.isPaused((0, dht_1.toNodeId)(node), msgChainId)
47
+ && this.remotePausedNeighbors.size(msgChainId) < this.maxPausedNeighbors) {
42
48
  logger.debug(`Pausing neighbor ${(0, dht_1.toNodeId)(node)}`);
43
49
  this.remotePausedNeighbors.add((0, dht_1.toNodeId)(node), msgChainId);
44
50
  const remote = this.createRemote(node);
@@ -94,7 +100,7 @@ class PlumTreeManager extends eventemitter3_1.default {
94
100
  }
95
101
  }
96
102
  createRemote(neighbor) {
97
- return new PlumTreeRpcRemote_1.PlumTreeRpcRemote(this.localPeerDescriptor, neighbor, this.rpcCommunicator, NetworkRpc_client_1.PlumTreeRpcClient);
103
+ return new PlumtreeRpcRemote_1.PlumtreeRpcRemote(this.localPeerDescriptor, neighbor, this.rpcCommunicator, NetworkRpc_client_1.PlumtreeRpcClient);
98
104
  }
99
105
  broadcast(msg, previousNode) {
100
106
  const messageChainId = msg.messageId.messageChainId;
@@ -131,5 +137,5 @@ class PlumTreeManager extends eventemitter3_1.default {
131
137
  this.neighbors.off('nodeRemoved', this.onNeighborRemoved);
132
138
  }
133
139
  }
134
- exports.PlumTreeManager = PlumTreeManager;
135
- //# sourceMappingURL=PlumTreeManager.js.map
140
+ exports.PlumtreeManager = PlumtreeManager;
141
+ //# 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 { IPlumTreeRpc } from '../../../generated/packages/trackerless-network/protos/NetworkRpc.server';
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 PlumTreeRpcLocal implements IPlumTreeRpc {
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.PlumTreeRpcLocal = void 0;
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 PlumTreeRpcLocal {
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.PlumTreeRpcLocal = PlumTreeRpcLocal;
37
- //# sourceMappingURL=PlumTreeRpcLocal.js.map
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 { PlumTreeRpcClient } from '../../../generated/packages/trackerless-network/protos/NetworkRpc.client';
4
- export declare class PlumTreeRpcRemote extends RpcRemote<PlumTreeRpcClient> {
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.PlumTreeRpcRemote = void 0;
3
+ exports.PlumtreeRpcRemote = void 0;
4
4
  const dht_1 = require("@streamr/dht");
5
- class PlumTreeRpcRemote extends dht_1.RpcRemote {
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.PlumTreeRpcRemote = PlumTreeRpcRemote;
26
- //# sourceMappingURL=PlumTreeRpcRemote.js.map
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"}
@@ -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';
@@ -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,mEAAoG;AAAvD,+HAAA,qBAAqB,OAAA;AAClE,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"}
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, plumTreeOptimisation?: boolean) => Promise<[DiscoveryLayerNode, ContentDeliveryLayerNode]>;
10
+ export declare const createMockContentDeliveryLayerNodeAndDhtNode: (localPeerDescriptor: PeerDescriptor, entryPointDescriptor: PeerDescriptor, streamPartId: StreamPartID, simulator: Simulator, plumtreeOptimization?: boolean, plumtreeMaxPausedNeighbors?: number) => 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;
@@ -19,7 +19,7 @@ exports.mockConnectionLocker = {
19
19
  getRemoteLockedConnectionCount: () => 0,
20
20
  getWeakLockedConnectionCount: () => 0,
21
21
  };
22
- const createMockContentDeliveryLayerNodeAndDhtNode = async (localPeerDescriptor, entryPointDescriptor, streamPartId, simulator, plumTreeOptimisation) => {
22
+ const createMockContentDeliveryLayerNodeAndDhtNode = async (localPeerDescriptor, entryPointDescriptor, streamPartId, simulator, plumtreeOptimization, plumtreeMaxPausedNeighbors) => {
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,8 @@ const createMockContentDeliveryLayerNodeAndDhtNode = async (localPeerDescriptor,
39
39
  localPeerDescriptor,
40
40
  rpcRequestTimeout: 5000,
41
41
  isLocalNodeEntryPoint: () => false,
42
- plumTreeOptimisation
42
+ plumtreeOptimization,
43
+ plumtreeMaxPausedNeighbors
43
44
  });
44
45
  return [discoveryLayerNode, contentDeliveryLayerNode];
45
46
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../test/utils/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../test/utils/utils.ts"],"names":[],"mappings":"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"}
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.1",
4
4
  "description": "Minimal and extendable implementation of the Streamr Network node.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -36,21 +36,21 @@
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.1",
40
+ "@streamr/proto-rpc": "103.1.0-rc.1",
41
+ "@streamr/utils": "103.1.0-rc.1",
42
42
  "eventemitter3": "^5.0.0",
43
43
  "lodash": "^4.17.21",
44
- "ts-essentials": "^10.1.0",
44
+ "ts-essentials": "^10.1.1",
45
45
  "uuid": "^11.1.0",
46
46
  "yallist": "^5.0.0"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@streamr/browser-test-runner": "^0.0.1",
50
- "@streamr/test-utils": "103.0.0",
51
- "@types/lodash": "^4.17.17",
52
- "@types/yallist": "^4.0.1",
53
- "expect": "^29.6.2",
50
+ "@streamr/test-utils": "103.1.0-rc.1",
51
+ "@types/lodash": "^4.17.20",
52
+ "@types/yallist": "^5.0.0",
53
+ "expect": "^30.0.5",
54
54
  "ts-node": "^10.9.2"
55
55
  }
56
56
  }
@@ -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"}