@libp2p/kad-dht 10.0.14 → 10.0.15-0b4a2ee79

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 (113) hide show
  1. package/README.md +1 -5
  2. package/dist/index.min.js +20 -20
  3. package/dist/src/content-fetching/index.d.ts.map +1 -1
  4. package/dist/src/content-fetching/index.js +1 -2
  5. package/dist/src/content-fetching/index.js.map +1 -1
  6. package/dist/src/content-routing/index.d.ts.map +1 -1
  7. package/dist/src/content-routing/index.js +3 -6
  8. package/dist/src/content-routing/index.js.map +1 -1
  9. package/dist/src/dual-kad-dht.d.ts +1 -0
  10. package/dist/src/dual-kad-dht.d.ts.map +1 -1
  11. package/dist/src/dual-kad-dht.js +5 -5
  12. package/dist/src/dual-kad-dht.js.map +1 -1
  13. package/dist/src/index.d.ts +2 -1
  14. package/dist/src/index.d.ts.map +1 -1
  15. package/dist/src/index.js.map +1 -1
  16. package/dist/src/kad-dht.d.ts.map +1 -1
  17. package/dist/src/kad-dht.js +3 -4
  18. package/dist/src/kad-dht.js.map +1 -1
  19. package/dist/src/message/index.d.ts +2 -0
  20. package/dist/src/message/index.d.ts.map +1 -1
  21. package/dist/src/message/index.js +7 -2
  22. package/dist/src/message/index.js.map +1 -1
  23. package/dist/src/network.d.ts +3 -4
  24. package/dist/src/network.d.ts.map +1 -1
  25. package/dist/src/network.js +11 -25
  26. package/dist/src/network.js.map +1 -1
  27. package/dist/src/peer-routing/index.d.ts +2 -1
  28. package/dist/src/peer-routing/index.d.ts.map +1 -1
  29. package/dist/src/peer-routing/index.js +15 -17
  30. package/dist/src/peer-routing/index.js.map +1 -1
  31. package/dist/src/providers.d.ts +4 -1
  32. package/dist/src/providers.d.ts.map +1 -1
  33. package/dist/src/providers.js +17 -17
  34. package/dist/src/providers.js.map +1 -1
  35. package/dist/src/query/manager.d.ts +5 -2
  36. package/dist/src/query/manager.d.ts.map +1 -1
  37. package/dist/src/query/manager.js +13 -12
  38. package/dist/src/query/manager.js.map +1 -1
  39. package/dist/src/query/query-path.d.ts +1 -1
  40. package/dist/src/query/query-path.d.ts.map +1 -1
  41. package/dist/src/query/query-path.js +2 -59
  42. package/dist/src/query/query-path.js.map +1 -1
  43. package/dist/src/query/utils.d.ts +7 -0
  44. package/dist/src/query/utils.d.ts.map +1 -0
  45. package/dist/src/query/utils.js +53 -0
  46. package/dist/src/query/utils.js.map +1 -0
  47. package/dist/src/query-self.d.ts +3 -1
  48. package/dist/src/query-self.d.ts.map +1 -1
  49. package/dist/src/query-self.js +4 -5
  50. package/dist/src/query-self.js.map +1 -1
  51. package/dist/src/routing-table/index.d.ts +2 -0
  52. package/dist/src/routing-table/index.d.ts.map +1 -1
  53. package/dist/src/routing-table/index.js +1 -2
  54. package/dist/src/routing-table/index.js.map +1 -1
  55. package/dist/src/routing-table/refresh.d.ts +5 -1
  56. package/dist/src/routing-table/refresh.d.ts.map +1 -1
  57. package/dist/src/routing-table/refresh.js +2 -3
  58. package/dist/src/routing-table/refresh.js.map +1 -1
  59. package/dist/src/rpc/handlers/add-provider.d.ts +6 -1
  60. package/dist/src/rpc/handlers/add-provider.d.ts.map +1 -1
  61. package/dist/src/rpc/handlers/add-provider.js +9 -10
  62. package/dist/src/rpc/handlers/add-provider.js.map +1 -1
  63. package/dist/src/rpc/handlers/find-node.d.ts +5 -1
  64. package/dist/src/rpc/handlers/find-node.d.ts.map +1 -1
  65. package/dist/src/rpc/handlers/find-node.js +11 -10
  66. package/dist/src/rpc/handlers/find-node.js.map +1 -1
  67. package/dist/src/rpc/handlers/get-providers.d.ts +4 -1
  68. package/dist/src/rpc/handlers/get-providers.d.ts.map +1 -1
  69. package/dist/src/rpc/handlers/get-providers.js +8 -9
  70. package/dist/src/rpc/handlers/get-providers.js.map +1 -1
  71. package/dist/src/rpc/handlers/get-value.d.ts +5 -1
  72. package/dist/src/rpc/handlers/get-value.d.ts.map +1 -1
  73. package/dist/src/rpc/handlers/get-value.js +16 -15
  74. package/dist/src/rpc/handlers/get-value.js.map +1 -1
  75. package/dist/src/rpc/handlers/ping.d.ts +6 -0
  76. package/dist/src/rpc/handlers/ping.d.ts.map +1 -1
  77. package/dist/src/rpc/handlers/ping.js +5 -3
  78. package/dist/src/rpc/handlers/ping.js.map +1 -1
  79. package/dist/src/rpc/handlers/put-value.d.ts +3 -1
  80. package/dist/src/rpc/handlers/put-value.d.ts.map +1 -1
  81. package/dist/src/rpc/handlers/put-value.js +2 -3
  82. package/dist/src/rpc/handlers/put-value.js.map +1 -1
  83. package/dist/src/rpc/index.d.ts.map +1 -1
  84. package/dist/src/rpc/index.js +3 -4
  85. package/dist/src/rpc/index.js.map +1 -1
  86. package/dist/src/topology-listener.d.ts.map +1 -1
  87. package/dist/src/topology-listener.js +1 -2
  88. package/dist/src/topology-listener.js.map +1 -1
  89. package/package.json +23 -22
  90. package/src/content-fetching/index.ts +2 -4
  91. package/src/content-routing/index.ts +4 -7
  92. package/src/dual-kad-dht.ts +6 -6
  93. package/src/index.ts +2 -1
  94. package/src/kad-dht.ts +4 -4
  95. package/src/message/index.ts +9 -2
  96. package/src/network.ts +14 -44
  97. package/src/peer-routing/index.ts +17 -19
  98. package/src/providers.ts +19 -18
  99. package/src/query/manager.ts +18 -16
  100. package/src/query/query-path.ts +3 -72
  101. package/src/query/utils.ts +65 -0
  102. package/src/query-self.ts +6 -5
  103. package/src/routing-table/index.ts +3 -3
  104. package/src/routing-table/refresh.ts +7 -4
  105. package/src/rpc/handlers/add-provider.ts +13 -10
  106. package/src/rpc/handlers/find-node.ts +13 -11
  107. package/src/rpc/handlers/get-providers.ts +10 -10
  108. package/src/rpc/handlers/get-value.ts +18 -17
  109. package/src/rpc/handlers/ping.ts +11 -3
  110. package/src/rpc/handlers/put-value.ts +4 -3
  111. package/src/rpc/index.ts +4 -4
  112. package/src/topology-listener.ts +2 -3
  113. package/dist/typedoc-urls.json +0 -55
@@ -2,6 +2,7 @@ import { Message } from '../../message/index.js';
2
2
  import { Libp2pRecord } from '../../record/index.js';
3
3
  import type { PeerRouting } from '../../peer-routing/index.js';
4
4
  import type { DHTMessageHandler } from '../index.js';
5
+ import type { ComponentLogger } from '@libp2p/interface';
5
6
  import type { PeerId } from '@libp2p/interface/peer-id';
6
7
  import type { PeerStore } from '@libp2p/interface/peer-store';
7
8
  import type { Datastore } from 'interface-datastore';
@@ -11,10 +12,13 @@ export interface GetValueHandlerInit {
11
12
  export interface GetValueHandlerComponents {
12
13
  peerStore: PeerStore;
13
14
  datastore: Datastore;
15
+ logger: ComponentLogger;
14
16
  }
15
17
  export declare class GetValueHandler implements DHTMessageHandler {
16
- private readonly components;
18
+ private readonly peerStore;
19
+ private readonly datastore;
17
20
  private readonly peerRouting;
21
+ private readonly log;
18
22
  constructor(components: GetValueHandlerComponents, init: GetValueHandlerInit);
19
23
  handle(peerId: PeerId, msg: Message): Promise<Message>;
20
24
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"get-value.d.ts","sourceRoot":"","sources":["../../../../src/rpc/handlers/get-value.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAgB,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAIpD,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,WAAW,CAAA;CACzB;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,EAAE,SAAS,CAAA;CACrB;AAED,qBAAa,eAAgB,YAAW,iBAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2B;IACtD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;gBAE5B,UAAU,EAAE,yBAAyB,EAAE,IAAI,EAAE,mBAAmB;IAOvE,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAuD7D;;;;;OAKG;IACG,oBAAoB,CAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;CAiChF"}
1
+ {"version":3,"file":"get-value.d.ts","sourceRoot":"","sources":["../../../../src/rpc/handlers/get-value.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAgB,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAU,MAAM,mBAAmB,CAAA;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,WAAW,CAAA;CACzB;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,eAAe,CAAA;CACxB;AAED,qBAAa,eAAgB,YAAW,iBAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;gBAEf,UAAU,EAAE,yBAAyB,EAAE,IAAI,EAAE,mBAAmB;IAOvE,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAuD7D;;;;;OAKG;IACG,oBAAoB,CAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;CAiChF"}
@@ -1,31 +1,32 @@
1
1
  import { CodeError } from '@libp2p/interface/errors';
2
- import { logger } from '@libp2p/logger';
3
2
  import { MAX_RECORD_AGE } from '../../constants.js';
4
3
  import { Message, MESSAGE_TYPE } from '../../message/index.js';
5
4
  import { Libp2pRecord } from '../../record/index.js';
6
5
  import { bufferToRecordKey, isPublicKeyKey, fromPublicKeyKey } from '../../utils.js';
7
- const log = logger('libp2p:kad-dht:rpc:handlers:get-value');
8
6
  export class GetValueHandler {
9
- components;
7
+ peerStore;
8
+ datastore;
10
9
  peerRouting;
10
+ log;
11
11
  constructor(components, init) {
12
- const { peerRouting } = init;
13
- this.components = components;
14
- this.peerRouting = peerRouting;
12
+ this.log = components.logger.forComponent('libp2p:kad-dht:rpc:handlers:get-value');
13
+ this.peerStore = components.peerStore;
14
+ this.datastore = components.datastore;
15
+ this.peerRouting = init.peerRouting;
15
16
  }
16
17
  async handle(peerId, msg) {
17
18
  const key = msg.key;
18
- log('%p asked for key %b', peerId, key);
19
+ this.log('%p asked for key %b', peerId, key);
19
20
  if (key == null || key.length === 0) {
20
21
  throw new CodeError('Invalid key', 'ERR_INVALID_KEY');
21
22
  }
22
23
  const response = new Message(MESSAGE_TYPE.GET_VALUE, key, msg.clusterLevel);
23
24
  if (isPublicKeyKey(key)) {
24
- log('is public key');
25
+ this.log('is public key');
25
26
  const idFromKey = fromPublicKeyKey(key);
26
27
  let pubKey;
27
28
  try {
28
- const peer = await this.components.peerStore.get(idFromKey);
29
+ const peer = await this.peerStore.get(idFromKey);
29
30
  if (peer.id.publicKey == null) {
30
31
  throw new CodeError('No public key found in key book', 'ERR_NOT_FOUND');
31
32
  }
@@ -37,7 +38,7 @@ export class GetValueHandler {
37
38
  }
38
39
  }
39
40
  if (pubKey != null) {
40
- log('returning found public key');
41
+ this.log('returning found public key');
41
42
  response.record = new Libp2pRecord(key, pubKey, new Date());
42
43
  return response;
43
44
  }
@@ -47,11 +48,11 @@ export class GetValueHandler {
47
48
  this.peerRouting.getCloserPeersOffline(msg.key, peerId)
48
49
  ]);
49
50
  if (record != null) {
50
- log('had record for %b in local datastore', key);
51
+ this.log('had record for %b in local datastore', key);
51
52
  response.record = record;
52
53
  }
53
54
  if (closer.length > 0) {
54
- log('had %s closer peers in routing table', closer.length);
55
+ this.log('had %s closer peers in routing table', closer.length);
55
56
  response.closerPeers = closer;
56
57
  }
57
58
  return response;
@@ -63,12 +64,12 @@ export class GetValueHandler {
63
64
  * - it was received less than `MAX_RECORD_AGE` ago.
64
65
  */
65
66
  async _checkLocalDatastore(key) {
66
- log('checkLocalDatastore looking for %b', key);
67
+ this.log('checkLocalDatastore looking for %b', key);
67
68
  const dsKey = bufferToRecordKey(key);
68
69
  // Fetch value from ds
69
70
  let rawRecord;
70
71
  try {
71
- rawRecord = await this.components.datastore.get(dsKey);
72
+ rawRecord = await this.datastore.get(dsKey);
72
73
  }
73
74
  catch (err) {
74
75
  if (err.code === 'ERR_NOT_FOUND') {
@@ -85,7 +86,7 @@ export class GetValueHandler {
85
86
  if (record.timeReceived == null ||
86
87
  Date.now() - record.timeReceived.getTime() > MAX_RECORD_AGE) {
87
88
  // If record is bad delete it and return
88
- await this.components.datastore.delete(dsKey);
89
+ await this.datastore.delete(dsKey);
89
90
  return undefined;
90
91
  }
91
92
  // Record is valid
@@ -1 +1 @@
1
- {"version":3,"file":"get-value.js","sourceRoot":"","sources":["../../../../src/rpc/handlers/get-value.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-value.js","sourceRoot":"","sources":["../../../../src/rpc/handlers/get-value.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,13 @@
1
1
  import type { Message } from '../../message/index.js';
2
2
  import type { DHTMessageHandler } from '../index.js';
3
+ import type { ComponentLogger } from '@libp2p/interface';
3
4
  import type { PeerId } from '@libp2p/interface/peer-id';
5
+ export interface PingComponents {
6
+ logger: ComponentLogger;
7
+ }
4
8
  export declare class PingHandler implements DHTMessageHandler {
9
+ private readonly log;
10
+ constructor(components: PingComponents);
5
11
  handle(peerId: PeerId, msg: Message): Promise<Message>;
6
12
  }
7
13
  //# sourceMappingURL=ping.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ping.d.ts","sourceRoot":"","sources":["../../../../src/rpc/handlers/ping.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAIvD,qBAAa,WAAY,YAAW,iBAAiB;IAC7C,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAI9D"}
1
+ {"version":3,"file":"ping.d.ts","sourceRoot":"","sources":["../../../../src/rpc/handlers/ping.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAU,MAAM,mBAAmB,CAAA;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAEvD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,eAAe,CAAA;CACxB;AAED,qBAAa,WAAY,YAAW,iBAAiB;IACnD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;gBAEf,UAAU,EAAE,cAAc;IAIjC,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAI9D"}
@@ -1,8 +1,10 @@
1
- import { logger } from '@libp2p/logger';
2
- const log = logger('libp2p:kad-dht:rpc:handlers:ping');
3
1
  export class PingHandler {
2
+ log;
3
+ constructor(components) {
4
+ this.log = components.logger.forComponent('libp2p:kad-dht:rpc:handlers:ping');
5
+ }
4
6
  async handle(peerId, msg) {
5
- log('ping from %p', peerId);
7
+ this.log('ping from %p', peerId);
6
8
  return msg;
7
9
  }
8
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ping.js","sourceRoot":"","sources":["../../../../src/rpc/handlers/ping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAKvC,MAAM,GAAG,GAAG,MAAM,CAAC,kCAAkC,CAAC,CAAA;AAEtD,MAAM,OAAO,WAAW;IACtB,KAAK,CAAC,MAAM,CAAE,MAAc,EAAE,GAAY;QACxC,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;QAC3B,OAAO,GAAG,CAAA;IACZ,CAAC;CACF"}
1
+ {"version":3,"file":"ping.js","sourceRoot":"","sources":["../../../../src/rpc/handlers/ping.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,WAAW;IACL,GAAG,CAAQ;IAE5B,YAAa,UAA0B;QACrC,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,kCAAkC,CAAC,CAAA;IAC/E,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,MAAc,EAAE,GAAY;QACxC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;QAChC,OAAO,GAAG,CAAA;IACZ,CAAC;CACF"}
@@ -1,6 +1,7 @@
1
1
  import type { Validators } from '../../index.js';
2
2
  import type { Message } from '../../message/index.js';
3
3
  import type { DHTMessageHandler } from '../index.js';
4
+ import type { ComponentLogger } from '@libp2p/interface';
4
5
  import type { PeerId } from '@libp2p/interface/peer-id';
5
6
  import type { Datastore } from 'interface-datastore';
6
7
  export interface PutValueHandlerInit {
@@ -8,11 +9,12 @@ export interface PutValueHandlerInit {
8
9
  }
9
10
  export interface PutValueHandlerComponents {
10
11
  datastore: Datastore;
12
+ logger: ComponentLogger;
11
13
  }
12
14
  export declare class PutValueHandler implements DHTMessageHandler {
13
- private readonly log;
14
15
  private readonly components;
15
16
  private readonly validators;
17
+ private readonly log;
16
18
  constructor(components: PutValueHandlerComponents, init: PutValueHandlerInit);
17
19
  handle(peerId: PeerId, msg: Message): Promise<Message>;
18
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"put-value.d.ts","sourceRoot":"","sources":["../../../../src/rpc/handlers/put-value.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,UAAU,CAAA;CACvB;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,SAAS,CAAA;CACrB;AAED,qBAAa,eAAgB,YAAW,iBAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2B;IACtD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;gBAE1B,UAAU,EAAE,yBAAyB,EAAE,IAAI,EAAE,mBAAmB;IAQvE,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CA0B9D"}
1
+ {"version":3,"file":"put-value.d.ts","sourceRoot":"","sources":["../../../../src/rpc/handlers/put-value.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAU,MAAM,mBAAmB,CAAA;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,UAAU,CAAA;CACvB;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,eAAe,CAAA;CACxB;AAED,qBAAa,eAAgB,YAAW,iBAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2B;IACtD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;gBAEf,UAAU,EAAE,yBAAyB,EAAE,IAAI,EAAE,mBAAmB;IAQvE,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CA0B9D"}
@@ -1,15 +1,14 @@
1
1
  import { CodeError } from '@libp2p/interface/errors';
2
- import { logger } from '@libp2p/logger';
3
2
  import { verifyRecord } from '../../record/validators.js';
4
3
  import { bufferToRecordKey } from '../../utils.js';
5
4
  export class PutValueHandler {
6
- log;
7
5
  components;
8
6
  validators;
7
+ log;
9
8
  constructor(components, init) {
10
9
  const { validators } = init;
11
10
  this.components = components;
12
- this.log = logger('libp2p:kad-dht:rpc:handlers:put-value');
11
+ this.log = components.logger.forComponent('libp2p:kad-dht:rpc:handlers:put-value');
13
12
  this.validators = validators;
14
13
  }
15
14
  async handle(peerId, msg) {
@@ -1 +1 @@
1
- {"version":3,"file":"put-value.js","sourceRoot":"","sources":["../../../../src/rpc/handlers/put-value.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAe,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAelD,MAAM,OAAO,eAAe;IACT,GAAG,CAAQ;IACX,UAAU,CAA2B;IACrC,UAAU,CAAY;IAEvC,YAAa,UAAqC,EAAE,IAAyB;QAC3E,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAA;QAE3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,uCAAuC,CAAC,CAAA;QAC1D,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,MAAc,EAAE,GAAY;QACxC,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;QACnB,IAAI,CAAC,GAAG,CAAC,uCAAuC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;QAE9D,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QAEzB,IAAI,MAAM,IAAI,IAAI,EAAE;YAClB,MAAM,MAAM,GAAG,sBAAsB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAA;YAExD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACtB,MAAM,IAAI,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;SAChD;QAED,IAAI;YACF,MAAM,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;YAE3C,MAAM,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAA;YAChC,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC/C,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAA;YAC7E,IAAI,CAAC,GAAG,CAAC,+CAA+C,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;SAC1E;QAAC,OAAO,GAAQ,EAAE;YACjB,IAAI,CAAC,GAAG,CAAC,iDAAiD,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;SACtE;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;CACF"}
1
+ {"version":3,"file":"put-value.js","sourceRoot":"","sources":["../../../../src/rpc/handlers/put-value.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAiBlD,MAAM,OAAO,eAAe;IACT,UAAU,CAA2B;IACrC,UAAU,CAAY;IACtB,GAAG,CAAQ;IAE5B,YAAa,UAAqC,EAAE,IAAyB;QAC3E,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAA;QAE3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,uCAAuC,CAAC,CAAA;QAClF,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,MAAc,EAAE,GAAY;QACxC,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;QACnB,IAAI,CAAC,GAAG,CAAC,uCAAuC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;QAE9D,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QAEzB,IAAI,MAAM,IAAI,IAAI,EAAE;YAClB,MAAM,MAAM,GAAG,sBAAsB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAA;YAExD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACtB,MAAM,IAAI,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;SAChD;QAED,IAAI;YACF,MAAM,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;YAE3C,MAAM,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAA;YAChC,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC/C,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAA;YAC7E,IAAI,CAAC,GAAG,CAAC,+CAA+C,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;SAC1E;QAAC,OAAO,GAAQ,EAAE;YACjB,IAAI,CAAC,GAAG,CAAC,iDAAiD,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;SACtE;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/rpc/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAgB,MAAM,qBAAqB,CAAA;AAE3D,OAAO,EAAmB,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AACzF,OAAO,EAAuB,KAAK,6BAA6B,EAAE,MAAM,6BAA6B,CAAA;AACrG,OAAO,EAAmB,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AAEzF,OAAO,EAAmB,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AACzF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AAE9E,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAAA;CACnE;AAED,MAAM,WAAW,OAAO;IACtB,YAAY,EAAE,YAAY,CAAA;IAC1B,SAAS,EAAE,SAAS,CAAA;IACpB,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,GAAG,EAAE,OAAO,CAAA;CACb;AAED,MAAM,WAAW,aAAc,SAAQ,yBAAyB,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,6BAA6B;CAEpJ;AAED,qBAAa,GAAG;IACd,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmC;IAC5D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;gBAEf,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO;IAerD;;OAEG;IACG,aAAa,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAkBhF;;OAEG;IACH,gBAAgB,CAAE,IAAI,EAAE,kBAAkB,GAAG,IAAI;CAqClD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/rpc/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAgB,MAAM,qBAAqB,CAAA;AAE3D,OAAO,EAAmB,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AACzF,OAAO,EAAuB,KAAK,6BAA6B,EAAE,MAAM,6BAA6B,CAAA;AACrG,OAAO,EAAmB,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AAEzF,OAAO,EAAmB,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AACzF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAEpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AAE9E,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAAA;CACnE;AAED,MAAM,WAAW,OAAO;IACtB,YAAY,EAAE,YAAY,CAAA;IAC1B,SAAS,EAAE,SAAS,CAAA;IACpB,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,GAAG,EAAE,OAAO,CAAA;CACb;AAED,MAAM,WAAW,aAAc,SAAQ,yBAAyB,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,6BAA6B;CAEpJ;AAED,qBAAa,GAAG;IACd,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmC;IAC5D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;gBAEf,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO;IAerD;;OAEG;IACG,aAAa,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAkBhF;;OAEG;IACH,gBAAgB,CAAE,IAAI,EAAE,kBAAkB,GAAG,IAAI;CAqClD"}
@@ -1,4 +1,3 @@
1
- import { logger } from '@libp2p/logger';
2
1
  import * as lp from 'it-length-prefixed';
3
2
  import { pipe } from 'it-pipe';
4
3
  import { Message, MESSAGE_TYPE } from '../message/index.js';
@@ -14,15 +13,15 @@ export class RPC {
14
13
  log;
15
14
  constructor(components, init) {
16
15
  const { providers, peerRouting, validators, lan } = init;
17
- this.log = logger('libp2p:kad-dht:rpc');
16
+ this.log = components.logger.forComponent('libp2p:kad-dht:rpc');
18
17
  this.routingTable = init.routingTable;
19
18
  this.handlers = {
20
19
  [MESSAGE_TYPE.GET_VALUE]: new GetValueHandler(components, { peerRouting }),
21
20
  [MESSAGE_TYPE.PUT_VALUE]: new PutValueHandler(components, { validators }),
22
21
  [MESSAGE_TYPE.FIND_NODE]: new FindNodeHandler(components, { peerRouting, lan }),
23
- [MESSAGE_TYPE.ADD_PROVIDER]: new AddProviderHandler({ providers }),
22
+ [MESSAGE_TYPE.ADD_PROVIDER]: new AddProviderHandler(components, { providers }),
24
23
  [MESSAGE_TYPE.GET_PROVIDERS]: new GetProvidersHandler(components, { peerRouting, providers, lan }),
25
- [MESSAGE_TYPE.PING]: new PingHandler()
24
+ [MESSAGE_TYPE.PING]: new PingHandler(components)
26
25
  };
27
26
  }
28
27
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rpc/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rpc/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"topology-listener.d.ts","sourceRoot":"","sources":["../../src/topology-listener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAEzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,GAAG,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAG5D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,OAAO,CAAA;CACb;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAC5B;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,iBAAiB,CAAC,sBAAsB,CAAE,YAAW,SAAS;IAClG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAC,CAAQ;gBAEf,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,oBAAoB;IAWrE,SAAS,IAAK,OAAO;IAIrB;;OAEG;IACG,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;IAkB7B;;OAEG;IACG,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;CAS7B"}
1
+ {"version":3,"file":"topology-listener.d.ts","sourceRoot":"","sources":["../../src/topology-listener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,GAAG,CAAA;AAEzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAE5D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,OAAO,CAAA;CACb;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAC5B;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,iBAAiB,CAAC,sBAAsB,CAAE,YAAW,SAAS;IAClG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAC,CAAQ;gBAEf,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,oBAAoB;IAWrE,SAAS,IAAK,OAAO;IAIrB;;OAEG;IACG,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;IAkB7B;;OAEG;IACG,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;CAS7B"}
@@ -1,5 +1,4 @@
1
1
  import { CustomEvent, TypedEventEmitter } from '@libp2p/interface/events';
2
- import { logger } from '@libp2p/logger';
3
2
  /**
4
3
  * Receives notifications of new peers joining the network that support the DHT protocol
5
4
  */
@@ -13,7 +12,7 @@ export class TopologyListener extends TypedEventEmitter {
13
12
  super();
14
13
  const { protocol, lan } = init;
15
14
  this.components = components;
16
- this.log = logger(`libp2p:kad-dht:topology-listener:${lan ? 'lan' : 'wan'}`);
15
+ this.log = components.logger.forComponent(`libp2p:kad-dht:topology-listener:${lan ? 'lan' : 'wan'}`);
17
16
  this.running = false;
18
17
  this.protocol = protocol;
19
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"topology-listener.js","sourceRoot":"","sources":["../../src/topology-listener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAevC;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,iBAAyC;IAC5D,GAAG,CAAQ;IACX,UAAU,CAAkB;IAC5B,QAAQ,CAAQ;IACzB,OAAO,CAAS;IAChB,WAAW,CAAS;IAE5B,YAAa,UAA4B,EAAE,IAA0B;QACnE,KAAK,EAAE,CAAA;QAEP,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;QAE9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,oCAAoC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;QAC5E,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAM;SACP;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QAEnB,kCAAkC;QAClC,IAAI,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE;YACzE,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;gBACpB,IAAI,CAAC,GAAG,CAAC,mCAAmC,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;gBACpE,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,MAAM,EAAE;oBACzC,MAAM,EAAE,MAAM;iBACf,CAAC,CAAC,CAAA;YACL,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;QAEpB,mCAAmC;QACnC,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE;YAC5B,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YACtD,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;SAC7B;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"topology-listener.js","sourceRoot":"","sources":["../../src/topology-listener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAezE;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,iBAAyC;IAC5D,GAAG,CAAQ;IACX,UAAU,CAAkB;IAC5B,QAAQ,CAAQ;IACzB,OAAO,CAAS;IAChB,WAAW,CAAS;IAE5B,YAAa,UAA4B,EAAE,IAA0B;QACnE,KAAK,EAAE,CAAA;QAEP,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;QAE9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,oCAAoC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;QACpG,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAM;SACP;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QAEnB,kCAAkC;QAClC,IAAI,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE;YACzE,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;gBACpB,IAAI,CAAC,GAAG,CAAC,mCAAmC,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;gBACpE,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,MAAM,EAAE;oBACzC,MAAM,EAAE,MAAM;iBACf,CAAC,CAAC,CAAA;YACL,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;QAEpB,mCAAmC;QACnC,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE;YAC5B,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YACtD,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;SAC7B;IACH,CAAC;CACF"}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@libp2p/kad-dht",
3
- "version": "10.0.14",
3
+ "version": "10.0.15-0b4a2ee79",
4
4
  "description": "JavaScript implementation of the Kad-DHT for libp2p",
5
5
  "license": "Apache-2.0 OR MIT",
6
- "homepage": "https://github.com/libp2p/js-libp2p/tree/master/packages/kad-dht#readme",
6
+ "homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/kad-dht#readme",
7
7
  "repository": {
8
8
  "type": "git",
9
9
  "url": "git+https://github.com/libp2p/js-libp2p.git"
@@ -52,35 +52,34 @@
52
52
  "dep-check": "aegir dep-check"
53
53
  },
54
54
  "dependencies": {
55
- "@libp2p/crypto": "^2.0.8",
56
- "@libp2p/interface": "^0.1.6",
57
- "@libp2p/interface-internal": "^0.1.9",
58
- "@libp2p/logger": "^3.1.0",
59
- "@libp2p/peer-collections": "^4.0.8",
60
- "@libp2p/peer-id": "^3.0.6",
61
- "@multiformats/multiaddr": "^12.1.5",
55
+ "@libp2p/crypto": "2.0.8-0b4a2ee79",
56
+ "@libp2p/interface": "0.1.6-0b4a2ee79",
57
+ "@libp2p/interface-internal": "0.1.9-0b4a2ee79",
58
+ "@libp2p/peer-collections": "4.0.8-0b4a2ee79",
59
+ "@libp2p/peer-id": "3.0.6-0b4a2ee79",
60
+ "@multiformats/multiaddr": "^12.1.10",
62
61
  "@types/sinon": "^17.0.0",
63
- "abortable-iterator": "^5.0.1",
64
62
  "any-signal": "^4.1.1",
65
63
  "datastore-core": "^9.0.1",
66
64
  "hashlru": "^2.3.0",
67
65
  "interface-datastore": "^8.2.0",
68
66
  "it-all": "^3.0.2",
69
67
  "it-drain": "^3.0.2",
70
- "it-first": "^3.0.1",
71
68
  "it-length": "^3.0.1",
72
- "it-length-prefixed": "^9.0.1",
73
- "it-map": "^3.0.3",
69
+ "it-length-prefixed": "^9.0.3",
70
+ "it-map": "^3.0.4",
74
71
  "it-merge": "^3.0.0",
75
72
  "it-parallel": "^3.0.0",
76
73
  "it-pipe": "^3.0.1",
74
+ "it-protobuf-stream": "^1.0.2",
75
+ "it-pushable": "^3.2.1",
77
76
  "it-stream-types": "^2.0.1",
78
77
  "it-take": "^3.0.1",
79
- "multiformats": "^12.0.1",
78
+ "multiformats": "^12.1.3",
80
79
  "p-defer": "^4.0.0",
81
80
  "p-event": "^6.0.0",
82
- "p-queue": "^7.3.4",
83
- "private-ip": "^3.0.0",
81
+ "p-queue": "^7.4.1",
82
+ "private-ip": "^3.0.1",
84
83
  "progress-events": "^1.0.0",
85
84
  "protons-runtime": "^5.0.0",
86
85
  "uint8-varint": "^2.0.0",
@@ -88,9 +87,10 @@
88
87
  "uint8arrays": "^4.0.6"
89
88
  },
90
89
  "devDependencies": {
91
- "@libp2p/interface-compliance-tests": "^4.1.5",
92
- "@libp2p/peer-id-factory": "^3.0.8",
93
- "@libp2p/peer-store": "^9.0.9",
90
+ "@libp2p/interface-compliance-tests": "4.1.5-0b4a2ee79",
91
+ "@libp2p/logger": "3.1.0-0b4a2ee79",
92
+ "@libp2p/peer-id-factory": "3.0.8-0b4a2ee79",
93
+ "@libp2p/peer-store": "9.0.9-0b4a2ee79",
94
94
  "@types/lodash.random": "^3.2.6",
95
95
  "@types/lodash.range": "^3.2.6",
96
96
  "@types/which": "^3.0.0",
@@ -99,14 +99,15 @@
99
99
  "delay": "^6.0.0",
100
100
  "execa": "^8.0.1",
101
101
  "it-filter": "^3.0.1",
102
- "it-last": "^3.0.1",
102
+ "it-last": "^3.0.3",
103
103
  "lodash.random": "^3.2.0",
104
104
  "lodash.range": "^3.2.0",
105
- "p-retry": "^6.0.0",
105
+ "p-retry": "^6.1.0",
106
106
  "p-wait-for": "^5.0.2",
107
- "protons": "^7.0.2",
107
+ "protons": "^7.3.0",
108
108
  "sinon": "^17.0.0",
109
109
  "ts-sinon": "^2.0.2",
110
+ "wherearewe": "^2.0.1",
110
111
  "which": "^4.0.0"
111
112
  },
112
113
  "browser": {
@@ -1,5 +1,4 @@
1
1
  import { CodeError } from '@libp2p/interface/errors'
2
- import { logger } from '@libp2p/logger'
3
2
  import map from 'it-map'
4
3
  import parallel from 'it-parallel'
5
4
  import { pipe } from 'it-pipe'
@@ -21,8 +20,7 @@ import type { Network } from '../network.js'
21
20
  import type { PeerRouting } from '../peer-routing/index.js'
22
21
  import type { QueryManager } from '../query/manager.js'
23
22
  import type { QueryFunc } from '../query/types.js'
24
- import type { AbortOptions } from '@libp2p/interface'
25
- import type { Logger } from '@libp2p/logger'
23
+ import type { AbortOptions, Logger } from '@libp2p/interface'
26
24
 
27
25
  export interface ContentFetchingInit {
28
26
  validators: Validators
@@ -46,7 +44,7 @@ export class ContentFetching {
46
44
  const { validators, selectors, peerRouting, queryManager, network, lan } = init
47
45
 
48
46
  this.components = components
49
- this.log = logger(`libp2p:kad-dht:${lan ? 'lan' : 'wan'}:content-fetching`)
47
+ this.log = components.logger.forComponent(`libp2p:kad-dht:${lan ? 'lan' : 'wan'}:content-fetching`)
50
48
  this.validators = validators
51
49
  this.selectors = selectors
52
50
  this.peerRouting = peerRouting
@@ -1,4 +1,3 @@
1
- import { logger } from '@libp2p/logger'
2
1
  import map from 'it-map'
3
2
  import parallel from 'it-parallel'
4
3
  import { pipe } from 'it-pipe'
@@ -16,8 +15,8 @@ import type { Providers } from '../providers.js'
16
15
  import type { QueryManager } from '../query/manager.js'
17
16
  import type { QueryFunc } from '../query/types.js'
18
17
  import type { RoutingTable } from '../routing-table/index.js'
18
+ import type { Logger } from '@libp2p/interface'
19
19
  import type { PeerInfo } from '@libp2p/interface/peer-info'
20
- import type { Logger } from '@libp2p/logger'
21
20
  import type { Multiaddr } from '@multiformats/multiaddr'
22
21
  import type { CID } from 'multiformats/cid'
23
22
 
@@ -43,7 +42,7 @@ export class ContentRouting {
43
42
  const { network, peerRouting, queryManager, routingTable, providers, lan } = init
44
43
 
45
44
  this.components = components
46
- this.log = logger(`libp2p:kad-dht:${lan ? 'lan' : 'wan'}:content-routing`)
45
+ this.log = components.logger.forComponent(`libp2p:kad-dht:${lan ? 'lan' : 'wan'}:content-routing`)
47
46
  this.network = network
48
47
  this.peerRouting = peerRouting
49
48
  this.queryManager = queryManager
@@ -64,8 +63,7 @@ export class ContentRouting {
64
63
  const msg = new Message(MESSAGE_TYPE.ADD_PROVIDER, key.multihash.bytes, 0)
65
64
  msg.providerPeers = [{
66
65
  id: this.components.peerId,
67
- multiaddrs,
68
- protocols: []
66
+ multiaddrs
69
67
  }]
70
68
 
71
69
  let sent = 0
@@ -140,8 +138,7 @@ export class ContentRouting {
140
138
 
141
139
  providers.push({
142
140
  id: peerId,
143
- multiaddrs: peer.addresses.map(({ multiaddr }) => multiaddr),
144
- protocols: peer.protocols
141
+ multiaddrs: peer.addresses.map(({ multiaddr }) => multiaddr)
145
142
  })
146
143
  } catch (err: any) {
147
144
  if (err.code !== 'ERR_NOT_FOUND') {
@@ -3,20 +3,18 @@ import { CodeError } from '@libp2p/interface/errors'
3
3
  import { TypedEventEmitter, CustomEvent } from '@libp2p/interface/events'
4
4
  import { type PeerDiscovery, peerDiscovery, type PeerDiscoveryEvents } from '@libp2p/interface/peer-discovery'
5
5
  import { type PeerRouting, peerRouting } from '@libp2p/interface/peer-routing'
6
- import { logger } from '@libp2p/logger'
7
6
  import drain from 'it-drain'
8
7
  import merge from 'it-merge'
9
8
  import isPrivate from 'private-ip'
10
9
  import { DefaultKadDHT } from './kad-dht.js'
11
10
  import { queryErrorEvent } from './query/events.js'
12
11
  import type { DualKadDHT, KadDHT, KadDHTComponents, KadDHTInit, QueryEvent, QueryOptions } from './index.js'
12
+ import type { Logger } from '@libp2p/interface'
13
13
  import type { PeerId } from '@libp2p/interface/peer-id'
14
14
  import type { PeerInfo } from '@libp2p/interface/peer-info'
15
15
  import type { Multiaddr } from '@multiformats/multiaddr'
16
16
  import type { CID } from 'multiformats/cid'
17
17
 
18
- const log = logger('libp2p:kad-dht')
19
-
20
18
  /**
21
19
  * Wrapper class to convert events into returned values
22
20
  */
@@ -127,11 +125,13 @@ export class DefaultDualKadDHT extends TypedEventEmitter<PeerDiscoveryEvents> im
127
125
  public readonly components: KadDHTComponents
128
126
  private readonly contentRouting: ContentRouting
129
127
  private readonly peerRouting: PeerRouting
128
+ private readonly log: Logger
130
129
 
131
130
  constructor (components: KadDHTComponents, init: KadDHTInit = {}) {
132
131
  super()
133
132
 
134
133
  this.components = components
134
+ this.log = components.logger.forComponent('libp2p:kad-dht')
135
135
 
136
136
  this.wan = new DefaultKadDHT(components, {
137
137
  protocolPrefix: '/ipfs',
@@ -164,7 +164,7 @@ export class DefaultDualKadDHT extends TypedEventEmitter<PeerDiscoveryEvents> im
164
164
  // mode when the node's peer data is updated with publicly dialable addresses
165
165
  if (init.clientMode == null) {
166
166
  components.events.addEventListener('self:peer:update', (evt) => {
167
- log('received update of self-peer info')
167
+ this.log('received update of self-peer info')
168
168
  const hasPublicAddress = evt.detail.peer.addresses
169
169
  .some(({ multiaddr }) => multiaddrIsPublic(multiaddr))
170
170
 
@@ -177,7 +177,7 @@ export class DefaultDualKadDHT extends TypedEventEmitter<PeerDiscoveryEvents> im
177
177
  }
178
178
  })
179
179
  .catch(err => {
180
- log.error('error setting dht server mode', err)
180
+ this.log.error('error setting dht server mode', err)
181
181
  })
182
182
  })
183
183
  }
@@ -322,7 +322,7 @@ export class DefaultDualKadDHT extends TypedEventEmitter<PeerDiscoveryEvents> im
322
322
  }
323
323
 
324
324
  if (event.name === 'PEER_RESPONSE' && event.messageName === 'ADD_PROVIDER') {
325
- log('sent provider record for %s to %p', key, event.from)
325
+ this.log('sent provider record for %s to %p', key, event.from)
326
326
  success++
327
327
  }
328
328
  }
package/src/index.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { DefaultDualKadDHT } from './dual-kad-dht.js'
2
2
  import type { ProvidersInit } from './providers.js'
3
- import type { Libp2pEvents, AbortOptions } from '@libp2p/interface'
3
+ import type { Libp2pEvents, AbortOptions, ComponentLogger } from '@libp2p/interface'
4
4
  import type { TypedEventTarget } from '@libp2p/interface/events'
5
5
  import type { Metrics } from '@libp2p/interface/metrics'
6
6
  import type { PeerId } from '@libp2p/interface/peer-id'
@@ -315,6 +315,7 @@ export interface KadDHTComponents {
315
315
  connectionManager: ConnectionManager
316
316
  datastore: Datastore
317
317
  events: TypedEventTarget<Libp2pEvents>
318
+ logger: ComponentLogger
318
319
  }
319
320
 
320
321
  export function kadDHT (init?: KadDHTInit): (components: KadDHTComponents) => DualKadDHT {
package/src/kad-dht.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { CustomEvent, TypedEventEmitter } from '@libp2p/interface/events'
2
- import { type Logger, logger } from '@libp2p/logger'
3
2
  import pDefer from 'p-defer'
4
3
  import { PROTOCOL_DHT, PROTOCOL_PREFIX, LAN_PREFIX } from './constants.js'
5
4
  import { ContentFetching } from './content-fetching/index.js'
@@ -20,6 +19,7 @@ import {
20
19
  removePublicAddresses
21
20
  } from './utils.js'
22
21
  import type { KadDHTComponents, KadDHTInit, QueryOptions, Validators, Selectors, KadDHT, QueryEvent } from './index.js'
22
+ import type { Logger } from '@libp2p/interface'
23
23
  import type { PeerDiscoveryEvents } from '@libp2p/interface/peer-discovery'
24
24
  import type { PeerId } from '@libp2p/interface/peer-id'
25
25
  import type { PeerInfo } from '@libp2p/interface/peer-info'
@@ -88,7 +88,7 @@ export class DefaultKadDHT extends TypedEventEmitter<PeerDiscoveryEvents> implem
88
88
  this.running = false
89
89
  this.components = components
90
90
  this.lan = Boolean(lan)
91
- this.log = logger(`libp2p:kad-dht:${lan === true ? 'lan' : 'wan'}`)
91
+ this.log = components.logger.forComponent(`libp2p:kad-dht:${lan === true ? 'lan' : 'wan'}`)
92
92
  this.protocol = `${protocolPrefix ?? PROTOCOL_PREFIX}${lan === true ? LAN_PREFIX : ''}${PROTOCOL_DHT}`
93
93
  this.kBucketSize = kBucketSize ?? 20
94
94
  this.clientMode = clientMode ?? true
@@ -159,7 +159,7 @@ export class DefaultKadDHT extends TypedEventEmitter<PeerDiscoveryEvents> implem
159
159
  providers: this.providers,
160
160
  lan: this.lan
161
161
  })
162
- this.routingTableRefresh = new RoutingTableRefresh({
162
+ this.routingTableRefresh = new RoutingTableRefresh(components, {
163
163
  peerRouting: this.peerRouting,
164
164
  routingTable: this.routingTable,
165
165
  lan: this.lan
@@ -218,7 +218,7 @@ export class DefaultKadDHT extends TypedEventEmitter<PeerDiscoveryEvents> implem
218
218
  }
219
219
 
220
220
  async onPeerConnect (peerData: PeerInfo): Promise<void> {
221
- this.log('peer %p connected with protocols', peerData.id, peerData.protocols)
221
+ this.log('peer %p connected', peerData.id)
222
222
 
223
223
  if (this.lan) {
224
224
  peerData = removePublicAddresses(peerData)
@@ -85,6 +85,14 @@ export class Message {
85
85
 
86
86
  return msg
87
87
  }
88
+
89
+ static encode (message: Message): Uint8Array {
90
+ return message.serialize()
91
+ }
92
+
93
+ static decode (buf: Uint8Array | Uint8ArrayList): Message {
94
+ return Message.deserialize(buf)
95
+ }
88
96
  }
89
97
 
90
98
  function toPbPeer (peer: PeerInfo): PBPeer {
@@ -104,7 +112,6 @@ function fromPbPeer (peer: PBMessage.Peer): PeerInfo {
104
112
 
105
113
  return {
106
114
  id: peerIdFromBytes(peer.id),
107
- multiaddrs: (peer.addrs ?? []).map((a) => multiaddr(a)),
108
- protocols: []
115
+ multiaddrs: (peer.addrs ?? []).map((a) => multiaddr(a))
109
116
  }
110
117
  }