2022-06-23 15:37:30 +10:00
|
|
|
import { Multiaddr } from "@multiformats/multiaddr";
|
2022-06-23 15:51:15 +10:00
|
|
|
import { convertToString } from "@multiformats/multiaddr/convert";
|
2022-06-23 15:37:30 +10:00
|
|
|
|
|
|
|
|
export function mulitaddrFromFields(
|
2022-06-23 15:51:15 +10:00
|
|
|
ipFamily: string,
|
2022-06-23 15:37:30 +10:00
|
|
|
protocol: string,
|
|
|
|
|
ipBytes: Uint8Array,
|
2022-06-23 15:51:15 +10:00
|
|
|
protocolBytes: Uint8Array
|
2022-06-23 15:37:30 +10:00
|
|
|
): Multiaddr {
|
2022-06-23 15:51:15 +10:00
|
|
|
let ma = new Multiaddr(
|
|
|
|
|
"/" + ipFamily + "/" + convertToString(ipFamily, ipBytes)
|
|
|
|
|
);
|
2022-06-23 15:37:30 +10:00
|
|
|
|
2022-06-23 15:51:15 +10:00
|
|
|
ma = ma.encapsulate(
|
|
|
|
|
new Multiaddr(
|
|
|
|
|
"/" + protocol + "/" + convertToString(protocol, protocolBytes)
|
|
|
|
|
)
|
|
|
|
|
);
|
2022-06-23 15:37:30 +10:00
|
|
|
|
|
|
|
|
return ma;
|
|
|
|
|
}
|