libp2p 0.44.0 → 0.45.0-08d4c261

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 (238) hide show
  1. package/dist/index.min.js +32 -32
  2. package/dist/src/address-manager/index.d.ts +9 -5
  3. package/dist/src/address-manager/index.d.ts.map +1 -1
  4. package/dist/src/address-manager/index.js +44 -7
  5. package/dist/src/address-manager/index.js.map +1 -1
  6. package/dist/src/address-manager/utils.d.ts +2 -0
  7. package/dist/src/address-manager/utils.d.ts.map +1 -0
  8. package/dist/src/address-manager/utils.js +12 -0
  9. package/dist/src/address-manager/utils.js.map +1 -0
  10. package/dist/src/autonat/constants.d.ts +16 -2
  11. package/dist/src/autonat/constants.d.ts.map +1 -1
  12. package/dist/src/autonat/constants.js +16 -2
  13. package/dist/src/autonat/constants.js.map +1 -1
  14. package/dist/src/autonat/index.d.ts +12 -33
  15. package/dist/src/autonat/index.d.ts.map +1 -1
  16. package/dist/src/autonat/index.js +48 -33
  17. package/dist/src/autonat/index.js.map +1 -1
  18. package/dist/src/circuit-relay/index.d.ts +1 -1
  19. package/dist/src/circuit-relay/index.d.ts.map +1 -1
  20. package/dist/src/circuit-relay/server/advert-service.d.ts +2 -2
  21. package/dist/src/circuit-relay/server/advert-service.d.ts.map +1 -1
  22. package/dist/src/circuit-relay/server/advert-service.js +8 -4
  23. package/dist/src/circuit-relay/server/advert-service.js.map +1 -1
  24. package/dist/src/circuit-relay/server/index.d.ts +8 -8
  25. package/dist/src/circuit-relay/server/index.d.ts.map +1 -1
  26. package/dist/src/circuit-relay/server/index.js +32 -12
  27. package/dist/src/circuit-relay/server/index.js.map +1 -1
  28. package/dist/src/circuit-relay/server/reservation-store.d.ts +5 -5
  29. package/dist/src/circuit-relay/server/reservation-store.d.ts.map +1 -1
  30. package/dist/src/circuit-relay/server/reservation-store.js +10 -3
  31. package/dist/src/circuit-relay/server/reservation-store.js.map +1 -1
  32. package/dist/src/circuit-relay/server/reservation-voucher.d.ts.map +1 -1
  33. package/dist/src/circuit-relay/server/reservation-voucher.js +5 -2
  34. package/dist/src/circuit-relay/server/reservation-voucher.js.map +1 -1
  35. package/dist/src/circuit-relay/transport/discovery.d.ts +4 -4
  36. package/dist/src/circuit-relay/transport/discovery.d.ts.map +1 -1
  37. package/dist/src/circuit-relay/transport/discovery.js +13 -5
  38. package/dist/src/circuit-relay/transport/discovery.js.map +1 -1
  39. package/dist/src/circuit-relay/transport/index.d.ts +10 -8
  40. package/dist/src/circuit-relay/transport/index.d.ts.map +1 -1
  41. package/dist/src/circuit-relay/transport/index.js +26 -18
  42. package/dist/src/circuit-relay/transport/index.js.map +1 -1
  43. package/dist/src/circuit-relay/transport/listener.d.ts +1 -1
  44. package/dist/src/circuit-relay/transport/listener.d.ts.map +1 -1
  45. package/dist/src/circuit-relay/transport/listener.js +43 -43
  46. package/dist/src/circuit-relay/transport/listener.js.map +1 -1
  47. package/dist/src/circuit-relay/transport/reservation-store.d.ts +8 -7
  48. package/dist/src/circuit-relay/transport/reservation-store.d.ts.map +1 -1
  49. package/dist/src/circuit-relay/transport/reservation-store.js +65 -52
  50. package/dist/src/circuit-relay/transport/reservation-store.js.map +1 -1
  51. package/dist/src/circuit-relay/utils.d.ts.map +1 -1
  52. package/dist/src/circuit-relay/utils.js +3 -3
  53. package/dist/src/circuit-relay/utils.js.map +1 -1
  54. package/dist/src/components.d.ts +10 -67
  55. package/dist/src/components.d.ts.map +1 -1
  56. package/dist/src/components.js +61 -165
  57. package/dist/src/components.js.map +1 -1
  58. package/dist/src/config/connection-gater.browser.d.ts +8 -0
  59. package/dist/src/config/connection-gater.browser.d.ts.map +1 -0
  60. package/dist/src/config/connection-gater.browser.js +27 -0
  61. package/dist/src/config/connection-gater.browser.js.map +1 -0
  62. package/dist/src/config/connection-gater.d.ts +6 -0
  63. package/dist/src/config/connection-gater.d.ts.map +1 -0
  64. package/dist/src/config/connection-gater.js +18 -0
  65. package/dist/src/config/connection-gater.js.map +1 -0
  66. package/dist/src/config.d.ts +2 -1
  67. package/dist/src/config.d.ts.map +1 -1
  68. package/dist/src/config.js +4 -66
  69. package/dist/src/config.js.map +1 -1
  70. package/dist/src/connection/index.d.ts +3 -3
  71. package/dist/src/connection/index.d.ts.map +1 -1
  72. package/dist/src/connection/index.js +38 -8
  73. package/dist/src/connection/index.js.map +1 -1
  74. package/dist/src/connection-manager/auto-dial.d.ts +4 -1
  75. package/dist/src/connection-manager/auto-dial.d.ts.map +1 -1
  76. package/dist/src/connection-manager/auto-dial.js +44 -13
  77. package/dist/src/connection-manager/auto-dial.js.map +1 -1
  78. package/dist/src/connection-manager/connection-pruner.d.ts +4 -0
  79. package/dist/src/connection-manager/connection-pruner.d.ts.map +1 -1
  80. package/dist/src/connection-manager/connection-pruner.js +28 -8
  81. package/dist/src/connection-manager/connection-pruner.js.map +1 -1
  82. package/dist/src/connection-manager/dial-queue.d.ts +7 -6
  83. package/dist/src/connection-manager/dial-queue.d.ts.map +1 -1
  84. package/dist/src/connection-manager/dial-queue.js +59 -23
  85. package/dist/src/connection-manager/dial-queue.js.map +1 -1
  86. package/dist/src/connection-manager/index.d.ts +16 -15
  87. package/dist/src/connection-manager/index.d.ts.map +1 -1
  88. package/dist/src/connection-manager/index.js +44 -41
  89. package/dist/src/connection-manager/index.js.map +1 -1
  90. package/dist/src/connection-manager/utils.d.ts +2 -3
  91. package/dist/src/connection-manager/utils.d.ts.map +1 -1
  92. package/dist/src/connection-manager/utils.js +3 -3
  93. package/dist/src/connection-manager/utils.js.map +1 -1
  94. package/dist/src/content-routing/index.d.ts +2 -12
  95. package/dist/src/content-routing/index.d.ts.map +1 -1
  96. package/dist/src/content-routing/index.js +12 -44
  97. package/dist/src/content-routing/index.js.map +1 -1
  98. package/dist/src/content-routing/utils.d.ts +1 -1
  99. package/dist/src/content-routing/utils.d.ts.map +1 -1
  100. package/dist/src/content-routing/utils.js +3 -1
  101. package/dist/src/content-routing/utils.js.map +1 -1
  102. package/dist/src/fetch/index.d.ts +15 -37
  103. package/dist/src/fetch/index.d.ts.map +1 -1
  104. package/dist/src/fetch/index.js +19 -16
  105. package/dist/src/fetch/index.js.map +1 -1
  106. package/dist/src/get-peer.d.ts +1 -1
  107. package/dist/src/get-peer.d.ts.map +1 -1
  108. package/dist/src/get-peer.js +3 -3
  109. package/dist/src/get-peer.js.map +1 -1
  110. package/dist/src/identify/identify.d.ts +53 -0
  111. package/dist/src/identify/identify.d.ts.map +1 -0
  112. package/dist/src/identify/identify.js +417 -0
  113. package/dist/src/identify/identify.js.map +1 -0
  114. package/dist/src/identify/index.d.ts +14 -59
  115. package/dist/src/identify/index.d.ts.map +1 -1
  116. package/dist/src/identify/index.js +5 -388
  117. package/dist/src/identify/index.js.map +1 -1
  118. package/dist/src/index.d.ts +28 -79
  119. package/dist/src/index.d.ts.map +1 -1
  120. package/dist/src/index.js +2 -1
  121. package/dist/src/index.js.map +1 -1
  122. package/dist/src/insecure/index.js +6 -8
  123. package/dist/src/insecure/index.js.map +1 -1
  124. package/dist/src/libp2p.d.ts +16 -47
  125. package/dist/src/libp2p.d.ts.map +1 -1
  126. package/dist/src/libp2p.js +141 -201
  127. package/dist/src/libp2p.js.map +1 -1
  128. package/dist/src/peer-routing.d.ts +3 -40
  129. package/dist/src/peer-routing.d.ts.map +1 -1
  130. package/dist/src/peer-routing.js +8 -65
  131. package/dist/src/peer-routing.js.map +1 -1
  132. package/dist/src/ping/constants.d.ts +4 -0
  133. package/dist/src/ping/constants.d.ts.map +1 -1
  134. package/dist/src/ping/constants.js +10 -0
  135. package/dist/src/ping/constants.js.map +1 -1
  136. package/dist/src/ping/index.d.ts +11 -28
  137. package/dist/src/ping/index.d.ts.map +1 -1
  138. package/dist/src/ping/index.js +31 -28
  139. package/dist/src/ping/index.js.map +1 -1
  140. package/dist/src/pnet/crypto.js +3 -3
  141. package/dist/src/pnet/crypto.js.map +1 -1
  142. package/dist/src/pnet/index.d.ts.map +1 -1
  143. package/dist/src/pnet/index.js +9 -6
  144. package/dist/src/pnet/index.js.map +1 -1
  145. package/dist/src/pnet/key-generator.js +1 -1
  146. package/dist/src/pnet/key-generator.js.map +1 -1
  147. package/dist/src/pubsub/dummy-pubsub.d.ts.map +1 -1
  148. package/dist/src/pubsub/dummy-pubsub.js +2 -5
  149. package/dist/src/pubsub/dummy-pubsub.js.map +1 -1
  150. package/dist/src/registrar.d.ts +6 -4
  151. package/dist/src/registrar.d.ts.map +1 -1
  152. package/dist/src/registrar.js +33 -28
  153. package/dist/src/registrar.js.map +1 -1
  154. package/dist/src/transport-manager.d.ts +14 -7
  155. package/dist/src/transport-manager.d.ts.map +1 -1
  156. package/dist/src/transport-manager.js +27 -13
  157. package/dist/src/transport-manager.js.map +1 -1
  158. package/dist/src/upgrader.d.ts +20 -15
  159. package/dist/src/upgrader.d.ts.map +1 -1
  160. package/dist/src/upgrader.js +49 -53
  161. package/dist/src/upgrader.js.map +1 -1
  162. package/dist/src/{nat-manager.d.ts → upnp-nat/index.d.ts} +12 -15
  163. package/dist/src/upnp-nat/index.d.ts.map +1 -0
  164. package/dist/src/{nat-manager.js → upnp-nat/index.js} +23 -10
  165. package/dist/src/upnp-nat/index.js.map +1 -0
  166. package/dist/src/version.d.ts +1 -1
  167. package/dist/src/version.d.ts.map +1 -1
  168. package/dist/src/version.js +1 -1
  169. package/dist/src/version.js.map +1 -1
  170. package/package.json +62 -47
  171. package/src/address-manager/index.ts +52 -10
  172. package/src/address-manager/utils.ts +14 -0
  173. package/src/autonat/constants.ts +17 -2
  174. package/src/autonat/index.ts +65 -57
  175. package/src/circuit-relay/index.ts +1 -1
  176. package/src/circuit-relay/server/advert-service.ts +5 -5
  177. package/src/circuit-relay/server/index.ts +28 -20
  178. package/src/circuit-relay/server/reservation-store.ts +5 -5
  179. package/src/circuit-relay/server/reservation-voucher.ts +1 -1
  180. package/src/circuit-relay/transport/discovery.ts +12 -10
  181. package/src/circuit-relay/transport/index.ts +26 -26
  182. package/src/circuit-relay/transport/listener.ts +43 -33
  183. package/src/circuit-relay/transport/reservation-store.ts +42 -28
  184. package/src/circuit-relay/utils.ts +6 -6
  185. package/src/components.ts +75 -238
  186. package/src/config/connection-gater.browser.ts +31 -0
  187. package/src/config/connection-gater.ts +19 -0
  188. package/src/config.ts +9 -70
  189. package/src/connection/index.ts +6 -10
  190. package/src/connection-manager/auto-dial.ts +46 -17
  191. package/src/connection-manager/connection-pruner.ts +30 -10
  192. package/src/connection-manager/dial-queue.ts +56 -35
  193. package/src/connection-manager/index.ts +45 -57
  194. package/src/connection-manager/utils.ts +4 -5
  195. package/src/content-routing/index.ts +11 -59
  196. package/src/content-routing/utils.ts +4 -2
  197. package/src/fetch/index.ts +63 -26
  198. package/src/get-peer.ts +4 -4
  199. package/src/identify/identify.ts +519 -0
  200. package/src/identify/index.ts +19 -509
  201. package/src/index.ts +25 -88
  202. package/src/insecure/index.ts +10 -10
  203. package/src/libp2p.ts +158 -279
  204. package/src/peer-routing.ts +10 -110
  205. package/src/ping/constants.ts +11 -0
  206. package/src/ping/index.ts +43 -39
  207. package/src/pnet/crypto.ts +3 -3
  208. package/src/pnet/index.ts +6 -6
  209. package/src/pnet/key-generator.ts +1 -1
  210. package/src/pubsub/dummy-pubsub.ts +2 -2
  211. package/src/registrar.ts +34 -31
  212. package/src/transport-manager.ts +33 -19
  213. package/src/upgrader.ts +75 -71
  214. package/src/{nat-manager.ts → upnp-nat/index.ts} +23 -24
  215. package/src/version.ts +1 -1
  216. package/dist/src/dht/dht-content-routing.d.ts +0 -17
  217. package/dist/src/dht/dht-content-routing.d.ts.map +0 -1
  218. package/dist/src/dht/dht-content-routing.js +0 -32
  219. package/dist/src/dht/dht-content-routing.js.map +0 -1
  220. package/dist/src/dht/dht-peer-routing.d.ts +0 -15
  221. package/dist/src/dht/dht-peer-routing.d.ts.map +0 -1
  222. package/dist/src/dht/dht-peer-routing.js +0 -26
  223. package/dist/src/dht/dht-peer-routing.js.map +0 -1
  224. package/dist/src/dht/dummy-dht.d.ts +0 -20
  225. package/dist/src/dht/dummy-dht.d.ts.map +0 -1
  226. package/dist/src/dht/dummy-dht.js +0 -46
  227. package/dist/src/dht/dummy-dht.js.map +0 -1
  228. package/dist/src/nat-manager.d.ts.map +0 -1
  229. package/dist/src/nat-manager.js.map +0 -1
  230. package/dist/src/peer-record-updater.d.ts +0 -24
  231. package/dist/src/peer-record-updater.d.ts.map +0 -1
  232. package/dist/src/peer-record-updater.js +0 -44
  233. package/dist/src/peer-record-updater.js.map +0 -1
  234. package/dist/typedoc-urls.json +0 -41
  235. package/src/dht/dht-content-routing.ts +0 -44
  236. package/src/dht/dht-peer-routing.ts +0 -36
  237. package/src/dht/dummy-dht.ts +0 -60
  238. package/src/peer-record-updater.ts +0 -65
@@ -1,189 +1,85 @@
1
1
  import { CodeError } from '@libp2p/interfaces/errors';
2
2
  import { isStartable } from '@libp2p/interfaces/startable';
3
- export class DefaultComponents {
3
+ class DefaultComponents {
4
+ components = {};
5
+ _started = false;
4
6
  constructor(init = {}) {
5
- this._started = false;
6
- this._peerId = init.peerId;
7
- this._addressManager = init.addressManager;
8
- this._peerStore = init.peerStore;
9
- this._upgrader = init.upgrader;
10
- this._metrics = init.metrics;
11
- this._registrar = init.registrar;
12
- this._connectionManager = init.connectionManager;
13
- this._transportManager = init.transportManager;
14
- this._connectionGater = init.connectionGater;
15
- this._contentRouting = init.contentRouting;
16
- this._peerRouting = init.peerRouting;
17
- this._datastore = init.datastore;
18
- this._connectionProtector = init.connectionProtector;
19
- this._dht = init.dht;
20
- this._pubsub = init.pubsub;
7
+ this.components = {};
8
+ for (const [key, value] of Object.entries(init)) {
9
+ this.components[key] = value;
10
+ }
21
11
  }
22
12
  isStarted() {
23
13
  return this._started;
24
14
  }
25
- async beforeStart() {
26
- await Promise.all(Object.values(this).filter(obj => isStartable(obj)).map(async (startable) => {
27
- if (startable.beforeStart != null) {
28
- await startable.beforeStart();
29
- }
15
+ async _invokeStartableMethod(methodName) {
16
+ await Promise.all(Object.values(this.components)
17
+ .filter(obj => isStartable(obj))
18
+ .map(async (startable) => {
19
+ await startable[methodName]?.();
30
20
  }));
31
21
  }
22
+ async beforeStart() {
23
+ await this._invokeStartableMethod('beforeStart');
24
+ }
32
25
  async start() {
33
- await Promise.all(Object.values(this).filter(obj => isStartable(obj)).map(async (startable) => {
34
- await startable.start();
35
- }));
26
+ await this._invokeStartableMethod('start');
36
27
  this._started = true;
37
28
  }
38
29
  async afterStart() {
39
- await Promise.all(Object.values(this).filter(obj => isStartable(obj)).map(async (startable) => {
40
- if (startable.afterStart != null) {
41
- await startable.afterStart();
42
- }
43
- }));
30
+ await this._invokeStartableMethod('afterStart');
44
31
  }
45
32
  async beforeStop() {
46
- await Promise.all(Object.values(this).filter(obj => isStartable(obj)).map(async (startable) => {
47
- if (startable.beforeStop != null) {
48
- await startable.beforeStop();
49
- }
50
- }));
33
+ await this._invokeStartableMethod('beforeStop');
51
34
  }
52
35
  async stop() {
53
- await Promise.all(Object.values(this).filter(obj => isStartable(obj)).map(async (startable) => {
54
- await startable.stop();
55
- }));
36
+ await this._invokeStartableMethod('stop');
56
37
  this._started = false;
57
38
  }
58
39
  async afterStop() {
59
- await Promise.all(Object.values(this).filter(obj => isStartable(obj)).map(async (startable) => {
60
- if (startable.afterStop != null) {
61
- await startable.afterStop();
62
- }
63
- }));
64
- }
65
- get peerId() {
66
- if (this._peerId == null) {
67
- throw new CodeError('peerId not set', 'ERR_SERVICE_MISSING');
68
- }
69
- return this._peerId;
70
- }
71
- set peerId(peerId) {
72
- this._peerId = peerId;
73
- }
74
- get addressManager() {
75
- if (this._addressManager == null) {
76
- throw new CodeError('addressManager not set', 'ERR_SERVICE_MISSING');
77
- }
78
- return this._addressManager;
79
- }
80
- set addressManager(addressManager) {
81
- this._addressManager = addressManager;
82
- }
83
- get peerStore() {
84
- if (this._peerStore == null) {
85
- throw new CodeError('peerStore not set', 'ERR_SERVICE_MISSING');
86
- }
87
- return this._peerStore;
88
- }
89
- set peerStore(peerStore) {
90
- this._peerStore = peerStore;
91
- }
92
- get upgrader() {
93
- if (this._upgrader == null) {
94
- throw new CodeError('upgrader not set', 'ERR_SERVICE_MISSING');
95
- }
96
- return this._upgrader;
97
- }
98
- set upgrader(upgrader) {
99
- this._upgrader = upgrader;
100
- }
101
- get registrar() {
102
- if (this._registrar == null) {
103
- throw new CodeError('registrar not set', 'ERR_SERVICE_MISSING');
104
- }
105
- return this._registrar;
106
- }
107
- set registrar(registrar) {
108
- this._registrar = registrar;
40
+ await this._invokeStartableMethod('afterStop');
109
41
  }
110
- get connectionManager() {
111
- if (this._connectionManager == null) {
112
- throw new CodeError('connectionManager not set', 'ERR_SERVICE_MISSING');
113
- }
114
- return this._connectionManager;
115
- }
116
- set connectionManager(connectionManager) {
117
- this._connectionManager = connectionManager;
118
- }
119
- get transportManager() {
120
- if (this._transportManager == null) {
121
- throw new CodeError('transportManager not set', 'ERR_SERVICE_MISSING');
122
- }
123
- return this._transportManager;
124
- }
125
- set transportManager(transportManager) {
126
- this._transportManager = transportManager;
127
- }
128
- get connectionGater() {
129
- if (this._connectionGater == null) {
130
- throw new CodeError('connectionGater not set', 'ERR_SERVICE_MISSING');
131
- }
132
- return this._connectionGater;
133
- }
134
- set connectionGater(connectionGater) {
135
- this._connectionGater = connectionGater;
136
- }
137
- get contentRouting() {
138
- if (this._contentRouting == null) {
139
- throw new CodeError('contentRouting not set', 'ERR_SERVICE_MISSING');
140
- }
141
- return this._contentRouting;
142
- }
143
- set contentRouting(contentRouting) {
144
- this._contentRouting = contentRouting;
145
- }
146
- get peerRouting() {
147
- if (this._peerRouting == null) {
148
- throw new CodeError('peerRouting not set', 'ERR_SERVICE_MISSING');
149
- }
150
- return this._peerRouting;
151
- }
152
- set peerRouting(peerRouting) {
153
- this._peerRouting = peerRouting;
154
- }
155
- get datastore() {
156
- if (this._datastore == null) {
157
- throw new CodeError('datastore not set', 'ERR_SERVICE_MISSING');
42
+ }
43
+ const OPTIONAL_SERVICES = [
44
+ 'metrics',
45
+ 'connectionProtector'
46
+ ];
47
+ const NON_SERVICE_PROPERTIES = [
48
+ 'components',
49
+ 'isStarted',
50
+ 'beforeStart',
51
+ 'start',
52
+ 'afterStart',
53
+ 'beforeStop',
54
+ 'stop',
55
+ 'afterStop',
56
+ 'then',
57
+ '_invokeStartableMethod'
58
+ ];
59
+ export function defaultComponents(init = {}) {
60
+ const components = new DefaultComponents(init);
61
+ const proxy = new Proxy(components, {
62
+ get(target, prop, receiver) {
63
+ if (typeof prop === 'string' && !NON_SERVICE_PROPERTIES.includes(prop)) {
64
+ const service = components.components[prop];
65
+ if (service == null && !OPTIONAL_SERVICES.includes(prop)) {
66
+ throw new CodeError(`${prop} not set`, 'ERR_SERVICE_MISSING');
67
+ }
68
+ return service;
69
+ }
70
+ return Reflect.get(target, prop, receiver);
71
+ },
72
+ set(target, prop, value) {
73
+ if (typeof prop === 'string') {
74
+ components.components[prop] = value;
75
+ }
76
+ else {
77
+ Reflect.set(target, prop, value);
78
+ }
79
+ return true;
158
80
  }
159
- return this._datastore;
160
- }
161
- set datastore(datastore) {
162
- this._datastore = datastore;
163
- }
164
- get connectionProtector() {
165
- return this._connectionProtector;
166
- }
167
- set connectionProtector(connectionProtector) {
168
- this._connectionProtector = connectionProtector;
169
- }
170
- get metrics() {
171
- return this._metrics;
172
- }
173
- set metrics(metrics) {
174
- this._metrics = metrics;
175
- }
176
- get dht() {
177
- return this._dht;
178
- }
179
- set dht(dht) {
180
- this._dht = dht;
181
- }
182
- get pubsub() {
183
- return this._pubsub;
184
- }
185
- set pubsub(pubsub) {
186
- this._pubsub = pubsub;
187
- }
81
+ });
82
+ // @ts-expect-error component keys are proxied
83
+ return proxy;
188
84
  }
189
85
  //# sourceMappingURL=components.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/components.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/components.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { ConnectionGater } from '@libp2p/interface-connection-gater';
2
+ /**
3
+ * Returns a connection gater that disallows dialling private addresses by
4
+ * default. Browsers are severely limited in their resource usage so don't
5
+ * waste time trying to dial undiallable addresses.
6
+ */
7
+ export declare function connectionGater(gater?: ConnectionGater): ConnectionGater;
8
+ //# sourceMappingURL=connection-gater.browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-gater.browser.d.ts","sourceRoot":"","sources":["../../../src/config/connection-gater.browser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAGzE;;;;GAIG;AACH,wBAAgB,eAAe,CAAE,KAAK,GAAE,eAAoB,GAAG,eAAe,CAqB7E"}
@@ -0,0 +1,27 @@
1
+ import isPrivate from 'private-ip';
2
+ /**
3
+ * Returns a connection gater that disallows dialling private addresses by
4
+ * default. Browsers are severely limited in their resource usage so don't
5
+ * waste time trying to dial undiallable addresses.
6
+ */
7
+ export function connectionGater(gater = {}) {
8
+ return {
9
+ denyDialPeer: async () => false,
10
+ denyDialMultiaddr: async (multiaddr) => {
11
+ const tuples = multiaddr.stringTuples();
12
+ if (tuples[0][0] === 4 || tuples[0][0] === 41) {
13
+ return Boolean(isPrivate(`${tuples[0][1]}`));
14
+ }
15
+ return false;
16
+ },
17
+ denyInboundConnection: async () => false,
18
+ denyOutboundConnection: async () => false,
19
+ denyInboundEncryptedConnection: async () => false,
20
+ denyOutboundEncryptedConnection: async () => false,
21
+ denyInboundUpgradedConnection: async () => false,
22
+ denyOutboundUpgradedConnection: async () => false,
23
+ filterMultiaddrForPeer: async () => true,
24
+ ...gater
25
+ };
26
+ }
27
+ //# sourceMappingURL=connection-gater.browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-gater.browser.js","sourceRoot":"","sources":["../../../src/config/connection-gater.browser.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAA;AAIlC;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAE,QAAyB,EAAE;IAC1D,OAAO;QACL,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QAC/B,iBAAiB,EAAE,KAAK,EAAE,SAAoB,EAAE,EAAE;YAChD,MAAM,MAAM,GAAG,SAAS,CAAC,YAAY,EAAE,CAAA;YAEvC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC7C,OAAO,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;aAC7C;YAED,OAAO,KAAK,CAAA;QACd,CAAC;QACD,qBAAqB,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QACxC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QACzC,8BAA8B,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QACjD,+BAA+B,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QAClD,6BAA6B,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QAChD,8BAA8B,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QACjD,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;QACxC,GAAG,KAAK;KACT,CAAA;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { ConnectionGater } from '@libp2p/interface-connection-gater';
2
+ /**
3
+ * Returns a default connection gater implementation that allows everything
4
+ */
5
+ export declare function connectionGater(gater?: ConnectionGater): ConnectionGater;
6
+ //# sourceMappingURL=connection-gater.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-gater.d.ts","sourceRoot":"","sources":["../../../src/config/connection-gater.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAEzE;;GAEG;AACH,wBAAgB,eAAe,CAAE,KAAK,GAAE,eAAoB,GAAG,eAAe,CAa7E"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Returns a default connection gater implementation that allows everything
3
+ */
4
+ export function connectionGater(gater = {}) {
5
+ return {
6
+ denyDialPeer: async () => false,
7
+ denyDialMultiaddr: async () => false,
8
+ denyInboundConnection: async () => false,
9
+ denyOutboundConnection: async () => false,
10
+ denyInboundEncryptedConnection: async () => false,
11
+ denyOutboundEncryptedConnection: async () => false,
12
+ denyInboundUpgradedConnection: async () => false,
13
+ denyOutboundUpgradedConnection: async () => false,
14
+ filterMultiaddrForPeer: async () => true,
15
+ ...gater
16
+ };
17
+ }
18
+ //# sourceMappingURL=connection-gater.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-gater.js","sourceRoot":"","sources":["../../../src/config/connection-gater.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,eAAe,CAAE,QAAyB,EAAE;IAC1D,OAAO;QACL,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QAC/B,iBAAiB,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QACpC,qBAAqB,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QACxC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QACzC,8BAA8B,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QACjD,+BAA+B,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QAClD,6BAA6B,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QAChD,8BAA8B,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QACjD,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;QACxC,GAAG,KAAK;KACT,CAAA;AACH,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { Libp2pInit } from './index.js';
2
+ import type { ServiceMap } from '@libp2p/interface-libp2p';
2
3
  import type { RecursivePartial } from '@libp2p/interfaces';
3
- export declare function validateConfig(opts: RecursivePartial<Libp2pInit>): Libp2pInit;
4
+ export declare function validateConfig<T extends ServiceMap = Record<string, unknown>>(opts: RecursivePartial<Libp2pInit<T>>): Libp2pInit<T>;
4
5
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAG5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAwE1D,wBAAgB,cAAc,CAAE,IAAI,EAAE,gBAAgB,CAAC,UAAU,CAAC,GAAG,UAAU,CAyB9E"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAqB1D,wBAAgB,cAAc,CAAE,CAAC,SAAS,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAG,IAAI,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAgBrI"}
@@ -1,11 +1,9 @@
1
- import mergeOptions from 'merge-options';
2
- import { dnsaddrResolver } from '@multiformats/multiaddr/resolvers';
3
- import { AGENT_VERSION } from './identify/consts.js';
4
- import { publicAddressesFirst } from '@libp2p/utils/address-sort';
5
1
  import { FaultTolerance } from '@libp2p/interface-transport';
6
- import { codes, messages } from './errors.js';
7
2
  import { CodeError } from '@libp2p/interfaces/errors';
8
- import { isNode, isBrowser, isWebWorker, isElectronMain, isElectronRenderer, isReactNative } from 'wherearewe';
3
+ import { publicAddressesFirst } from '@libp2p/utils/address-sort';
4
+ import { dnsaddrResolver } from '@multiformats/multiaddr/resolvers';
5
+ import mergeOptions from 'merge-options';
6
+ import { codes, messages } from './errors.js';
9
7
  const DefaultConfig = {
10
8
  addresses: {
11
9
  listen: [],
@@ -21,57 +19,6 @@ const DefaultConfig = {
21
19
  },
22
20
  transportManager: {
23
21
  faultTolerance: FaultTolerance.FATAL_ALL
24
- },
25
- peerRouting: {
26
- refreshManager: {
27
- enabled: true,
28
- interval: 6e5,
29
- bootDelay: 10e3
30
- }
31
- },
32
- nat: {
33
- enabled: true,
34
- ttl: 7200,
35
- keepAlive: true
36
- },
37
- identify: {
38
- protocolPrefix: 'ipfs',
39
- host: {
40
- agentVersion: AGENT_VERSION
41
- },
42
- // https://github.com/libp2p/go-libp2p/blob/8d2e54e1637041d5cf4fac1e531287560bd1f4ac/p2p/protocol/identify/id.go#L48
43
- timeout: 60000,
44
- maxInboundStreams: 1,
45
- maxOutboundStreams: 1,
46
- maxPushIncomingStreams: 1,
47
- maxPushOutgoingStreams: 1,
48
- maxObservedAddresses: 10
49
- },
50
- ping: {
51
- protocolPrefix: 'ipfs',
52
- // See https://github.com/libp2p/specs/blob/d4b5fb0152a6bb86cfd9ea/ping/ping.md?plain=1#L38-L43
53
- // The dialing peer MUST NOT keep more than one outbound stream for the ping protocol per peer.
54
- // The listening peer SHOULD accept at most two streams per peer since cross-stream behavior is
55
- // non-linear and stream writes occur asynchronously. The listening peer may perceive the
56
- // dialing peer closing and opening the wrong streams (for instance, closing stream B and
57
- // opening stream A even though the dialing peer is opening stream B and closing stream A).
58
- maxInboundStreams: 2,
59
- maxOutboundStreams: 1,
60
- timeout: 10000
61
- },
62
- fetch: {
63
- protocolPrefix: 'libp2p',
64
- maxInboundStreams: 1,
65
- maxOutboundStreams: 1,
66
- timeout: 10000
67
- },
68
- autonat: {
69
- protocolPrefix: 'libp2p',
70
- maxInboundStreams: 1,
71
- maxOutboundStreams: 1,
72
- timeout: 30000,
73
- startupDelay: 5000,
74
- refreshInterval: 60000
75
22
  }
76
23
  };
77
24
  export function validateConfig(opts) {
@@ -85,15 +32,6 @@ export function validateConfig(opts) {
85
32
  if (resultingOptions.connectionProtector === null && globalThis.process?.env?.LIBP2P_FORCE_PNET != null) { // eslint-disable-line no-undef
86
33
  throw new CodeError(messages.ERR_PROTECTOR_REQUIRED, codes.ERR_PROTECTOR_REQUIRED);
87
34
  }
88
- // Append user agent version to default AGENT_VERSION depending on the environment
89
- if (resultingOptions.identify.host.agentVersion === AGENT_VERSION) {
90
- if (isNode || isElectronMain) {
91
- resultingOptions.identify.host.agentVersion += ` UserAgent=${globalThis.process.version}`;
92
- }
93
- else if (isBrowser || isWebWorker || isElectronRenderer || isReactNative) {
94
- resultingOptions.identify.host.agentVersion += ` UserAgent=${globalThis.navigator.userAgent}`;
95
- }
96
- }
97
35
  return resultingOptions;
98
36
  }
99
37
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAM7C,MAAM,aAAa,GAAwB;IACzC,SAAS,EAAE;QACT,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,EAAE;QACd,cAAc,EAAE,CAAC,UAAuB,EAAE,EAAE,CAAC,UAAU;KACxD;IACD,iBAAiB,EAAE;QACjB,SAAS,EAAE;YACT,OAAO,EAAE,eAAe;SACzB;QACD,aAAa,EAAE,oBAAoB;KACpC;IACD,gBAAgB,EAAE;QAChB,cAAc,EAAE,cAAc,CAAC,SAAS;KACzC;CACF,CAAA;AAED,MAAM,UAAU,cAAc,CAAmD,IAAqC;IACpH,MAAM,gBAAgB,GAAkB,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;IAEzE,IAAI,gBAAgB,CAAC,UAAU,IAAI,IAAI,IAAI,gBAAgB,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;QACjF,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,uBAAuB,EAAE,KAAK,CAAC,uBAAuB,CAAC,CAAA;KACrF;IAED,IAAI,gBAAgB,CAAC,oBAAoB,IAAI,IAAI,IAAI,gBAAgB,CAAC,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE;QACvG,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAA;KACvF;IAED,IAAI,gBAAgB,CAAC,mBAAmB,KAAK,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,iBAAiB,IAAI,IAAI,EAAE,EAAE,+BAA+B;QACxI,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,KAAK,CAAC,sBAAsB,CAAC,CAAA;KACnF;IAED,OAAO,gBAAgB,CAAA;AACzB,CAAC"}
@@ -1,8 +1,8 @@
1
- import type { Multiaddr } from '@multiformats/multiaddr';
2
1
  import { symbol } from '@libp2p/interface-connection';
3
2
  import type { Connection, ConnectionStat, Stream } from '@libp2p/interface-connection';
4
3
  import type { PeerId } from '@libp2p/interface-peer-id';
5
4
  import type { AbortOptions } from '@libp2p/interfaces';
5
+ import type { Multiaddr } from '@multiformats/multiaddr';
6
6
  interface ConnectionInit {
7
7
  remoteAddr: Multiaddr;
8
8
  remotePeer: PeerId;
@@ -55,8 +55,8 @@ export declare class ConnectionImpl implements Connection {
55
55
  * Any libp2p transport should use an upgrader to return this connection.
56
56
  */
57
57
  constructor(init: ConnectionInit);
58
- get [Symbol.toStringTag](): 'Connection';
59
- get [symbol](): true;
58
+ readonly [Symbol.toStringTag] = "Connection";
59
+ readonly [symbol] = true;
60
60
  /**
61
61
  * Get all the streams of the muxer
62
62
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/connection/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAGxD,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AACtF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAEvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAItD,UAAU,cAAc;IACtB,UAAU,EAAE,SAAS,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3E,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1B,UAAU,EAAE,MAAM,MAAM,EAAE,CAAA;IAC1B,IAAI,EAAE,cAAc,CAAA;CACrB;AAED;;;GAGG;AACH,qBAAa,cAAe,YAAW,UAAU;IAC/C;;OAEG;IACH,SAAgB,EAAE,EAAE,MAAM,CAAA;IAE1B;;OAEG;IACH,SAAgB,UAAU,EAAE,SAAS,CAAA;IAErC;;OAEG;IACH,SAAgB,UAAU,EAAE,MAAM,CAAA;IAElC;;OAEG;IACH,SAAgB,IAAI,EAAE,cAAc,CAAA;IAEpC;;;OAGG;IACI,IAAI,EAAE,MAAM,EAAE,CAAA;IAErB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkE;IAE7F;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAE5C;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgB;IAE5C,OAAO,CAAC,QAAQ,CAAS;IAEzB;;;OAGG;gBACU,IAAI,EAAE,cAAc;IAiBjC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAK,YAAY,CAExC;IAED,IAAI,CAAC,MAAM,CAAC,IAAK,IAAI,CAEpB;IAED;;OAEG;IACH,IAAI,OAAO,IAAK,MAAM,EAAE,CAEvB;IAED;;OAEG;IACG,SAAS,CAAE,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBvF;;OAEG;IACH,SAAS,CAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIhC;;OAEG;IACH,YAAY,CAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAI/B;;OAEG;IACG,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;CAsB9B;AAED,wBAAgB,gBAAgB,CAAE,IAAI,EAAE,cAAc,GAAG,UAAU,CAElE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/connection/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AAIrD,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AACtF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAIxD,UAAU,cAAc;IACtB,UAAU,EAAE,SAAS,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3E,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1B,UAAU,EAAE,MAAM,MAAM,EAAE,CAAA;IAC1B,IAAI,EAAE,cAAc,CAAA;CACrB;AAED;;;GAGG;AACH,qBAAa,cAAe,YAAW,UAAU;IAC/C;;OAEG;IACH,SAAgB,EAAE,EAAE,MAAM,CAAA;IAE1B;;OAEG;IACH,SAAgB,UAAU,EAAE,SAAS,CAAA;IAErC;;OAEG;IACH,SAAgB,UAAU,EAAE,MAAM,CAAA;IAElC;;OAEG;IACH,SAAgB,IAAI,EAAE,cAAc,CAAA;IAEpC;;;OAGG;IACI,IAAI,EAAE,MAAM,EAAE,CAAA;IAErB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkE;IAE7F;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAE5C;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgB;IAE5C,OAAO,CAAC,QAAQ,CAAS;IAEzB;;;OAGG;gBACU,IAAI,EAAE,cAAc;IAiBjC,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAe;IAE5C,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAO;IAExB;;OAEG;IACH,IAAI,OAAO,IAAK,MAAM,EAAE,CAEvB;IAED;;OAEG;IACG,SAAS,CAAE,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBvF;;OAEG;IACH,SAAS,CAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIhC;;OAEG;IACH,YAAY,CAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAI/B;;OAEG;IACG,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;CAsB9B;AAED,wBAAgB,gBAAgB,CAAE,IAAI,EAAE,cAAc,GAAG,UAAU,CAElE"}
@@ -1,6 +1,6 @@
1
- import { CodeError } from '@libp2p/interfaces/errors';
2
- import { OPEN, CLOSING, CLOSED } from '@libp2p/interface-connection/status';
3
1
  import { symbol } from '@libp2p/interface-connection';
2
+ import { OPEN, CLOSING, CLOSED } from '@libp2p/interface-connection/status';
3
+ import { CodeError } from '@libp2p/interfaces/errors';
4
4
  import { logger } from '@libp2p/logger';
5
5
  const log = logger('libp2p:connection');
6
6
  /**
@@ -8,6 +8,40 @@ const log = logger('libp2p:connection');
8
8
  * Any libp2p transport should use an upgrader to return this connection.
9
9
  */
10
10
  export class ConnectionImpl {
11
+ /**
12
+ * Connection identifier.
13
+ */
14
+ id;
15
+ /**
16
+ * Observed multiaddr of the remote peer
17
+ */
18
+ remoteAddr;
19
+ /**
20
+ * Remote peer id
21
+ */
22
+ remotePeer;
23
+ /**
24
+ * Connection metadata
25
+ */
26
+ stat;
27
+ /**
28
+ * User provided tags
29
+ *
30
+ */
31
+ tags;
32
+ /**
33
+ * Reference to the new stream function of the multiplexer
34
+ */
35
+ _newStream;
36
+ /**
37
+ * Reference to the close function of the raw connection
38
+ */
39
+ _close;
40
+ /**
41
+ * Reference to the getStreams function of the muxer
42
+ */
43
+ _getStreams;
44
+ _closing;
11
45
  /**
12
46
  * An implementation of the js-libp2p connection.
13
47
  * Any libp2p transport should use an upgrader to return this connection.
@@ -27,12 +61,8 @@ export class ConnectionImpl {
27
61
  this.tags = [];
28
62
  this._closing = false;
29
63
  }
30
- get [Symbol.toStringTag]() {
31
- return 'Connection';
32
- }
33
- get [symbol]() {
34
- return true;
35
- }
64
+ [Symbol.toStringTag] = 'Connection';
65
+ [symbol] = true;
36
66
  /**
37
67
  * Get all the streams of the muxer
38
68
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connection/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connection/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
- import type { PeerStore } from '@libp2p/interface-peer-store';
2
1
  import type { ConnectionManager } from '@libp2p/interface-connection-manager';
2
+ import type { Libp2pEvents } from '@libp2p/interface-libp2p';
3
+ import type { PeerStore } from '@libp2p/interface-peer-store';
4
+ import type { EventEmitter } from '@libp2p/interfaces/events';
3
5
  import type { Startable } from '@libp2p/interfaces/startable';
4
6
  interface AutoDialInit {
5
7
  minConnections?: number;
@@ -10,6 +12,7 @@ interface AutoDialInit {
10
12
  interface AutoDialComponents {
11
13
  connectionManager: ConnectionManager;
12
14
  peerStore: PeerStore;
15
+ events: EventEmitter<Libp2pEvents>;
13
16
  }
14
17
  export declare class AutoDial implements Startable {
15
18
  private readonly connectionManager;
@@ -1 +1 @@
1
- {"version":3,"file":"auto-dial.d.ts","sourceRoot":"","sources":["../../../src/connection-manager/auto-dial.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAI7E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAI7D,UAAU,YAAY;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,UAAU,kBAAkB;IAC1B,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,SAAS,EAAE,SAAS,CAAA;CACrB;AASD,qBAAa,QAAS,YAAW,SAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAQ;IAC3C,OAAO,CAAC,gBAAgB,CAAC,CAAgC;IACzD,OAAO,CAAC,OAAO,CAAS;IAExB;;;;OAIG;gBACU,UAAU,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY;IAe/D,SAAS,IAAK,OAAO;IAIrB,KAAK,IAAK,IAAI;IAUd,UAAU,IAAK,IAAI;IAOnB,IAAI,IAAK,IAAI;IAOP,QAAQ,IAAK,OAAO,CAAC,IAAI,CAAC;CAmFjC"}
1
+ {"version":3,"file":"auto-dial.d.ts","sourceRoot":"","sources":["../../../src/connection-manager/auto-dial.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAI7D,UAAU,YAAY;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,UAAU,kBAAkB;IAC1B,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,YAAY,CAAC,YAAY,CAAC,CAAA;CACnC;AASD,qBAAa,QAAS,YAAW,SAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAQ;IAC3C,OAAO,CAAC,gBAAgB,CAAC,CAAgC;IACzD,OAAO,CAAC,OAAO,CAAS;IAExB;;;;OAIG;gBACU,UAAU,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY;IAuB/D,SAAS,IAAK,OAAO;IAIrB,KAAK,IAAK,IAAI;IAUd,UAAU,IAAK,IAAI;IAOnB,IAAI,IAAK,IAAI;IAOP,QAAQ,IAAK,OAAO,CAAC,IAAI,CAAC;CAqGjC"}