@libp2p/peer-store 7.0.1 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/README.md +0 -170
  2. package/dist/index.min.js +14 -14
  3. package/dist/src/errors.d.ts +0 -1
  4. package/dist/src/errors.d.ts.map +1 -1
  5. package/dist/src/errors.js +1 -2
  6. package/dist/src/errors.js.map +1 -1
  7. package/dist/src/index.d.ts +23 -25
  8. package/dist/src/index.d.ts.map +1 -1
  9. package/dist/src/index.js +86 -88
  10. package/dist/src/index.js.map +1 -1
  11. package/dist/src/pb/peer.d.ts +28 -9
  12. package/dist/src/pb/peer.d.ts.map +1 -1
  13. package/dist/src/pb/peer.js +147 -31
  14. package/dist/src/pb/peer.js.map +1 -1
  15. package/dist/src/store.d.ts +18 -28
  16. package/dist/src/store.d.ts.map +1 -1
  17. package/dist/src/store.js +77 -147
  18. package/dist/src/store.js.map +1 -1
  19. package/dist/src/utils/bytes-to-peer.d.ts +4 -0
  20. package/dist/src/utils/bytes-to-peer.d.ts.map +1 -0
  21. package/dist/src/utils/bytes-to-peer.js +33 -0
  22. package/dist/src/utils/bytes-to-peer.js.map +1 -0
  23. package/dist/src/utils/dedupe-addresses.d.ts +6 -0
  24. package/dist/src/utils/dedupe-addresses.d.ts.map +1 -0
  25. package/dist/src/utils/dedupe-addresses.js +41 -0
  26. package/dist/src/utils/dedupe-addresses.js.map +1 -0
  27. package/dist/src/utils/peer-data-to-datastore-peer.d.ts +5 -0
  28. package/dist/src/utils/peer-data-to-datastore-peer.d.ts.map +1 -0
  29. package/dist/src/utils/peer-data-to-datastore-peer.js +92 -0
  30. package/dist/src/utils/peer-data-to-datastore-peer.js.map +1 -0
  31. package/dist/src/utils/peer-id-to-datastore-key.d.ts +5 -0
  32. package/dist/src/utils/peer-id-to-datastore-key.d.ts.map +1 -0
  33. package/dist/src/utils/peer-id-to-datastore-key.js +13 -0
  34. package/dist/src/utils/peer-id-to-datastore-key.js.map +1 -0
  35. package/dist/src/utils/to-peer-pb.d.ts +10 -0
  36. package/dist/src/utils/to-peer-pb.d.ts.map +1 -0
  37. package/dist/src/utils/to-peer-pb.js +182 -0
  38. package/dist/src/utils/to-peer-pb.js.map +1 -0
  39. package/dist/typedoc-urls.json +13 -2
  40. package/package.json +8 -10
  41. package/src/errors.ts +1 -2
  42. package/src/index.ts +97 -103
  43. package/src/pb/peer.proto +10 -7
  44. package/src/pb/peer.ts +187 -37
  45. package/src/store.ts +102 -189
  46. package/src/utils/bytes-to-peer.ts +41 -0
  47. package/src/utils/dedupe-addresses.ts +51 -0
  48. package/src/utils/peer-data-to-datastore-peer.ts +116 -0
  49. package/src/utils/peer-id-to-datastore-key.ts +15 -0
  50. package/src/utils/to-peer-pb.ts +237 -0
  51. package/dist/src/address-book.d.ts +0 -29
  52. package/dist/src/address-book.d.ts.map +0 -1
  53. package/dist/src/address-book.js +0 -304
  54. package/dist/src/address-book.js.map +0 -1
  55. package/dist/src/key-book.d.ts +0 -21
  56. package/dist/src/key-book.d.ts.map +0 -1
  57. package/dist/src/key-book.js +0 -121
  58. package/dist/src/key-book.js.map +0 -1
  59. package/dist/src/metadata-book.d.ts +0 -28
  60. package/dist/src/metadata-book.d.ts.map +0 -1
  61. package/dist/src/metadata-book.js +0 -211
  62. package/dist/src/metadata-book.js.map +0 -1
  63. package/dist/src/pb/tags.d.ts +0 -21
  64. package/dist/src/pb/tags.d.ts.map +0 -1
  65. package/dist/src/pb/tags.js +0 -111
  66. package/dist/src/pb/tags.js.map +0 -1
  67. package/dist/src/proto-book.d.ts +0 -18
  68. package/dist/src/proto-book.d.ts.map +0 -1
  69. package/dist/src/proto-book.js +0 -199
  70. package/dist/src/proto-book.js.map +0 -1
  71. package/src/address-book.ts +0 -367
  72. package/src/key-book.ts +0 -140
  73. package/src/metadata-book.ts +0 -244
  74. package/src/pb/tags.proto +0 -11
  75. package/src/pb/tags.ts +0 -145
  76. package/src/proto-book.ts +0 -234
@@ -1,5 +1,4 @@
1
1
  export declare const codes: {
2
2
  ERR_INVALID_PARAMETERS: string;
3
- ERR_NOT_FOUND: string;
4
3
  };
5
4
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,KAAK;;;CAGjB,CAAA"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,KAAK;;CAEjB,CAAA"}
@@ -1,5 +1,4 @@
1
1
  export const codes = {
2
- ERR_INVALID_PARAMETERS: 'ERR_INVALID_PARAMETERS',
3
- ERR_NOT_FOUND: 'ERR_NOT_FOUND'
2
+ ERR_INVALID_PARAMETERS: 'ERR_INVALID_PARAMETERS'
4
3
  };
5
4
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,sBAAsB,EAAE,wBAAwB;IAChD,aAAa,EAAE,eAAe;CAC/B,CAAA"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,sBAAsB,EAAE,wBAAwB;CACjD,CAAA"}
@@ -1,41 +1,39 @@
1
- import { EventEmitter } from '@libp2p/interfaces/events';
2
- import type { PeerStore, AddressBook, KeyBook, MetadataBook, ProtoBook, PeerStoreEvents, PeerStoreInit, Peer, TagOptions } from '@libp2p/interface-peer-store';
1
+ import type { EventEmitter } from '@libp2p/interfaces/events';
2
+ import type { PeerStore, Peer, PeerData } from '@libp2p/interface-peer-store';
3
3
  import type { PeerId } from '@libp2p/interface-peer-id';
4
4
  import type { Datastore } from 'interface-datastore';
5
+ import type { Multiaddr } from '@multiformats/multiaddr';
6
+ import type { Libp2pEvents } from '@libp2p/interface-libp2p';
5
7
  export interface PersistentPeerStoreComponents {
6
8
  peerId: PeerId;
7
9
  datastore: Datastore;
10
+ events: EventEmitter<Libp2pEvents>;
11
+ }
12
+ /**
13
+ * Return true to allow storing the passed multiaddr for the passed peer
14
+ */
15
+ export interface AddressFilter {
16
+ (peerId: PeerId, multiaddr: Multiaddr): Promise<boolean>;
17
+ }
18
+ export interface PersistentPeerStoreInit {
19
+ addressFilter?: AddressFilter;
8
20
  }
9
21
  /**
10
22
  * An implementation of PeerStore that stores data in a Datastore
11
23
  */
12
- export declare class PersistentPeerStore extends EventEmitter<PeerStoreEvents> implements PeerStore {
13
- addressBook: AddressBook;
14
- keyBook: KeyBook;
15
- metadataBook: MetadataBook;
16
- protoBook: ProtoBook;
17
- private readonly components;
24
+ export declare class PersistentPeerStore implements PeerStore {
25
+ #private;
18
26
  private readonly store;
19
- constructor(components: PersistentPeerStoreComponents, init?: PeerStoreInit);
27
+ private readonly events;
28
+ private readonly peerId;
29
+ constructor(components: PersistentPeerStoreComponents, init?: PersistentPeerStoreInit);
20
30
  forEach(fn: (peer: Peer) => void): Promise<void>;
21
31
  all(): Promise<Peer[]>;
22
- /**
23
- * Delete the information of the given peer in every book
24
- */
25
32
  delete(peerId: PeerId): Promise<void>;
26
- /**
27
- * Get the stored information of a given peer
28
- */
29
- get(peerId: PeerId): Promise<Peer>;
30
- /**
31
- * Returns true if we have a record of the peer
32
- */
33
33
  has(peerId: PeerId): Promise<boolean>;
34
- tagPeer(peerId: PeerId, tag: string, options?: TagOptions): Promise<void>;
35
- unTagPeer(peerId: PeerId, tag: string): Promise<void>;
36
- getTags(peerId: PeerId): Promise<Array<{
37
- name: string;
38
- value: number;
39
- }>>;
34
+ get(peerId: PeerId): Promise<Peer>;
35
+ save(id: PeerId, data: PeerData): Promise<Peer>;
36
+ patch(id: PeerId, data: PeerData): Promise<Peer>;
37
+ merge(id: PeerId, data: PeerData): Promise<Peer>;
40
38
  }
41
39
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAMxD,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA;AAC9J,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAGvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAIpD,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,SAAS,CAAA;CACrB;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,YAAY,CAAC,eAAe,CAAE,YAAW,SAAS;IAClF,WAAW,EAAE,WAAW,CAAA;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,EAAE,YAAY,CAAA;IAC1B,SAAS,EAAE,SAAS,CAAA;IAE3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA+B;IAC1D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAO;gBAEhB,UAAU,EAAE,6BAA6B,EAAE,IAAI,GAAE,aAAkB;IAW1E,OAAO,CAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBjD,GAAG,IAAK,OAAO,CAAC,IAAI,EAAE,CAAC;IAU7B;;OAEG;IACG,MAAM,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa5C;;OAEG;IACG,GAAG,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAazC;;OAEG;IACG,GAAG,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAatC,OAAO,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B9E,SAAS,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD,OAAO,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAqBhF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAE7D,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAC7E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAK5D,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,YAAY,CAAC,YAAY,CAAC,CAAA;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CACzD;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,CAAC,EAAE,aAAa,CAAA;CAC9B;AAED;;GAEG;AACH,qBAAa,mBAAoB,YAAW,SAAS;;IACnD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;gBAElB,UAAU,EAAE,6BAA6B,EAAE,IAAI,GAAE,uBAA4B;IAMpF,OAAO,CAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAejD,GAAG,IAAK,OAAO,CAAC,IAAI,EAAE,CAAC;IAmBvB,MAAM,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAatC,GAAG,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAatC,GAAG,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAanC,IAAI,CAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBhD,KAAK,CAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBjD,KAAK,CAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CA4BxD"}
package/dist/src/index.js CHANGED
@@ -1,54 +1,52 @@
1
- import { logger } from '@libp2p/logger';
2
- import { EventEmitter } from '@libp2p/interfaces/events';
3
- import { PeerStoreAddressBook } from './address-book.js';
4
- import { PeerStoreKeyBook } from './key-book.js';
5
- import { PeerStoreMetadataBook } from './metadata-book.js';
6
- import { PeerStoreProtoBook } from './proto-book.js';
1
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
+ };
6
+ var _PersistentPeerStore_instances, _PersistentPeerStore_emitIfUpdated;
7
7
  import { PersistentStore } from './store.js';
8
- import { CodeError } from '@libp2p/interfaces/errors';
9
- import { Tags } from './pb/tags.js';
8
+ import { logger } from '@libp2p/logger';
10
9
  const log = logger('libp2p:peer-store');
11
10
  /**
12
11
  * An implementation of PeerStore that stores data in a Datastore
13
12
  */
14
- export class PersistentPeerStore extends EventEmitter {
13
+ export class PersistentPeerStore {
15
14
  constructor(components, init = {}) {
16
- super();
17
- this.components = components;
18
- this.store = new PersistentStore(components);
19
- this.addressBook = new PeerStoreAddressBook(this.dispatchEvent.bind(this), this.store, init.addressFilter);
20
- this.keyBook = new PeerStoreKeyBook(this.dispatchEvent.bind(this), this.store);
21
- this.metadataBook = new PeerStoreMetadataBook(this.dispatchEvent.bind(this), this.store);
22
- this.protoBook = new PeerStoreProtoBook(this.dispatchEvent.bind(this), this.store);
15
+ _PersistentPeerStore_instances.add(this);
16
+ this.events = components.events;
17
+ this.peerId = components.peerId;
18
+ this.store = new PersistentStore(components, init);
23
19
  }
24
20
  async forEach(fn) {
25
- log.trace('getPeers await read lock');
21
+ log.trace('forEach await read lock');
26
22
  const release = await this.store.lock.readLock();
27
- log.trace('getPeers got read lock');
23
+ log.trace('forEach got read lock');
28
24
  try {
29
25
  for await (const peer of this.store.all()) {
30
- if (peer.id.equals(this.components.peerId)) {
31
- // Skip self peer if present
32
- continue;
33
- }
34
26
  fn(peer);
35
27
  }
36
28
  }
37
29
  finally {
38
- log.trace('getPeers release read lock');
30
+ log.trace('forEach release read lock');
39
31
  release();
40
32
  }
41
33
  }
42
34
  async all() {
43
- const output = [];
44
- await this.forEach(peer => {
45
- output.push(peer);
46
- });
47
- return output;
35
+ log.trace('all await read lock');
36
+ const release = await this.store.lock.readLock();
37
+ log.trace('all got read lock');
38
+ try {
39
+ const output = [];
40
+ for await (const peer of this.store.all()) {
41
+ output.push(peer);
42
+ }
43
+ return output;
44
+ }
45
+ finally {
46
+ log.trace('all release read lock');
47
+ release();
48
+ }
48
49
  }
49
- /**
50
- * Delete the information of the given peer in every book
51
- */
52
50
  async delete(peerId) {
53
51
  log.trace('delete await write lock');
54
52
  const release = await this.store.lock.writeLock();
@@ -61,9 +59,18 @@ export class PersistentPeerStore extends EventEmitter {
61
59
  release();
62
60
  }
63
61
  }
64
- /**
65
- * Get the stored information of a given peer
66
- */
62
+ async has(peerId) {
63
+ log.trace('has await read lock');
64
+ const release = await this.store.lock.readLock();
65
+ log.trace('has got read lock');
66
+ try {
67
+ return await this.store.has(peerId);
68
+ }
69
+ finally {
70
+ log.trace('has release read lock');
71
+ release();
72
+ }
73
+ }
67
74
  async get(peerId) {
68
75
  log.trace('get await read lock');
69
76
  const release = await this.store.lock.readLock();
@@ -76,67 +83,58 @@ export class PersistentPeerStore extends EventEmitter {
76
83
  release();
77
84
  }
78
85
  }
79
- /**
80
- * Returns true if we have a record of the peer
81
- */
82
- async has(peerId) {
83
- log.trace('has await read lock');
84
- const release = await this.store.lock.readLock();
85
- log.trace('has got read lock');
86
+ async save(id, data) {
87
+ log.trace('save await write lock');
88
+ const release = await this.store.lock.writeLock();
89
+ log.trace('save got write lock');
86
90
  try {
87
- return await this.store.has(peerId);
91
+ const result = await this.store.save(id, data);
92
+ __classPrivateFieldGet(this, _PersistentPeerStore_instances, "m", _PersistentPeerStore_emitIfUpdated).call(this, id, result);
93
+ return result.peer;
88
94
  }
89
95
  finally {
90
- log.trace('has release read lock');
96
+ log.trace('save release write lock');
91
97
  release();
92
98
  }
93
99
  }
94
- async tagPeer(peerId, tag, options = {}) {
95
- const providedValue = options.value ?? 0;
96
- const value = Math.round(providedValue);
97
- const ttl = options.ttl ?? undefined;
98
- if (value !== providedValue || value < 0 || value > 100) {
99
- throw new CodeError('Tag value must be between 0-100', 'ERR_TAG_VALUE_OUT_OF_BOUNDS');
100
- }
101
- const buf = await this.metadataBook.getValue(peerId, 'tags');
102
- let tags = [];
103
- if (buf != null) {
104
- tags = Tags.decode(buf).tags;
105
- }
106
- // do not allow duplicate tags
107
- tags = tags.filter(t => t.name !== tag);
108
- tags.push({
109
- name: tag,
110
- value,
111
- expiry: ttl == null ? undefined : BigInt(Date.now() + ttl)
112
- });
113
- await this.metadataBook.setValue(peerId, 'tags', Tags.encode({ tags }).subarray());
114
- }
115
- async unTagPeer(peerId, tag) {
116
- const buf = await this.metadataBook.getValue(peerId, 'tags');
117
- let tags = [];
118
- if (buf != null) {
119
- tags = Tags.decode(buf).tags;
120
- }
121
- tags = tags.filter(t => t.name !== tag);
122
- await this.metadataBook.setValue(peerId, 'tags', Tags.encode({ tags }).subarray());
100
+ async patch(id, data) {
101
+ log.trace('patch await write lock');
102
+ const release = await this.store.lock.writeLock();
103
+ log.trace('patch got write lock');
104
+ try {
105
+ const result = await this.store.patch(id, data);
106
+ __classPrivateFieldGet(this, _PersistentPeerStore_instances, "m", _PersistentPeerStore_emitIfUpdated).call(this, id, result);
107
+ return result.peer;
108
+ }
109
+ finally {
110
+ log.trace('patch release write lock');
111
+ release();
112
+ }
123
113
  }
124
- async getTags(peerId) {
125
- const buf = await this.metadataBook.getValue(peerId, 'tags');
126
- let tags = [];
127
- if (buf != null) {
128
- tags = Tags.decode(buf).tags;
129
- }
130
- const now = BigInt(Date.now());
131
- const unexpiredTags = tags.filter(tag => tag.expiry == null || tag.expiry > now);
132
- if (unexpiredTags.length !== tags.length) {
133
- // remove any expired tags
134
- await this.metadataBook.setValue(peerId, 'tags', Tags.encode({ tags: unexpiredTags }).subarray());
135
- }
136
- return unexpiredTags.map(t => ({
137
- name: t.name,
138
- value: t.value ?? 0
139
- }));
114
+ async merge(id, data) {
115
+ log.trace('merge await write lock');
116
+ const release = await this.store.lock.writeLock();
117
+ log.trace('merge got write lock');
118
+ try {
119
+ const result = await this.store.merge(id, data);
120
+ __classPrivateFieldGet(this, _PersistentPeerStore_instances, "m", _PersistentPeerStore_emitIfUpdated).call(this, id, result);
121
+ return result.peer;
122
+ }
123
+ finally {
124
+ log.trace('merge release write lock');
125
+ release();
126
+ }
140
127
  }
141
128
  }
129
+ _PersistentPeerStore_instances = new WeakSet(), _PersistentPeerStore_emitIfUpdated = function _PersistentPeerStore_emitIfUpdated(id, result) {
130
+ if (!result.updated) {
131
+ return;
132
+ }
133
+ if (this.peerId.equals(id)) {
134
+ this.events.safeDispatchEvent('self:peer:update', { detail: result });
135
+ }
136
+ else {
137
+ this.events.safeDispatchEvent('peer:update', { detail: result });
138
+ }
139
+ };
142
140
  //# 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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"}
@@ -3,11 +3,30 @@ import type { Uint8ArrayList } from 'uint8arraylist';
3
3
  export interface Peer {
4
4
  addresses: Address[];
5
5
  protocols: string[];
6
- metadata: Metadata[];
7
- pubKey?: Uint8Array;
6
+ publicKey?: Uint8Array;
8
7
  peerRecordEnvelope?: Uint8Array;
8
+ metadata: Map<string, Uint8Array>;
9
+ tags: Map<string, Tag>;
9
10
  }
10
11
  export declare namespace Peer {
12
+ interface Peer$metadataEntry {
13
+ key: string;
14
+ value: Uint8Array;
15
+ }
16
+ namespace Peer$metadataEntry {
17
+ const codec: () => Codec<Peer$metadataEntry>;
18
+ const encode: (obj: Partial<Peer$metadataEntry>) => Uint8Array;
19
+ const decode: (buf: Uint8Array | Uint8ArrayList) => Peer$metadataEntry;
20
+ }
21
+ interface Peer$tagsEntry {
22
+ key: string;
23
+ value?: Tag;
24
+ }
25
+ namespace Peer$tagsEntry {
26
+ const codec: () => Codec<Peer$tagsEntry>;
27
+ const encode: (obj: Partial<Peer$tagsEntry>) => Uint8Array;
28
+ const decode: (buf: Uint8Array | Uint8ArrayList) => Peer$tagsEntry;
29
+ }
11
30
  const codec: () => Codec<Peer>;
12
31
  const encode: (obj: Partial<Peer>) => Uint8Array;
13
32
  const decode: (buf: Uint8Array | Uint8ArrayList) => Peer;
@@ -21,13 +40,13 @@ export declare namespace Address {
21
40
  const encode: (obj: Partial<Address>) => Uint8Array;
22
41
  const decode: (buf: Uint8Array | Uint8ArrayList) => Address;
23
42
  }
24
- export interface Metadata {
25
- key: string;
26
- value: Uint8Array;
43
+ export interface Tag {
44
+ value: number;
45
+ expiry?: bigint;
27
46
  }
28
- export declare namespace Metadata {
29
- const codec: () => Codec<Metadata>;
30
- const encode: (obj: Partial<Metadata>) => Uint8Array;
31
- const decode: (buf: Uint8Array | Uint8ArrayList) => Metadata;
47
+ export declare namespace Tag {
48
+ const codec: () => Codec<Tag>;
49
+ const encode: (obj: Partial<Tag>) => Uint8Array;
50
+ const decode: (buf: Uint8Array | Uint8ArrayList) => Tag;
32
51
  }
33
52
  //# sourceMappingURL=peer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"peer.d.ts","sourceRoot":"","sources":["../../../src/pb/peer.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,WAAW,IAAI;IACnB,SAAS,EAAE,OAAO,EAAE,CAAA;IACpB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,QAAQ,EAAE,QAAQ,EAAE,CAAA;IACpB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,kBAAkB,CAAC,EAAE,UAAU,CAAA;CAChC;AAED,yBAAiB,IAAI,CAAC;IAGb,MAAM,KAAK,QAAO,MAAM,IAAI,CAgFlC,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,IAAI,CAAC,KAAG,UAE3C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,IAEzD,CAAA;CACF;AAED,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,UAAU,CAAA;IACrB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,yBAAiB,OAAO,CAAC;IAGhB,MAAM,KAAK,QAAO,MAAM,OAAO,CAgDrC,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,OAAO,CAAC,KAAG,UAE9C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,OAEzD,CAAA;CACF;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,UAAU,CAAA;CAClB;AAED,yBAAiB,QAAQ,CAAC;IAGjB,MAAM,KAAK,QAAO,MAAM,QAAQ,CAiDtC,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,QAAQ,CAAC,KAAG,UAE/C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,QAEzD,CAAA;CACF"}
1
+ {"version":3,"file":"peer.d.ts","sourceRoot":"","sources":["../../../src/pb/peer.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,WAAW,IAAI;IACnB,SAAS,EAAE,OAAO,EAAE,CAAA;IACpB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,SAAS,CAAC,EAAE,UAAU,CAAA;IACtB,kBAAkB,CAAC,EAAE,UAAU,CAAA;IAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACjC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CACvB;AAED,yBAAiB,IAAI,CAAC;IACpB,UAAiB,kBAAkB;QACjC,GAAG,EAAE,MAAM,CAAA;QACX,KAAK,EAAE,UAAU,CAAA;KAClB;IAED,UAAiB,kBAAkB,CAAC;QAG3B,MAAM,KAAK,QAAO,MAAM,kBAAkB,CAiDhD,CAAA;QAEM,MAAM,MAAM,QAAS,QAAQ,kBAAkB,CAAC,KAAG,UAEzD,CAAA;QAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,kBAEzD,CAAA;KACF;IAED,UAAiB,cAAc;QAC7B,GAAG,EAAE,MAAM,CAAA;QACX,KAAK,CAAC,EAAE,GAAG,CAAA;KACZ;IAED,UAAiB,cAAc,CAAC;QAGvB,MAAM,KAAK,QAAO,MAAM,cAAc,CAgD5C,CAAA;QAEM,MAAM,MAAM,QAAS,QAAQ,cAAc,CAAC,KAAG,UAErD,CAAA;QAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,cAEzD,CAAA;KACF;IAIM,MAAM,KAAK,QAAO,MAAM,IAAI,CA+FlC,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,IAAI,CAAC,KAAG,UAE3C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,IAEzD,CAAA;CACF;AAED,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,UAAU,CAAA;IACrB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,yBAAiB,OAAO,CAAC;IAGhB,MAAM,KAAK,QAAO,MAAM,OAAO,CAgDrC,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,OAAO,CAAC,KAAG,UAE9C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,OAEzD,CAAA;CACF;AAED,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,yBAAiB,GAAG,CAAC;IAGZ,MAAM,KAAK,QAAO,MAAM,GAAG,CAgDjC,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,GAAG,CAAC,KAAG,UAE1C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,GAEzD,CAAA;CACF"}