@libp2p/peer-store 0.0.0 → 1.0.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"metadata-book.js","sourceRoot":"","sources":["../../src/metadata-book.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadata-book.js","sourceRoot":"","sources":["../../src/metadata-book.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,14 @@
1
- import { PeerId } from '@libp2p/peer-id';
2
1
  import type { Store } from './store.js';
3
2
  import type { PeerStore, ProtoBook } from '@libp2p/interfaces/src/peer-store';
3
+ import type { PeerId } from '@libp2p/interfaces/peer-id';
4
4
  export declare class PeerStoreProtoBook implements ProtoBook {
5
- private emit;
6
- private store;
5
+ private readonly dispatchEvent;
6
+ private readonly store;
7
7
  /**
8
8
  * The ProtoBook is responsible for keeping the known supported
9
9
  * protocols of a peer
10
10
  */
11
- constructor(emit: PeerStore["emit"], store: Store);
11
+ constructor(dispatchEvent: PeerStore['dispatchEvent'], store: Store);
12
12
  get(peerId: PeerId): Promise<string[]>;
13
13
  set(peerId: PeerId, protocols: string[]): Promise<void>;
14
14
  add(peerId: PeerId, protocols: string[]): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"proto-book.d.ts","sourceRoot":"","sources":["../../src/proto-book.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAA;AAO7E,qBAAa,kBAAmB,YAAW,SAAS;IAClD,OAAO,CAAC,IAAI,CAAmB;IAC/B,OAAO,CAAC,KAAK,CAAO;IAEpB;;;OAGG;gBACU,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK;IAK5C,GAAG,CAAE,MAAM,EAAE,MAAM;IAqBnB,GAAG,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;IA0CxC,GAAG,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;IA2CxC,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;IA6C3C,MAAM,CAAE,MAAM,EAAE,MAAM;CA2B7B"}
1
+ {"version":3,"file":"proto-book.d.ts","sourceRoot":"","sources":["../../src/proto-book.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAMxD,qBAAa,kBAAmB,YAAW,SAAS;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4B;IAC1D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAO;IAE7B;;;OAGG;gBACU,aAAa,EAAE,SAAS,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK;IAK9D,GAAG,CAAE,MAAM,EAAE,MAAM;IAqBnB,GAAG,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;IA4CxC,GAAG,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;IA6CxC,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;IA+C3C,MAAM,CAAE,MAAM,EAAE,MAAM;CA6B7B"}
@@ -1,8 +1,9 @@
1
1
  import { logger } from '@libp2p/logger';
2
2
  import errcode from 'err-code';
3
3
  import { codes } from './errors.js';
4
- import { PeerId } from '@libp2p/peer-id';
4
+ import { peerIdFromPeerId } from '@libp2p/peer-id';
5
5
  import { base58btc } from 'multiformats/bases/base58';
6
+ import { CustomEvent } from '@libp2p/interfaces';
6
7
  const log = logger('libp2p:peer-store:proto-book');
7
8
  const EVENT_NAME = 'change:protocols';
8
9
  export class PeerStoreProtoBook {
@@ -10,8 +11,8 @@ export class PeerStoreProtoBook {
10
11
  * The ProtoBook is responsible for keeping the known supported
11
12
  * protocols of a peer
12
13
  */
13
- constructor(emit, store) {
14
- this.emit = emit;
14
+ constructor(dispatchEvent, store) {
15
+ this.dispatchEvent = dispatchEvent;
15
16
  this.store = store;
16
17
  }
17
18
  async get(peerId) {
@@ -34,7 +35,7 @@ export class PeerStoreProtoBook {
34
35
  return [];
35
36
  }
36
37
  async set(peerId, protocols) {
37
- peerId = PeerId.fromPeerId(peerId);
38
+ peerId = peerIdFromPeerId(peerId);
38
39
  if (!Array.isArray(protocols)) {
39
40
  log.error('protocols must be provided to store data');
40
41
  throw errcode(new Error('protocols must be provided'), codes.ERR_INVALID_PARAMETERS);
@@ -66,10 +67,12 @@ export class PeerStoreProtoBook {
66
67
  log('set release write lock');
67
68
  release();
68
69
  }
69
- this.emit(EVENT_NAME, { peerId, protocols: updatedPeer.protocols });
70
+ this.dispatchEvent(new CustomEvent(EVENT_NAME, {
71
+ detail: { peerId, protocols: updatedPeer.protocols }
72
+ }));
70
73
  }
71
74
  async add(peerId, protocols) {
72
- peerId = PeerId.fromPeerId(peerId);
75
+ peerId = peerIdFromPeerId(peerId);
73
76
  if (!Array.isArray(protocols)) {
74
77
  log.error('protocols must be provided to store data');
75
78
  throw errcode(new Error('protocols must be provided'), codes.ERR_INVALID_PARAMETERS);
@@ -102,10 +105,12 @@ export class PeerStoreProtoBook {
102
105
  log('add release write lock');
103
106
  release();
104
107
  }
105
- this.emit(EVENT_NAME, { peerId, protocols: updatedPeer.protocols });
108
+ this.dispatchEvent(new CustomEvent(EVENT_NAME, {
109
+ detail: { peerId, protocols: updatedPeer.protocols }
110
+ }));
106
111
  }
107
112
  async remove(peerId, protocols) {
108
- peerId = PeerId.fromPeerId(peerId);
113
+ peerId = peerIdFromPeerId(peerId);
109
114
  if (!Array.isArray(protocols)) {
110
115
  log.error('protocols must be provided to store data');
111
116
  throw errcode(new Error('protocols must be provided'), codes.ERR_INVALID_PARAMETERS);
@@ -139,10 +144,12 @@ export class PeerStoreProtoBook {
139
144
  log('remove release write lock');
140
145
  release();
141
146
  }
142
- this.emit(EVENT_NAME, { peerId, protocols: updatedPeer.protocols });
147
+ this.dispatchEvent(new CustomEvent(EVENT_NAME, {
148
+ detail: { peerId, protocols: updatedPeer.protocols }
149
+ }));
143
150
  }
144
151
  async delete(peerId) {
145
- peerId = PeerId.fromPeerId(peerId);
152
+ peerId = peerIdFromPeerId(peerId);
146
153
  log('delete await write lock');
147
154
  const release = await this.store.lock.writeLock();
148
155
  log('delete got write lock');
@@ -162,8 +169,10 @@ export class PeerStoreProtoBook {
162
169
  log('delete release write lock');
163
170
  release();
164
171
  }
165
- if (has) {
166
- this.emit(EVENT_NAME, { peerId, protocols: [] });
172
+ if (has === true) {
173
+ this.dispatchEvent(new CustomEvent(EVENT_NAME, {
174
+ detail: { peerId, protocols: [] }
175
+ }));
167
176
  }
168
177
  }
169
178
  }
@@ -1 +1 @@
1
- {"version":3,"file":"proto-book.js","sourceRoot":"","sources":["../../src/proto-book.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proto-book.js","sourceRoot":"","sources":["../../src/proto-book.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { PeerId } from '@libp2p/peer-id';
2
1
  import { Key } from 'interface-datastore/key';
3
2
  import type { Peer } from '@libp2p/interfaces/peer-store';
4
3
  import type { Datastore } from 'interface-datastore';
4
+ import type { PeerId } from '@libp2p/interfaces/peer-id';
5
5
  export interface Store {
6
6
  has: (peerId: PeerId) => Promise<boolean>;
7
7
  save: (peer: Peer) => Promise<Peer>;
8
8
  load: (peerId: PeerId) => Promise<Peer>;
9
- delete(peerId: PeerId): Promise<void>;
9
+ delete: (peerId: PeerId) => Promise<void>;
10
10
  merge: (peerId: PeerId, data: Partial<Peer>) => Promise<Peer>;
11
11
  mergeOrCreate: (peerId: PeerId, data: Partial<Peer>) => Promise<Peer>;
12
12
  patch: (peerId: PeerId, data: Partial<Peer>) => Promise<Peer>;
@@ -18,7 +18,7 @@ export interface Store {
18
18
  };
19
19
  }
20
20
  export declare class PersistentStore {
21
- private datastore;
21
+ private readonly datastore;
22
22
  lock: any;
23
23
  constructor(datastore: Datastore);
24
24
  _peerIdToDatastoreKey(peerId: PeerId): Key;
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAGxC,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAM7C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAMpD,MAAM,WAAW,KAAK;IACpB,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACzC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACnC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACvC,MAAM,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7D,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7D,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrE,GAAG,EAAE,MAAM,aAAa,CAAC,IAAI,CAAC,CAAA;IAE9B,IAAI,EAAE;QACJ,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;QACnC,SAAS,EAAE,MAAM,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;KACrC,CAAA;CACF;AAGD,qBAAa,eAAe;IAC1B,OAAO,CAAC,SAAS,CAAW;IACrB,IAAI,EAAE,GAAG,CAAA;gBAEH,SAAS,EAAE,SAAS;IAQjC,qBAAqB,CAAE,MAAM,EAAE,MAAM;IAU/B,GAAG,CAAE,MAAM,EAAE,MAAM;IAInB,MAAM,CAAE,MAAM,EAAE,MAAM;IAItB,IAAI,CAAE,MAAM,EAAE,MAAM;IAqBpB,IAAI,CAAE,IAAI,EAAE,IAAI;IAqChB,KAAK,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IAM1C,aAAa,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IAgBlD,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI;IAQvD,KAAK,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IAM1C,aAAa,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IAiBlD,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI;IAoCrD,GAAG;CAWZ"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAM7C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAMxD,MAAM,WAAW,KAAK;IACpB,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACzC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACnC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACvC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7D,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7D,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrE,GAAG,EAAE,MAAM,aAAa,CAAC,IAAI,CAAC,CAAA;IAE9B,IAAI,EAAE;QACJ,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;QACnC,SAAS,EAAE,MAAM,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;KACrC,CAAA;CACF;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IAC9B,IAAI,EAAE,GAAG,CAAA;gBAEH,SAAS,EAAE,SAAS;IAQjC,qBAAqB,CAAE,MAAM,EAAE,MAAM;IAU/B,GAAG,CAAE,MAAM,EAAE,MAAM;IAInB,MAAM,CAAE,MAAM,EAAE,MAAM;IAItB,IAAI,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBpC,IAAI,CAAE,IAAI,EAAE,IAAI;IAqChB,KAAK,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IAM1C,aAAa,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IAgBlD,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI;IAQvD,KAAK,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IAM1C,aAAa,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IAiBlD,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI;IAoCrD,GAAG;CAWZ"}
package/dist/src/store.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { logger } from '@libp2p/logger';
2
- import { PeerId } from '@libp2p/peer-id';
2
+ import { peerIdFromBytes } from '@libp2p/peer-id';
3
3
  import errcode from 'err-code';
4
4
  import { codes } from './errors.js';
5
5
  import { Key } from 'interface-datastore/key';
@@ -27,7 +27,7 @@ export class PersistentStore {
27
27
  return new Key(`${NAMESPACE_COMMON}b${b32key}`);
28
28
  }
29
29
  async has(peerId) {
30
- return this.datastore.has(this._peerIdToDatastoreKey(peerId));
30
+ return await this.datastore.has(this._peerIdToDatastoreKey(peerId));
31
31
  }
32
32
  async delete(peerId) {
33
33
  await this.datastore.delete(this._peerIdToDatastoreKey(peerId));
@@ -44,10 +44,11 @@ export class PersistentStore {
44
44
  id: peerId,
45
45
  addresses: peer.addresses.map(({ multiaddr, isCertified }) => ({
46
46
  multiaddr: new Multiaddr(multiaddr),
47
- isCertified: isCertified || false
47
+ isCertified: isCertified ?? false
48
48
  })),
49
49
  metadata,
50
- peerRecordEnvelope: peer.peerRecordEnvelope || undefined
50
+ pubKey: peer.pubKey ?? undefined,
51
+ peerRecordEnvelope: peer.peerRecordEnvelope ?? undefined
51
52
  };
52
53
  }
53
54
  async save(peer) {
@@ -79,7 +80,7 @@ export class PersistentStore {
79
80
  peerRecordEnvelope: peer.peerRecordEnvelope
80
81
  }).finish();
81
82
  await this.datastore.put(this._peerIdToDatastoreKey(peer.id), buf);
82
- return this.load(peer.id);
83
+ return await this.load(peer.id);
83
84
  }
84
85
  async patch(peerId, data) {
85
86
  const peer = await this.load(peerId);
@@ -107,7 +108,7 @@ export class PersistentStore {
107
108
  }
108
109
  async merge(peerId, data) {
109
110
  const peer = await this.load(peerId);
110
- return this._merge(peerId, data, peer);
111
+ return await this._merge(peerId, data, peer);
111
112
  }
112
113
  async mergeOrCreate(peerId, data) {
113
114
  /** @type {Peer} */
@@ -128,12 +129,12 @@ export class PersistentStore {
128
129
  // favour of the supplied versions
129
130
  /** @type {Map<string, boolean>} */
130
131
  const addresses = new Map();
131
- (data.addresses || []).forEach(addr => {
132
+ (data.addresses ?? []).forEach(addr => {
132
133
  addresses.set(addr.multiaddr.toString(), addr.isCertified);
133
134
  });
134
135
  peer.addresses.forEach(({ multiaddr, isCertified }) => {
135
136
  const addrStr = multiaddr.toString();
136
- addresses.set(addrStr, Boolean(addresses.get(addrStr) || isCertified));
137
+ addresses.set(addrStr, Boolean(addresses.has(addrStr) ?? isCertified));
137
138
  });
138
139
  return await this.save({
139
140
  id: peerId,
@@ -144,15 +145,15 @@ export class PersistentStore {
144
145
  };
145
146
  }),
146
147
  protocols: Array.from(new Set([
147
- ...(peer.protocols || []),
148
- ...(data.protocols || [])
148
+ ...(peer.protocols ?? []),
149
+ ...(data.protocols ?? [])
149
150
  ])),
150
151
  metadata: new Map([
151
- ...(peer.metadata ? peer.metadata.entries() : []),
152
- ...(data.metadata ? data.metadata.entries() : [])
152
+ ...(peer.metadata?.entries() ?? []),
153
+ ...(data.metadata?.entries() ?? [])
153
154
  ]),
154
- pubKey: data.pubKey || (peer != null ? peer.pubKey : undefined),
155
- peerRecordEnvelope: data.peerRecordEnvelope || (peer != null ? peer.peerRecordEnvelope : undefined)
155
+ pubKey: data.pubKey ?? (peer != null ? peer.pubKey : undefined),
156
+ peerRecordEnvelope: data.peerRecordEnvelope ?? (peer != null ? peer.peerRecordEnvelope : undefined)
156
157
  });
157
158
  }
158
159
  async *all() {
@@ -162,7 +163,7 @@ export class PersistentStore {
162
163
  // /peers/${peer-id-as-libp2p-key-cid-string-in-base-32}
163
164
  const base32Str = key.toString().split('/')[2];
164
165
  const buf = base32.decode(base32Str);
165
- yield this.load(PeerId.fromBytes(buf));
166
+ yield this.load(peerIdFromBytes(buf));
166
167
  }
167
168
  }
168
169
  }
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/peer-store",
3
- "version": "0.0.0",
3
+ "version": "1.0.3",
4
4
  "description": "Stores information about peers libp2p knows on the network",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p-interfaces/tree/master/packages/libp2p-peer-store#readme",
@@ -37,7 +37,8 @@
37
37
  "sourceType": "module"
38
38
  },
39
39
  "ignorePatterns": [
40
- "*.d.ts"
40
+ "src/pb/*.d.ts",
41
+ "src/pb/peer.js"
41
42
  ]
42
43
  },
43
44
  "release": {
@@ -123,15 +124,14 @@
123
124
  },
124
125
  "scripts": {
125
126
  "lint": "aegir lint",
126
- "dep-check": "aegir dep-check dist/src/**/*.js",
127
- "build": "tsc",
128
- "postbuild": "npm run build:copy-proto-files",
127
+ "dep-check": "aegir dep-check dist/src/**/*.js dist/test/**/*.js",
128
+ "build": "tsc && npm run build:copy-proto-files",
129
129
  "generate": "npm run generate:proto && npm run generate:proto-types && tsc",
130
130
  "generate:proto": "pbjs -t static-module -w es6 -r libp2p-peer-store --force-number --no-verify --no-delimited --no-create --no-beautify --no-defaults --lint eslint-disable -o src/pb/peer.js ./src/pb/peer.proto",
131
131
  "generate:proto-types": "pbts -o src/pb/peer.d.ts src/pb/peer.js",
132
- "build:copy-proto-files": "mkdir -p dist/src/pb && cp src/pb/*.js dist/src/pb && cp src/pb/*.d.ts dist/src/pb",
132
+ "build:copy-proto-files": "mkdirp dist/src/pb && cp src/pb/*.js dist/src/pb && cp src/pb/*.d.ts dist/src/pb",
133
133
  "pretest": "npm run build",
134
- "test": "aegir test -f ./dist/test",
134
+ "test": "aegir test -f ./dist/test/*.js -f ./dist/test/**/*.js",
135
135
  "test:chrome": "npm run test -- -t browser",
136
136
  "test:chrome-webworker": "npm run test -- -t webworker",
137
137
  "test:firefox": "npm run test -- -t browser -- --browser firefox",
@@ -141,22 +141,30 @@
141
141
  },
142
142
  "dependencies": {
143
143
  "@libp2p/interfaces": "^1.0.0",
144
- "protobufjs": "^6.10.2",
145
144
  "@libp2p/logger": "^1.0.1",
146
- "interface-datastore": "^6.1.0",
145
+ "@libp2p/peer-record": "^1.0.1",
147
146
  "@multiformats/multiaddr": "^10.1.5",
147
+ "interface-datastore": "^6.1.0",
148
148
  "it-all": "^1.0.6",
149
149
  "it-filter": "^1.0.3",
150
- "it-pipe": "^2.0.3",
151
- "it-map": "^1.0.6",
152
150
  "it-foreach": "^0.1.1",
151
+ "it-map": "^1.0.6",
152
+ "it-pipe": "^2.0.3",
153
153
  "mortice": "^3.0.0",
154
154
  "multiformats": "^9.6.3",
155
- "@libp2p/peer-record": "^0.0.0"
155
+ "protobufjs": "^6.10.2"
156
156
  },
157
157
  "devDependencies": {
158
+ "@libp2p/interface-compliance-tests": "^1.1.2",
159
+ "@libp2p/peer-id": "^1.1.0",
160
+ "@libp2p/peer-id-factory": "^1.0.3",
161
+ "@libp2p/utils": "^1.0.5",
158
162
  "aegir": "^36.1.3",
163
+ "datastore-core": "^7.0.1",
164
+ "err-code": "^3.0.1",
165
+ "p-defer": "^4.0.0",
166
+ "p-wait-for": "^4.1.0",
159
167
  "sinon": "^13.0.1",
160
- "datastore-core": "^7.0.1"
168
+ "uint8arrays": "^3.0.0"
161
169
  }
162
170
  }
@@ -9,11 +9,13 @@ import filter from 'it-filter'
9
9
  import map from 'it-map'
10
10
  import each from 'it-foreach'
11
11
  import { base58btc } from 'multiformats/bases/base58'
12
- import { PeerId } from '@libp2p/peer-id'
12
+ import { peerIdFromPeerId } from '@libp2p/peer-id'
13
+ import { CustomEvent } from '@libp2p/interfaces'
13
14
  import type { PeerStore } from '@libp2p/interfaces/peer-store'
14
15
  import type { Store } from './store.js'
15
16
  import type { AddressFilter, AddressSorter } from './index.js'
16
17
  import type { Envelope } from '@libp2p/interfaces/record'
18
+ import type { PeerId } from '@libp2p/interfaces/peer-id'
17
19
 
18
20
  const log = logger('libp2p:peer-store:address-book')
19
21
  const EVENT_NAME = 'change:multiaddrs'
@@ -23,12 +25,12 @@ async function allowAll () {
23
25
  }
24
26
 
25
27
  export class PeerStoreAddressBook {
26
- private emit: PeerStore["emit"]
27
- private store: Store
28
- private addressFilter: AddressFilter
28
+ private readonly dispatchEvent: PeerStore['dispatchEvent']
29
+ private readonly store: Store
30
+ private readonly addressFilter: AddressFilter
29
31
 
30
- constructor (emit: PeerStore["emit"], store: Store, addressFilter?: AddressFilter) {
31
- this.emit = emit
32
+ constructor (dispatchEvent: PeerStore['dispatchEvent'], store: Store, addressFilter?: AddressFilter) {
33
+ this.dispatchEvent = dispatchEvent
32
34
  this.store = store
33
35
  this.addressFilter = addressFilter ?? allowAll
34
36
  }
@@ -65,14 +67,14 @@ export class PeerStoreAddressBook {
65
67
  }
66
68
 
67
69
  // ensure the record has multiaddrs
68
- if (!multiaddrs || !multiaddrs.length) {
70
+ if (multiaddrs == null || multiaddrs.length === 0) {
69
71
  return false
70
72
  }
71
73
 
72
74
  if (await this.store.has(peerId)) {
73
75
  const peer = await this.store.load(peerId)
74
76
 
75
- if (peer.peerRecordEnvelope) {
77
+ if (peer.peerRecordEnvelope != null) {
76
78
  const storedEnvelope = await RecordEnvelope.createFromProtobuf(peer.peerRecordEnvelope)
77
79
  const storedRecord = PeerRecord.createFromProtobuf(storedEnvelope.payload)
78
80
 
@@ -96,7 +98,9 @@ export class PeerStoreAddressBook {
96
98
  release()
97
99
  }
98
100
 
99
- this.emit(EVENT_NAME, { peerId, multiaddrs: updatedPeer.addresses.map(({ multiaddr }) => multiaddr) })
101
+ this.dispatchEvent(new CustomEvent(EVENT_NAME, {
102
+ detail: { peerId, multiaddrs: updatedPeer.addresses.map(({ multiaddr }) => multiaddr) }
103
+ }))
100
104
 
101
105
  return true
102
106
  }
@@ -127,15 +131,15 @@ export class PeerStoreAddressBook {
127
131
  async getPeerRecord (peerId: PeerId) {
128
132
  const raw = await this.getRawEnvelope(peerId)
129
133
 
130
- if (!raw) {
134
+ if (raw == null) {
131
135
  return undefined
132
136
  }
133
137
 
134
- return RecordEnvelope.createFromProtobuf(raw)
138
+ return await RecordEnvelope.createFromProtobuf(raw)
135
139
  }
136
140
 
137
141
  async get (peerId: PeerId) {
138
- peerId = PeerId.fromPeerId(peerId)
142
+ peerId = peerIdFromPeerId(peerId)
139
143
 
140
144
  log('get wait for read lock')
141
145
  const release = await this.store.lock.readLock()
@@ -158,7 +162,7 @@ export class PeerStoreAddressBook {
158
162
  }
159
163
 
160
164
  async set (peerId: PeerId, multiaddrs: Multiaddr[]) {
161
- peerId = PeerId.fromPeerId(peerId)
165
+ peerId = peerIdFromPeerId(peerId)
162
166
 
163
167
  if (!Array.isArray(multiaddrs)) {
164
168
  log.error('multiaddrs must be an array of Multiaddrs')
@@ -176,7 +180,7 @@ export class PeerStoreAddressBook {
176
180
  const addresses = await filterMultiaddrs(peerId, multiaddrs, this.addressFilter)
177
181
 
178
182
  // No valid addresses found
179
- if (!addresses.length) {
183
+ if (addresses.length === 0) {
180
184
  return
181
185
  }
182
186
 
@@ -205,16 +209,22 @@ export class PeerStoreAddressBook {
205
209
  release()
206
210
  }
207
211
 
208
- this.emit(EVENT_NAME, { peerId, multiaddrs: updatedPeer.addresses.map(addr => addr.multiaddr) })
212
+ this.dispatchEvent(new CustomEvent(EVENT_NAME, {
213
+ detail: { peerId, multiaddrs: updatedPeer.addresses.map(addr => addr.multiaddr) }
214
+ }))
209
215
 
210
216
  // Notify the existence of a new peer
211
217
  if (!hasPeer) {
212
- this.emit('peer', peerId)
218
+ this.dispatchEvent(new CustomEvent('peer', {
219
+ detail: {
220
+ peerId
221
+ }
222
+ }))
213
223
  }
214
224
  }
215
225
 
216
226
  async add (peerId: PeerId, multiaddrs: Multiaddr[]) {
217
- peerId = PeerId.fromPeerId(peerId)
227
+ peerId = peerIdFromPeerId(peerId)
218
228
 
219
229
  if (!Array.isArray(multiaddrs)) {
220
230
  log.error('multiaddrs must be an array of Multiaddrs')
@@ -232,7 +242,7 @@ export class PeerStoreAddressBook {
232
242
  const addresses = await filterMultiaddrs(peerId, multiaddrs, this.addressFilter)
233
243
 
234
244
  // No valid addresses found
235
- if (!addresses.length) {
245
+ if (addresses.length === 0) {
236
246
  return
237
247
  }
238
248
 
@@ -260,16 +270,20 @@ export class PeerStoreAddressBook {
260
270
  release()
261
271
  }
262
272
 
263
- this.emit(EVENT_NAME, { peerId, multiaddrs: updatedPeer.addresses.map(addr => addr.multiaddr) })
273
+ this.dispatchEvent(new CustomEvent(EVENT_NAME, {
274
+ detail: { peerId, multiaddrs: updatedPeer.addresses.map(addr => addr.multiaddr) }
275
+ }))
264
276
 
265
277
  // Notify the existence of a new peer
266
- if (!hasPeer) {
267
- this.emit('peer', peerId)
278
+ if (hasPeer === true) {
279
+ this.dispatchEvent(new CustomEvent('peer', {
280
+ detail: { peerId }
281
+ }))
268
282
  }
269
283
  }
270
284
 
271
285
  async delete (peerId: PeerId) {
272
- peerId = PeerId.fromPeerId(peerId)
286
+ peerId = peerIdFromPeerId(peerId)
273
287
 
274
288
  log('delete await write lock')
275
289
  const release = await this.store.lock.writeLock()
@@ -289,7 +303,9 @@ export class PeerStoreAddressBook {
289
303
  }
290
304
 
291
305
  if (has) {
292
- this.emit(EVENT_NAME, { peerId, multiaddrs: [] })
306
+ this.dispatchEvent(new CustomEvent(EVENT_NAME, {
307
+ detail: { peerId, multiaddrs: [] }
308
+ }))
293
309
  }
294
310
  }
295
311
 
@@ -300,17 +316,19 @@ export class PeerStoreAddressBook {
300
316
  addresses
301
317
  ).map((address) => {
302
318
  const multiaddr = address.multiaddr
303
-
304
319
  const idString = multiaddr.getPeerId()
305
- if (idString && idString === peerId.toString()) return multiaddr
320
+
321
+ if (idString === peerId.toString()) {
322
+ return multiaddr
323
+ }
306
324
 
307
325
  return multiaddr.encapsulate(`/p2p/${peerId.toString(base58btc)}`)
308
326
  })
309
327
  }
310
328
  }
311
329
 
312
- function filterMultiaddrs (peerId: PeerId, multiaddrs: Multiaddr[], addressFilter: AddressFilter, isCertified: boolean = false) {
313
- return pipe(
330
+ async function filterMultiaddrs (peerId: PeerId, multiaddrs: Multiaddr[], addressFilter: AddressFilter, isCertified: boolean = false) {
331
+ return await pipe(
314
332
  multiaddrs,
315
333
  (source) => each(source, (multiaddr) => {
316
334
  if (!Multiaddr.isMultiaddr(multiaddr)) {
@@ -318,13 +336,13 @@ function filterMultiaddrs (peerId: PeerId, multiaddrs: Multiaddr[], addressFilte
318
336
  throw errcode(new Error('multiaddr must be an instance of Multiaddr'), codes.ERR_INVALID_PARAMETERS)
319
337
  }
320
338
  }),
321
- (source) => filter(source, (multiaddr) => addressFilter(peerId, multiaddr)),
339
+ (source) => filter(source, async (multiaddr) => await addressFilter(peerId, multiaddr)),
322
340
  (source) => map(source, (multiaddr) => {
323
341
  return {
324
342
  multiaddr: new Multiaddr(multiaddr.toString()),
325
343
  isCertified
326
344
  }
327
345
  }),
328
- (source) => all(source)
346
+ async (source) => await all(source)
329
347
  )
330
348
  }