@libp2p/kad-dht 13.1.2 → 14.0.0-d4da56961

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. package/dist/index.min.js +2 -2
  2. package/dist/src/index.d.ts +28 -6
  3. package/dist/src/index.d.ts.map +1 -1
  4. package/dist/src/index.js.map +1 -1
  5. package/dist/src/kad-dht.d.ts.map +1 -1
  6. package/dist/src/kad-dht.js +25 -11
  7. package/dist/src/kad-dht.js.map +1 -1
  8. package/dist/src/network.d.ts +1 -1
  9. package/dist/src/network.d.ts.map +1 -1
  10. package/dist/src/network.js +1 -3
  11. package/dist/src/network.js.map +1 -1
  12. package/dist/src/peer-distance-list.d.ts.map +1 -0
  13. package/dist/src/{peer-list/peer-distance-list.js → peer-distance-list.js} +1 -1
  14. package/dist/src/peer-distance-list.js.map +1 -0
  15. package/dist/src/peer-routing/index.js +1 -1
  16. package/dist/src/peer-routing/index.js.map +1 -1
  17. package/dist/src/query-self.d.ts.map +1 -1
  18. package/dist/src/query-self.js +13 -6
  19. package/dist/src/query-self.js.map +1 -1
  20. package/dist/src/routing-table/closest-peers.d.ts +43 -0
  21. package/dist/src/routing-table/closest-peers.d.ts.map +1 -0
  22. package/dist/src/routing-table/closest-peers.js +86 -0
  23. package/dist/src/routing-table/closest-peers.js.map +1 -0
  24. package/dist/src/routing-table/index.d.ts +55 -32
  25. package/dist/src/routing-table/index.d.ts.map +1 -1
  26. package/dist/src/routing-table/index.js +259 -161
  27. package/dist/src/routing-table/index.js.map +1 -1
  28. package/dist/src/routing-table/k-bucket.d.ts +65 -21
  29. package/dist/src/routing-table/k-bucket.d.ts.map +1 -1
  30. package/dist/src/routing-table/k-bucket.js +122 -66
  31. package/dist/src/routing-table/k-bucket.js.map +1 -1
  32. package/dist/src/routing-table/refresh.d.ts.map +1 -1
  33. package/dist/src/routing-table/refresh.js +4 -1
  34. package/dist/src/routing-table/refresh.js.map +1 -1
  35. package/dist/src/rpc/index.d.ts.map +1 -1
  36. package/dist/src/rpc/index.js +3 -7
  37. package/dist/src/rpc/index.js.map +1 -1
  38. package/package.json +11 -12
  39. package/src/index.ts +32 -6
  40. package/src/kad-dht.ts +29 -13
  41. package/src/network.ts +1 -4
  42. package/src/{peer-list/peer-distance-list.ts → peer-distance-list.ts} +1 -1
  43. package/src/peer-routing/index.ts +1 -1
  44. package/src/query-self.ts +14 -6
  45. package/src/routing-table/closest-peers.ts +113 -0
  46. package/src/routing-table/index.ts +300 -194
  47. package/src/routing-table/k-bucket.ts +194 -81
  48. package/src/routing-table/refresh.ts +5 -1
  49. package/src/rpc/index.ts +4 -7
  50. package/dist/src/peer-list/index.d.ts +0 -29
  51. package/dist/src/peer-list/index.d.ts.map +0 -1
  52. package/dist/src/peer-list/index.js +0 -45
  53. package/dist/src/peer-list/index.js.map +0 -1
  54. package/dist/src/peer-list/peer-distance-list.d.ts.map +0 -1
  55. package/dist/src/peer-list/peer-distance-list.js.map +0 -1
  56. package/dist/typedoc-urls.json +0 -56
  57. package/src/peer-list/index.ts +0 -54
  58. /package/dist/src/{peer-list/peer-distance-list.d.ts → peer-distance-list.d.ts} +0 -0
@@ -1,54 +0,0 @@
1
- import type { PeerId } from '@libp2p/interface'
2
-
3
- /**
4
- * A list of unique peers.
5
- */
6
- export class PeerList {
7
- private readonly list: PeerId[]
8
-
9
- constructor () {
10
- this.list = []
11
- }
12
-
13
- /**
14
- * Add a new peer. Returns `true` if it was a new one
15
- */
16
- push (peerId: PeerId): boolean {
17
- if (!this.has(peerId)) {
18
- this.list.push(peerId)
19
-
20
- return true
21
- }
22
-
23
- return false
24
- }
25
-
26
- /**
27
- * Check if this PeerInfo is already in here
28
- */
29
- has (peerId: PeerId): boolean {
30
- const match = this.list.find((i) => i.equals(peerId))
31
- return Boolean(match)
32
- }
33
-
34
- /**
35
- * Get the list as an array
36
- */
37
- toArray (): PeerId[] {
38
- return this.list.slice()
39
- }
40
-
41
- /**
42
- * Remove the last element
43
- */
44
- pop (): PeerId | undefined {
45
- return this.list.pop()
46
- }
47
-
48
- /**
49
- * The length of the list
50
- */
51
- get length (): number {
52
- return this.list.length
53
- }
54
- }