@libp2p/devtools-metrics 0.2.0 → 0.2.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 (58) hide show
  1. package/dist/index.min.js +1 -1
  2. package/dist/src/index.d.ts +24 -95
  3. package/dist/src/index.d.ts.map +1 -1
  4. package/dist/src/index.js +66 -131
  5. package/dist/src/index.js.map +1 -1
  6. package/dist/src/rpc/codecs/cid.d.ts +4 -0
  7. package/dist/src/rpc/codecs/cid.d.ts.map +1 -0
  8. package/dist/src/rpc/codecs/cid.js +8 -0
  9. package/dist/src/rpc/codecs/cid.js.map +1 -0
  10. package/dist/src/rpc/codecs/custom-progress-event.d.ts +4 -0
  11. package/dist/src/rpc/codecs/custom-progress-event.d.ts.map +1 -0
  12. package/dist/src/rpc/codecs/custom-progress-event.js +15 -0
  13. package/dist/src/rpc/codecs/custom-progress-event.js.map +1 -0
  14. package/dist/src/rpc/codecs/multiaddr.d.ts +4 -0
  15. package/dist/src/rpc/codecs/multiaddr.d.ts.map +1 -0
  16. package/dist/src/rpc/codecs/multiaddr.js +8 -0
  17. package/dist/src/rpc/codecs/multiaddr.js.map +1 -0
  18. package/dist/src/rpc/codecs/peer-id.d.ts +4 -0
  19. package/dist/src/rpc/codecs/peer-id.d.ts.map +1 -0
  20. package/dist/src/rpc/codecs/peer-id.js +9 -0
  21. package/dist/src/rpc/codecs/peer-id.js.map +1 -0
  22. package/dist/src/rpc/index.d.ts +99 -0
  23. package/dist/src/rpc/index.d.ts.map +1 -0
  24. package/dist/src/rpc/index.js +11 -0
  25. package/dist/src/rpc/index.js.map +1 -0
  26. package/dist/src/rpc/rpc.d.ts +4 -0
  27. package/dist/src/rpc/rpc.d.ts.map +1 -0
  28. package/dist/src/rpc/rpc.js +51 -0
  29. package/dist/src/rpc/rpc.js.map +1 -0
  30. package/dist/src/utils/debounce.d.ts +2 -0
  31. package/dist/src/utils/debounce.d.ts.map +1 -0
  32. package/dist/src/utils/debounce.js +21 -0
  33. package/dist/src/utils/debounce.js.map +1 -0
  34. package/dist/src/utils/get-peers.d.ts +9 -0
  35. package/dist/src/utils/get-peers.d.ts.map +1 -0
  36. package/dist/src/utils/get-peers.js +42 -0
  37. package/dist/src/utils/get-peers.js.map +1 -0
  38. package/dist/src/utils/get-self.d.ts +8 -0
  39. package/dist/src/utils/get-self.d.ts.map +1 -0
  40. package/dist/src/utils/get-self.js +13 -0
  41. package/dist/src/utils/get-self.js.map +1 -0
  42. package/dist/src/utils/to-object.d.ts +2 -0
  43. package/dist/src/utils/to-object.d.ts.map +1 -0
  44. package/dist/src/utils/to-object.js +8 -0
  45. package/dist/src/utils/to-object.js.map +1 -0
  46. package/dist/typedoc-urls.json +17 -13
  47. package/package.json +34 -8
  48. package/src/index.ts +101 -257
  49. package/src/rpc/codecs/cid.ts +9 -0
  50. package/src/rpc/codecs/custom-progress-event.ts +17 -0
  51. package/src/rpc/codecs/multiaddr.ts +10 -0
  52. package/src/rpc/codecs/peer-id.ts +11 -0
  53. package/src/rpc/index.ts +122 -0
  54. package/src/rpc/rpc.ts +59 -0
  55. package/src/utils/debounce.ts +23 -0
  56. package/src/utils/get-peers.ts +53 -0
  57. package/src/utils/get-self.ts +21 -0
  58. package/src/utils/to-object.ts +9 -0
package/dist/src/index.js CHANGED
@@ -16,9 +16,17 @@
16
16
  * for Chrome or Firefox to inspect the state of your running node.
17
17
  */
18
18
  import { serviceCapabilities, start, stop } from '@libp2p/interface';
19
- import { enable, disable } from '@libp2p/logger';
20
19
  import { simpleMetrics } from '@libp2p/simple-metrics';
20
+ import { pipe } from 'it-pipe';
21
+ import { pushable } from 'it-pushable';
22
+ import { rpc } from 'it-rpc';
21
23
  import { base64 } from 'multiformats/bases/base64';
24
+ import { valueCodecs } from './rpc/index.js';
25
+ import { metricsRpc } from './rpc/rpc.js';
26
+ import { debounce } from './utils/debounce.js';
27
+ import { getPeers } from './utils/get-peers.js';
28
+ import { getSelf } from './utils/get-self.js';
29
+ export * from './rpc/index.js';
22
30
  export const SOURCE_DEVTOOLS = '@libp2p/devtools-metrics:devtools';
23
31
  export const SOURCE_SERVICE_WORKER = '@libp2p/devtools-metrics:worker';
24
32
  export const SOURCE_CONTENT_SCRIPT = '@libp2p/devtools-metrics:content';
@@ -35,25 +43,32 @@ class DevToolsMetrics {
35
43
  components;
36
44
  simpleMetrics;
37
45
  intervalMs;
46
+ rpcQueue;
47
+ rpc;
48
+ devTools;
38
49
  constructor(components, init) {
39
50
  this.log = components.logger.forComponent('libp2p:devtools-metrics');
40
51
  this.intervalMs = init?.intervalMs;
41
52
  this.components = components;
53
+ // create RPC endpoint
54
+ this.rpcQueue = pushable();
55
+ this.rpc = rpc({
56
+ valueCodecs
57
+ });
58
+ this.devTools = this.rpc.createClient('devTools');
42
59
  // collect information on current peers and sent it to the dev tools panel
43
60
  this.onPeersUpdate = debounce(this.onPeersUpdate.bind(this), 1000);
44
- this.onSelfUpdate = this.onSelfUpdate.bind(this);
61
+ this.onSelfUpdate = debounce(this.onSelfUpdate.bind(this), 1000);
45
62
  this.onIncomingMessage = this.onIncomingMessage.bind(this);
46
63
  // collect metrics
47
64
  this.simpleMetrics = simpleMetrics({
48
65
  intervalMs: this.intervalMs,
49
66
  onMetrics: (metrics) => {
50
- const message = {
51
- source: SOURCE_METRICS,
52
- type: 'metrics',
53
- metrics
54
- };
55
- this.log('post metrics message');
56
- window.postMessage(message, '*');
67
+ this.devTools.safeDispatchEvent('metrics', {
68
+ detail: metrics
69
+ }).catch(err => {
70
+ this.log.error('error sending metrics', err);
71
+ });
57
72
  }
58
73
  })({});
59
74
  }
@@ -89,8 +104,26 @@ class DevToolsMetrics {
89
104
  this.components.events.addEventListener('self:peer:update', this.onSelfUpdate);
90
105
  // process incoming messages from devtools
91
106
  window.addEventListener('message', this.onIncomingMessage);
107
+ // create rpc target
108
+ this.rpc.createTarget('metrics', metricsRpc(this.components));
92
109
  // send metrics
93
110
  await start(this.simpleMetrics);
111
+ // send RPC messages
112
+ Promise.resolve()
113
+ .then(async () => {
114
+ await pipe(this.rpcQueue, this.rpc, async (source) => {
115
+ for await (const buf of source) {
116
+ window.postMessage({
117
+ source: SOURCE_METRICS,
118
+ type: 'libp2p-rpc',
119
+ message: base64.encode(buf)
120
+ });
121
+ }
122
+ });
123
+ })
124
+ .catch(err => {
125
+ this.log.error('error while reading RPC messages', err);
126
+ });
94
127
  }
95
128
  async stop() {
96
129
  window.removeEventListener('message', this.onIncomingMessage);
@@ -101,80 +134,6 @@ class DevToolsMetrics {
101
134
  this.components.events.removeEventListener('peer:update', this.onPeersUpdate);
102
135
  await stop(this.simpleMetrics);
103
136
  }
104
- onPeersUpdate() {
105
- Promise.resolve().then(async () => {
106
- const message = {
107
- source: SOURCE_METRICS,
108
- type: 'peers',
109
- peers: []
110
- };
111
- const connections = this.components.connectionManager.getConnectionsMap();
112
- const connectedAddresses = [...connections.values()].flatMap(conn => conn).map(conn => conn.remoteAddr.toString());
113
- for (const [peerId, conns] of connections.entries()) {
114
- try {
115
- const peer = await this.components.peerStore.get(peerId);
116
- message.peers.push({
117
- id: peerId.toString(),
118
- addresses: peer.addresses.map(({ isCertified, multiaddr }) => {
119
- const addr = multiaddr.toString();
120
- return {
121
- multiaddr: addr,
122
- isCertified,
123
- isConnected: connectedAddresses.includes(addr)
124
- };
125
- }),
126
- protocols: [...peer.protocols],
127
- tags: toObject(peer.tags, (t) => t.value),
128
- metadata: toObject(peer.metadata, (buf) => base64.encode(buf))
129
- });
130
- }
131
- catch (err) {
132
- this.log.error('could not load peer data from peer store', err);
133
- message.peers.push({
134
- id: peerId.toString(),
135
- addresses: conns.map(conn => {
136
- const addr = conn.remoteAddr.toString();
137
- return {
138
- multiaddr: addr,
139
- isConnected: connectedAddresses.includes(addr)
140
- };
141
- }),
142
- protocols: [],
143
- tags: {},
144
- metadata: {}
145
- });
146
- }
147
- }
148
- window.postMessage(message, '*');
149
- })
150
- .catch(err => {
151
- this.log.error('error sending peers message', err);
152
- });
153
- }
154
- onSelfUpdate(evt) {
155
- this.sendSelfUpdate(evt.detail.peer);
156
- }
157
- sendSelfUpdate(peer) {
158
- Promise.resolve()
159
- .then(async () => {
160
- const message = {
161
- source: SOURCE_METRICS,
162
- type: 'self',
163
- peer: {
164
- id: peer.id.toString(),
165
- multiaddrs: peer.addresses.map(({ multiaddr }) => multiaddr.toString()),
166
- protocols: [...peer.protocols],
167
- tags: toObject(peer.tags, (t) => t.value),
168
- metadata: toObject(peer.metadata, (buf) => base64.encode(buf))
169
- }
170
- };
171
- this.log('post node update message');
172
- window.postMessage(message, '*');
173
- })
174
- .catch(err => {
175
- this.log.error('error sending self update', err);
176
- });
177
- }
178
137
  onIncomingMessage(event) {
179
138
  // Only accept messages from same frame
180
139
  if (event.source !== window) {
@@ -185,60 +144,36 @@ class DevToolsMetrics {
185
144
  if (message?.source !== SOURCE_DEVTOOLS) {
186
145
  return;
187
146
  }
188
- // respond to identify request
189
- if (message.type === 'identify') {
190
- Promise.resolve()
191
- .then(async () => {
192
- const peer = await this.components.peerStore.get(this.components.peerId);
193
- this.sendSelfUpdate(peer);
194
- // also send our current peer list
195
- this.onPeersUpdate();
196
- })
197
- .catch(err => {
198
- this.log.error('error sending identify response', err);
199
- });
200
- }
201
- // handle enabling/disabling debug namespaces
202
- if (message.type === 'debug') {
203
- if (message.namespace.length > 0) {
204
- enable(message.namespace);
205
- }
206
- else {
207
- disable();
208
- }
147
+ if (message.type === 'libp2p-rpc') {
148
+ this.rpcQueue.push(base64.decode(message.message));
209
149
  }
210
150
  }
151
+ onSelfUpdate() {
152
+ Promise.resolve()
153
+ .then(async () => {
154
+ await this.devTools.safeDispatchEvent('self', {
155
+ detail: await getSelf(this.components)
156
+ });
157
+ })
158
+ .catch(err => {
159
+ this.log.error('error sending peers message', err);
160
+ });
161
+ }
162
+ onPeersUpdate() {
163
+ Promise.resolve()
164
+ .then(async () => {
165
+ await this.devTools.safeDispatchEvent('peers', {
166
+ detail: await getPeers(this.components, this.log)
167
+ });
168
+ })
169
+ .catch(err => {
170
+ this.log.error('error sending peers message', err);
171
+ });
172
+ }
211
173
  }
212
174
  export function devToolsMetrics(init) {
213
175
  return (components) => {
214
176
  return new DevToolsMetrics(components, init);
215
177
  };
216
178
  }
217
- function toObject(map, transform) {
218
- const output = {};
219
- for (const [key, value] of map.entries()) {
220
- output[key] = transform(value);
221
- }
222
- return output;
223
- }
224
- function debounce(callback, wait = 100) {
225
- let timeout;
226
- let start;
227
- return () => {
228
- if (start == null) {
229
- start = Date.now();
230
- }
231
- if (timeout != null && Date.now() - start > wait) {
232
- clearTimeout(timeout);
233
- start = undefined;
234
- callback();
235
- return;
236
- }
237
- clearTimeout(timeout);
238
- timeout = setTimeout(() => {
239
- start = undefined;
240
- callback();
241
- }, wait);
242
- };
243
- }
244
179
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { CID } from 'multiformats/cid';
2
+ import type { ValueCodec } from 'it-rpc';
3
+ export declare const cidCodec: ValueCodec<CID>;
4
+ //# sourceMappingURL=cid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cid.d.ts","sourceRoot":"","sources":["../../../../src/rpc/codecs/cid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAExC,eAAO,MAAM,QAAQ,EAAE,UAAU,CAAC,GAAG,CAKpC,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { CID } from 'multiformats/cid';
2
+ export const cidCodec = {
3
+ type: 4096,
4
+ canEncode: (val) => val.code != null && val.version != null && val.multihash != null && val['/'] != null,
5
+ encode: (val) => val.bytes,
6
+ decode: (buf) => CID.decode(buf)
7
+ };
8
+ //# sourceMappingURL=cid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cid.js","sourceRoot":"","sources":["../../../../src/rpc/codecs/cid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAGtC,MAAM,CAAC,MAAM,QAAQ,GAAoB;IACvC,IAAI,EAAE,IAAI;IACV,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,GAAG,CAAC,OAAO,IAAI,IAAI,IAAI,GAAG,CAAC,SAAS,IAAI,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI;IACxG,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK;IAC1B,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;CACjC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { CustomProgressEvent } from 'progress-events';
2
+ import type { ValueCodec } from 'it-rpc';
3
+ export declare const customProgressEventCodec: ValueCodec<CustomProgressEvent>;
4
+ //# sourceMappingURL=custom-progress-event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-progress-event.d.ts","sourceRoot":"","sources":["../../../../src/rpc/codecs/custom-progress-event.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAExC,eAAO,MAAM,wBAAwB,EAAE,UAAU,CAAC,mBAAmB,CAYpE,CAAA"}
@@ -0,0 +1,15 @@
1
+ import { encode, decode } from 'cborg';
2
+ import { CustomProgressEvent } from 'progress-events';
3
+ export const customProgressEventCodec = {
4
+ type: 4099,
5
+ canEncode: (val) => val instanceof CustomProgressEvent,
6
+ encode: (val, codec, context, invocation) => encode({
7
+ type: val.type,
8
+ detail: codec.toValue(val.detail, context, invocation)
9
+ }),
10
+ decode: (val, codec, pushable, invocation) => {
11
+ const { type, detail } = decode(val);
12
+ return new CustomProgressEvent(type, codec.fromValue(detail, pushable, invocation));
13
+ }
14
+ };
15
+ //# sourceMappingURL=custom-progress-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-progress-event.js","sourceRoot":"","sources":["../../../../src/rpc/codecs/custom-progress-event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAGrD,MAAM,CAAC,MAAM,wBAAwB,GAAoC;IACvE,IAAI,EAAE,IAAI;IACV,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,YAAY,mBAAmB;IACtD,MAAM,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC;QAClD,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC;KACvD,CAAC;IACF,MAAM,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE;QAC3C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QAEpC,OAAO,IAAI,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;IACrF,CAAC;CACF,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { Multiaddr } from '@multiformats/multiaddr';
2
+ import type { ValueCodec } from 'it-rpc';
3
+ export declare const multiaddrCodec: ValueCodec<Multiaddr>;
4
+ //# sourceMappingURL=multiaddr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiaddr.d.ts","sourceRoot":"","sources":["../../../../src/rpc/codecs/multiaddr.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAExC,eAAO,MAAM,cAAc,EAAE,UAAU,CAAC,SAAS,CAKhD,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { isMultiaddr, multiaddr } from '@multiformats/multiaddr';
2
+ export const multiaddrCodec = {
3
+ type: 4097,
4
+ canEncode: (val) => isMultiaddr(val),
5
+ encode: (val) => val.bytes,
6
+ decode: (buf) => multiaddr(buf)
7
+ };
8
+ //# sourceMappingURL=multiaddr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiaddr.js","sourceRoot":"","sources":["../../../../src/rpc/codecs/multiaddr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAIhE,MAAM,CAAC,MAAM,cAAc,GAA0B;IACnD,IAAI,EAAE,IAAI;IACV,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC;IACpC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK;IAC1B,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC;CAChC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { PeerId } from '@libp2p/interface';
2
+ import type { ValueCodec } from 'it-rpc';
3
+ export declare const peerIdCodec: ValueCodec<PeerId>;
4
+ //# sourceMappingURL=peer-id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"peer-id.d.ts","sourceRoot":"","sources":["../../../../src/rpc/codecs/peer-id.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAExC,eAAO,MAAM,WAAW,EAAE,UAAU,CAAC,MAAM,CAK1C,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { isPeerId } from '@libp2p/interface';
2
+ import { peerIdFromBytes } from '@libp2p/peer-id';
3
+ export const peerIdCodec = {
4
+ type: 4098,
5
+ canEncode: (val) => isPeerId(val),
6
+ encode: (val) => val.toBytes(),
7
+ decode: (buf) => peerIdFromBytes(buf)
8
+ };
9
+ //# sourceMappingURL=peer-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"peer-id.js","sourceRoot":"","sources":["../../../../src/rpc/codecs/peer-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAIjD,MAAM,CAAC,MAAM,WAAW,GAAuB;IAC7C,IAAI,EAAE,IAAI;IACV,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC;IACjC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE;IAC9B,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC;CACtC,CAAA"}
@@ -0,0 +1,99 @@
1
+ import type { ContentRouting, PeerId, PeerRouting, AbortOptions } from '@libp2p/interface';
2
+ import type { OpenConnectionOptions } from '@libp2p/interface-internal';
3
+ import type { Multiaddr } from '@multiformats/multiaddr';
4
+ import type { ValueCodec } from 'it-rpc';
5
+ export declare const valueCodecs: Array<ValueCodec<any>>;
6
+ export interface NodeAddress {
7
+ multiaddr: Multiaddr;
8
+ listen?: boolean;
9
+ announce?: boolean;
10
+ observed?: boolean;
11
+ default?: boolean;
12
+ }
13
+ export interface NodeStatus {
14
+ peerId: PeerId;
15
+ agent?: string;
16
+ addresses: NodeAddress[];
17
+ protocols: string[];
18
+ }
19
+ export interface PeerAddress {
20
+ multiaddr: Multiaddr;
21
+ isConnected?: boolean;
22
+ isCertified?: boolean;
23
+ }
24
+ export interface Peer {
25
+ /**
26
+ * The identifier of the remote peer
27
+ */
28
+ id: PeerId;
29
+ /**
30
+ * The list of addresses the peer has that we know about
31
+ */
32
+ addresses: PeerAddress[];
33
+ /**
34
+ * Any peer store tags the peer has
35
+ */
36
+ tags: Record<string, number>;
37
+ /**
38
+ * Any peer store metadata the peer has
39
+ */
40
+ metadata: Record<string, string>;
41
+ /**
42
+ * The protocols the peer supports, if known
43
+ */
44
+ protocols: string[];
45
+ }
46
+ /**
47
+ * RPC operations exposed by the metrics
48
+ */
49
+ export interface MetricsRPC {
50
+ /**
51
+ * Called by DevTools on initial connect
52
+ */
53
+ init(options?: AbortOptions): Promise<{
54
+ self: Peer;
55
+ peers: Peer[];
56
+ debug: string;
57
+ }>;
58
+ /**
59
+ * Update the currently active debugging namespaces
60
+ */
61
+ setDebug(namespace?: string): Promise<void>;
62
+ /**
63
+ * Open a connection to the passed peer or multiaddr
64
+ */
65
+ openConnection(peerIdOrMultiaddr: string, options?: OpenConnectionOptions): Promise<void>;
66
+ /**
67
+ * Close connections open to the specified peer
68
+ */
69
+ closeConnection(peerId: PeerId, options?: AbortOptions): Promise<void>;
70
+ /**
71
+ * Make content routing queries
72
+ */
73
+ contentRouting: ContentRouting;
74
+ /**
75
+ * Make peer routing queries
76
+ */
77
+ peerRouting: PeerRouting;
78
+ }
79
+ export interface DevToolsEvents {
80
+ /**
81
+ * Node metrics have been updated
82
+ */
83
+ 'metrics': CustomEvent<Record<string, any>>;
84
+ /**
85
+ * The node's status has changed - new addresses and/or protocols, etc
86
+ */
87
+ 'self': CustomEvent<Peer>;
88
+ /**
89
+ * The node's connected peers have changed
90
+ */
91
+ 'peers': CustomEvent<Peer[]>;
92
+ }
93
+ /**
94
+ * RPC operations exposed by the DevTools
95
+ */
96
+ export interface DevToolsRPC {
97
+ safeDispatchEvent<Detail>(type: keyof DevToolsEvents, detail?: CustomEventInit<Detail>): Promise<void>;
98
+ }
99
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/rpc/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAC1F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAExC,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAK9C,CAAA;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,WAAW,EAAE,CAAA;IACxB,SAAS,EAAE,MAAM,EAAE,CAAA;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,SAAS,CAAA;IACpB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,MAAM,WAAW,IAAI;IACnB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,SAAS,EAAE,WAAW,EAAE,CAAA;IAExB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE5B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEhC;;OAEG;IACH,SAAS,EAAE,MAAM,EAAE,CAAA;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,IAAI,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,IAAI,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAEnF;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE3C;;OAEG;IACH,cAAc,CAAC,iBAAiB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEzF;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtE;;OAEG;IACH,cAAc,EAAE,cAAc,CAAA;IAE9B;;OAEG;IACH,WAAW,EAAE,WAAW,CAAA;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA;IAE3C;;OAEG;IACH,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAA;IAEzB;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,cAAc,EAAE,MAAM,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACvG"}
@@ -0,0 +1,11 @@
1
+ import { cidCodec } from './codecs/cid.js';
2
+ import { customProgressEventCodec } from './codecs/custom-progress-event.js';
3
+ import { multiaddrCodec } from './codecs/multiaddr.js';
4
+ import { peerIdCodec } from './codecs/peer-id.js';
5
+ export const valueCodecs = [
6
+ cidCodec,
7
+ multiaddrCodec,
8
+ peerIdCodec,
9
+ customProgressEventCodec
10
+ ];
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rpc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAA;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAMjD,MAAM,CAAC,MAAM,WAAW,GAA2B;IACjD,QAAQ;IACR,cAAc;IACd,WAAW;IACX,wBAAwB;CACzB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { MetricsRPC } from './index.js';
2
+ import type { DevToolsMetricsComponents } from '../index.js';
3
+ export declare function metricsRpc(components: DevToolsMetricsComponents): MetricsRPC;
4
+ //# sourceMappingURL=rpc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../../src/rpc/rpc.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAA;AAM5D,wBAAgB,UAAU,CAAE,UAAU,EAAE,yBAAyB,GAAG,UAAU,CA8C7E"}
@@ -0,0 +1,51 @@
1
+ import { enable, disable } from '@libp2p/logger';
2
+ import { peerIdFromString } from '@libp2p/peer-id';
3
+ import { multiaddr } from '@multiformats/multiaddr';
4
+ import { getPeers } from '../utils/get-peers.js';
5
+ import { getSelf } from '../utils/get-self.js';
6
+ export function metricsRpc(components) {
7
+ const log = components.logger.forComponent('libp2p:devtools-metrics:metrics-rpc');
8
+ return {
9
+ init: async () => {
10
+ return {
11
+ self: await getSelf(components),
12
+ peers: await getPeers(components, log),
13
+ debug: localStorage.getItem('debug') ?? ''
14
+ };
15
+ },
16
+ setDebug: async (namespace) => {
17
+ if (namespace?.length != null && namespace?.length > 0) {
18
+ enable(namespace);
19
+ localStorage.setItem('debug', namespace);
20
+ }
21
+ else {
22
+ disable();
23
+ localStorage.removeItem('debug');
24
+ }
25
+ },
26
+ openConnection: async (peerIdOrMultiaddr, options) => {
27
+ let peer;
28
+ try {
29
+ peer = peerIdFromString(peerIdOrMultiaddr);
30
+ }
31
+ catch {
32
+ peer = multiaddr(peerIdOrMultiaddr);
33
+ }
34
+ await components.connectionManager.openConnection(peer, options);
35
+ },
36
+ closeConnection: async (peerId, options) => {
37
+ await Promise.all(components.connectionManager.getConnections(peerId)
38
+ .map(async (connection) => {
39
+ try {
40
+ await connection.close(options);
41
+ }
42
+ catch (err) {
43
+ connection.abort(err);
44
+ }
45
+ }));
46
+ },
47
+ contentRouting: components.contentRouting,
48
+ peerRouting: components.peerRouting
49
+ };
50
+ }
51
+ //# sourceMappingURL=rpc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../src/rpc/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAQ9C,MAAM,UAAU,UAAU,CAAE,UAAqC;IAC/D,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,qCAAqC,CAAC,CAAA;IAEjF,OAAO;QACL,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,OAAO;gBACL,IAAI,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC;gBAC/B,KAAK,EAAE,MAAM,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC;gBACtC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE;aAC3C,CAAA;QACH,CAAC;QACD,QAAQ,EAAE,KAAK,EAAE,SAAkB,EAAE,EAAE;YACrC,IAAI,SAAS,EAAE,MAAM,IAAI,IAAI,IAAI,SAAS,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvD,MAAM,CAAC,SAAS,CAAC,CAAA;gBACjB,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;YAC1C,CAAC;iBAAM,CAAC;gBACN,OAAO,EAAE,CAAA;gBACT,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;YAClC,CAAC;QACH,CAAC;QACD,cAAc,EAAE,KAAK,EAAE,iBAAyB,EAAE,OAA+B,EAAE,EAAE;YACnF,IAAI,IAAwB,CAAA;YAE5B,IAAI,CAAC;gBACH,IAAI,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,CAAA;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,GAAG,SAAS,CAAC,iBAAiB,CAAC,CAAA;YACrC,CAAC;YAED,MAAM,UAAU,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAClE,CAAC;QACD,eAAe,EAAE,KAAK,EAAE,MAAc,EAAE,OAAsB,EAAE,EAAE;YAChE,MAAM,OAAO,CAAC,GAAG,CACf,UAAU,CAAC,iBAAiB,CAAC,cAAc,CAAC,MAAM,CAAC;iBAChD,GAAG,CAAC,KAAK,EAAC,UAAU,EAAC,EAAE;gBACtB,IAAI,CAAC;oBACH,MAAM,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBACjC,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACvB,CAAC;YACH,CAAC,CAAC,CACL,CAAA;QACH,CAAC;QACD,cAAc,EAAE,UAAU,CAAC,cAAc;QACzC,WAAW,EAAE,UAAU,CAAC,WAAW;KACpC,CAAA;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function debounce(callback: () => void, wait?: number): () => void;
2
+ //# sourceMappingURL=debounce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../../src/utils/debounce.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAE,QAAQ,EAAE,MAAM,IAAI,EAAE,IAAI,GAAE,MAAY,GAAG,MAAM,IAAI,CAsB9E"}
@@ -0,0 +1,21 @@
1
+ export function debounce(callback, wait = 100) {
2
+ let timeout;
3
+ let start;
4
+ return () => {
5
+ if (start == null) {
6
+ start = Date.now();
7
+ }
8
+ if (timeout != null && Date.now() - start > wait) {
9
+ clearTimeout(timeout);
10
+ start = undefined;
11
+ callback();
12
+ return;
13
+ }
14
+ clearTimeout(timeout);
15
+ timeout = setTimeout(() => {
16
+ start = undefined;
17
+ callback();
18
+ }, wait);
19
+ };
20
+ }
21
+ //# sourceMappingURL=debounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debounce.js","sourceRoot":"","sources":["../../../src/utils/debounce.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,QAAQ,CAAE,QAAoB,EAAE,OAAe,GAAG;IAChE,IAAI,OAAsC,CAAA;IAC1C,IAAI,KAAyB,CAAA;IAE7B,OAAO,GAAS,EAAE;QAChB,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACpB,CAAC;QAED,IAAI,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,IAAI,EAAE,CAAC;YACjD,YAAY,CAAC,OAAO,CAAC,CAAA;YACrB,KAAK,GAAG,SAAS,CAAA;YACjB,QAAQ,EAAE,CAAA;YACV,OAAM;QACR,CAAC;QAED,YAAY,CAAC,OAAO,CAAC,CAAA;QACrB,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YACxB,KAAK,GAAG,SAAS,CAAA;YACjB,QAAQ,EAAE,CAAA;QACZ,CAAC,EAAE,IAAI,CAAC,CAAA;IACV,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { Peer } from '../rpc/index.js';
2
+ import type { Logger, PeerStore } from '@libp2p/interface';
3
+ import type { ConnectionManager } from '@libp2p/interface-internal';
4
+ export interface Components {
5
+ connectionManager: ConnectionManager;
6
+ peerStore: PeerStore;
7
+ }
8
+ export declare function getPeers(components: Components, log: Logger): Promise<Peer[]>;
9
+ //# sourceMappingURL=get-peers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-peers.d.ts","sourceRoot":"","sources":["../../../src/utils/get-peers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAEnE,MAAM,WAAW,UAAU;IACzB,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,SAAS,EAAE,SAAS,CAAA;CACrB;AAED,wBAAsB,QAAQ,CAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAyCpF"}