UNPKG

libp2p

Version:

JavaScript implementation of libp2p, a modular peer to peer network stack

22 lines 838 B
import { reliableTransportsFirst, loopbackAddressLast, publicAddressesFirst, circuitRelayAddressesLast } from '@libp2p/utils'; /** * Compare function for array.sort() that moves certified addresses to the start * of the array. */ export function certifiedAddressesFirst(a, b) { if (a.isCertified && !b.isCertified) { return -1; } else if (!a.isCertified && b.isCertified) { return 1; } return 0; } export function defaultAddressSorter(addresses) { return addresses.sort((a, b) => loopbackAddressLast(a.multiaddr, b.multiaddr) || publicAddressesFirst(a.multiaddr, b.multiaddr) || circuitRelayAddressesLast(a.multiaddr, b.multiaddr) || certifiedAddressesFirst(a, b) || reliableTransportsFirst(a.multiaddr, b.multiaddr)); } //# sourceMappingURL=address-sorter.js.map