mirror of
https://github.com/fluencelabs/js-libp2p
synced 2025-03-28 05:11:04 +00:00
fix: event emitter and interfaces types for discovery and routing (#934)
This commit is contained in:
parent
f860ffb3e7
commit
302bb90058
@ -104,11 +104,11 @@
|
|||||||
"it-pipe": "^1.1.0",
|
"it-pipe": "^1.1.0",
|
||||||
"it-take": "1.0.0",
|
"it-take": "1.0.0",
|
||||||
"libp2p-crypto": "^0.19.4",
|
"libp2p-crypto": "^0.19.4",
|
||||||
"libp2p-interfaces": "^0.10.3",
|
"libp2p-interfaces": "^0.10.4",
|
||||||
"libp2p-utils": "^0.3.1",
|
"libp2p-utils": "^0.3.1",
|
||||||
"mafmt": "^9.0.0",
|
"mafmt": "^9.0.0",
|
||||||
"merge-options": "^3.0.4",
|
"merge-options": "^3.0.4",
|
||||||
"moving-average": "^1.0.0",
|
"@vascosantos/moving-average": "^1.1.0",
|
||||||
"multiaddr": "^9.0.1",
|
"multiaddr": "^9.0.1",
|
||||||
"multicodec": "^3.0.1",
|
"multicodec": "^3.0.1",
|
||||||
"multihashing-async": "^2.1.2",
|
"multihashing-async": "^2.1.2",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
'use strict'
|
'use strict'
|
||||||
|
|
||||||
const EventEmitter = require('events')
|
const { EventEmitter } = require('events')
|
||||||
const { Multiaddr } = require('multiaddr')
|
const { Multiaddr } = require('multiaddr')
|
||||||
const PeerId = require('peer-id')
|
const PeerId = require('peer-id')
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ const LatencyMonitor = require('./latency-monitor')
|
|||||||
// @ts-ignore retimer does not have types
|
// @ts-ignore retimer does not have types
|
||||||
const retimer = require('retimer')
|
const retimer = require('retimer')
|
||||||
|
|
||||||
const EventEmitter = require('events')
|
const { EventEmitter } = require('events')
|
||||||
|
|
||||||
const PeerId = require('peer-id')
|
const PeerId = require('peer-id')
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
* This code is based on `latency-monitor` (https://github.com/mlucool/latency-monitor) by `mlucool` (https://github.com/mlucool), available under Apache License 2.0 (https://github.com/mlucool/latency-monitor/blob/master/LICENSE)
|
* This code is based on `latency-monitor` (https://github.com/mlucool/latency-monitor) by `mlucool` (https://github.com/mlucool), available under Apache License 2.0 (https://github.com/mlucool/latency-monitor/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const EventEmitter = require('events')
|
const { EventEmitter } = require('events')
|
||||||
const VisibilityChangeEmitter = require('./visibility-change-emitter')
|
const VisibilityChangeEmitter = require('./visibility-change-emitter')
|
||||||
const debug = require('debug')('latency-monitor:LatencyMonitor')
|
const debug = require('debug')('latency-monitor:LatencyMonitor')
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
*/
|
*/
|
||||||
'use strict'
|
'use strict'
|
||||||
|
|
||||||
const EventEmitter = require('events')
|
const { EventEmitter } = require('events')
|
||||||
|
|
||||||
const debug = require('debug')('latency-monitor:VisibilityChangeEmitter')
|
const debug = require('debug')('latency-monitor:VisibilityChangeEmitter')
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ const { pipe } = require('it-pipe')
|
|||||||
* @typedef {import('peer-id')} PeerId
|
* @typedef {import('peer-id')} PeerId
|
||||||
* @typedef {import('multiaddr').Multiaddr} Multiaddr
|
* @typedef {import('multiaddr').Multiaddr} Multiaddr
|
||||||
* @typedef {import('cids')} CID
|
* @typedef {import('cids')} CID
|
||||||
* @typedef {import('libp2p-interfaces/src/content-routing/types')} ContentRoutingModule
|
* @typedef {import('libp2p-interfaces/src/content-routing/types').ContentRouting} ContentRoutingModule
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
12
src/index.js
12
src/index.js
@ -4,7 +4,7 @@ const debug = require('debug')
|
|||||||
const log = Object.assign(debug('libp2p'), {
|
const log = Object.assign(debug('libp2p'), {
|
||||||
error: debug('libp2p:err')
|
error: debug('libp2p:err')
|
||||||
})
|
})
|
||||||
const EventEmitter = require('events')
|
const { EventEmitter } = require('events')
|
||||||
|
|
||||||
const errCode = require('err-code')
|
const errCode = require('err-code')
|
||||||
const PeerId = require('peer-id')
|
const PeerId = require('peer-id')
|
||||||
@ -40,9 +40,9 @@ const { updateSelfPeerRecord } = require('./record/utils')
|
|||||||
* @typedef {import('libp2p-interfaces/src/stream-muxer/types').MuxedStream} MuxedStream
|
* @typedef {import('libp2p-interfaces/src/stream-muxer/types').MuxedStream} MuxedStream
|
||||||
* @typedef {import('libp2p-interfaces/src/transport/types').TransportFactory<any, any>} TransportFactory
|
* @typedef {import('libp2p-interfaces/src/transport/types').TransportFactory<any, any>} TransportFactory
|
||||||
* @typedef {import('libp2p-interfaces/src/stream-muxer/types').MuxerFactory} MuxerFactory
|
* @typedef {import('libp2p-interfaces/src/stream-muxer/types').MuxerFactory} MuxerFactory
|
||||||
* @typedef {import('libp2p-interfaces/src/content-routing/types')} ContentRoutingModule
|
* @typedef {import('libp2p-interfaces/src/content-routing/types').ContentRouting} ContentRoutingModule
|
||||||
* @typedef {import('libp2p-interfaces/src/peer-discovery/types')} PeerDiscoveryModule
|
* @typedef {import('libp2p-interfaces/src/peer-discovery/types').PeerDiscoveryFactory} PeerDiscoveryFactory
|
||||||
* @typedef {import('libp2p-interfaces/src/peer-routing/types')} PeerRoutingModule
|
* @typedef {import('libp2p-interfaces/src/peer-routing/types').PeerRouting} PeerRoutingModule
|
||||||
* @typedef {import('libp2p-interfaces/src/crypto/types').Crypto} Crypto
|
* @typedef {import('libp2p-interfaces/src/crypto/types').Crypto} Crypto
|
||||||
* @typedef {import('libp2p-interfaces/src/pubsub')} Pubsub
|
* @typedef {import('libp2p-interfaces/src/pubsub')} Pubsub
|
||||||
* @typedef {import('libp2p-interfaces/src/pubsub').PubsubOptions} PubsubOptions
|
* @typedef {import('libp2p-interfaces/src/pubsub').PubsubOptions} PubsubOptions
|
||||||
@ -100,7 +100,7 @@ const { updateSelfPeerRecord } = require('./record/utils')
|
|||||||
* @property {TransportFactory[]} transport
|
* @property {TransportFactory[]} transport
|
||||||
* @property {MuxerFactory[]} streamMuxer
|
* @property {MuxerFactory[]} streamMuxer
|
||||||
* @property {Crypto[]} connEncryption
|
* @property {Crypto[]} connEncryption
|
||||||
* @property {PeerDiscoveryModule[]} [peerDiscovery]
|
* @property {PeerDiscoveryFactory[]} [peerDiscovery]
|
||||||
* @property {PeerRoutingModule[]} [peerRouting]
|
* @property {PeerRoutingModule[]} [peerRouting]
|
||||||
* @property {ContentRoutingModule[]} [contentRouting]
|
* @property {ContentRoutingModule[]} [contentRouting]
|
||||||
* @property {Object} [dht]
|
* @property {Object} [dht]
|
||||||
@ -714,7 +714,7 @@ class Libp2p extends EventEmitter {
|
|||||||
*/
|
*/
|
||||||
async _setupPeerDiscovery () {
|
async _setupPeerDiscovery () {
|
||||||
/**
|
/**
|
||||||
* @param {PeerDiscoveryModule} DiscoveryService
|
* @param {PeerDiscoveryFactory} DiscoveryService
|
||||||
*/
|
*/
|
||||||
const setupService = (DiscoveryService) => {
|
const setupService = (DiscoveryService) => {
|
||||||
let config = {
|
let config = {
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
// @ts-nocheck
|
// @ts-nocheck
|
||||||
'use strict'
|
'use strict'
|
||||||
|
|
||||||
const EventEmitter = require('events')
|
const { EventEmitter } = require('events')
|
||||||
const { BigNumber: Big } = require('bignumber.js')
|
const { BigNumber: Big } = require('bignumber.js')
|
||||||
const MovingAverage = require('moving-average')
|
const MovingAverage = require('@vascosantos/moving-average')
|
||||||
const retimer = require('retimer')
|
const retimer = require('retimer')
|
||||||
|
|
||||||
class Stats extends EventEmitter {
|
class Stats extends EventEmitter {
|
||||||
|
@ -25,7 +25,7 @@ const {
|
|||||||
/**
|
/**
|
||||||
* @typedef {import('peer-id')} PeerId
|
* @typedef {import('peer-id')} PeerId
|
||||||
* @typedef {import('multiaddr').Multiaddr} Multiaddr
|
* @typedef {import('multiaddr').Multiaddr} Multiaddr
|
||||||
* @typedef {import('libp2p-interfaces/src/peer-routing/types')} PeerRoutingModule
|
* @typedef {import('libp2p-interfaces/src/peer-routing/types').PeerRouting} PeerRoutingModule
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const errcode = require('err-code')
|
const errcode = require('err-code')
|
||||||
|
|
||||||
const EventEmitter = require('events')
|
const { EventEmitter } = require('events')
|
||||||
const PeerId = require('peer-id')
|
const PeerId = require('peer-id')
|
||||||
|
|
||||||
const AddressBook = require('./address-book')
|
const AddressBook = require('./address-book')
|
||||||
|
@ -137,7 +137,12 @@ class Upgrader {
|
|||||||
* @returns {Promise<Connection>}
|
* @returns {Promise<Connection>}
|
||||||
*/
|
*/
|
||||||
async upgradeOutbound (maConn) {
|
async upgradeOutbound (maConn) {
|
||||||
const remotePeerId = PeerId.createFromB58String(maConn.remoteAddr.getPeerId())
|
const idStr = maConn.remoteAddr.getPeerId()
|
||||||
|
if (!idStr) {
|
||||||
|
throw errCode(new Error('outbound connection must have a peer id'), codes.ERR_INVALID_MULTIADDR)
|
||||||
|
}
|
||||||
|
|
||||||
|
const remotePeerId = PeerId.createFromB58String(idStr)
|
||||||
|
|
||||||
let encryptedConn
|
let encryptedConn
|
||||||
let remotePeer
|
let remotePeer
|
||||||
|
Loading…
x
Reference in New Issue
Block a user