mirror of
https://github.com/fluencelabs/js-libp2p
synced 2025-05-01 05:22:14 +00:00
chore: use any-signal module
This commit is contained in:
parent
7c2fefda46
commit
b7432bd02b
@ -43,6 +43,7 @@
|
||||
"dependencies": {
|
||||
"abort-controller": "^3.0.0",
|
||||
"aggregate-error": "^3.0.1",
|
||||
"any-signal": "^1.0.0",
|
||||
"async": "^2.6.2",
|
||||
"async-iterator-all": "^1.0.0",
|
||||
"bignumber.js": "^9.0.0",
|
||||
|
@ -4,11 +4,11 @@ const multiaddr = require('multiaddr')
|
||||
const errCode = require('err-code')
|
||||
const AbortController = require('abort-controller')
|
||||
const delay = require('delay')
|
||||
const anySignal = require('any-signal')
|
||||
const debug = require('debug')
|
||||
const log = debug('libp2p:dialer')
|
||||
log.error = debug('libp2p:dialer:error')
|
||||
const { DialRequest } = require('./dialer/dial-request')
|
||||
const { anySignal } = require('./util')
|
||||
|
||||
const { codes } = require('./errors')
|
||||
const {
|
||||
|
@ -3,12 +3,12 @@
|
||||
const AbortController = require('abort-controller')
|
||||
const AggregateError = require('aggregate-error')
|
||||
const pDefer = require('p-defer')
|
||||
const anySignal = require('any-signal')
|
||||
const debug = require('debug')
|
||||
const log = debug('libp2p:dialer:request')
|
||||
log.error = debug('libp2p:dialer:request:error')
|
||||
const { AbortError } = require('libp2p-interfaces/src/transport/errors')
|
||||
|
||||
const { anySignal } = require('../util')
|
||||
const { TokenHolder } = require('./token-holder')
|
||||
|
||||
class DialRequest {
|
||||
|
@ -15,34 +15,4 @@ function toBuffer (source) {
|
||||
})()
|
||||
}
|
||||
|
||||
/**
|
||||
* Takes an array of AbortSignals and returns a single signal.
|
||||
* If any signals are aborted, the returned signal will be aborted.
|
||||
* @param {Array<AbortSignal>} signals
|
||||
* @returns {AbortSignal}
|
||||
*/
|
||||
function anySignal (signals) {
|
||||
const controller = new AbortController()
|
||||
|
||||
function onAbort () {
|
||||
controller.abort()
|
||||
|
||||
// Cleanup
|
||||
for (const signal of signals) {
|
||||
signal.removeEventListener('abort', onAbort)
|
||||
}
|
||||
}
|
||||
|
||||
for (const signal of signals) {
|
||||
if (signal.aborted) {
|
||||
onAbort()
|
||||
break
|
||||
}
|
||||
signal.addEventListener('abort', onAbort)
|
||||
}
|
||||
|
||||
return controller.signal
|
||||
}
|
||||
|
||||
module.exports.toBuffer = toBuffer
|
||||
module.exports.anySignal = anySignal
|
||||
|
Loading…
x
Reference in New Issue
Block a user