main
ts 14 lines 522 Bytes
Raw
1 import { serviceCapabilities } from '@libp2p/interface'
2
3 export function gatherCapabilities (components: any): Record<string, string[]> {
4 const capabilities: Record<string, string[]> = {}
5 const services: Record<string, any> = components.components ?? components
6
7 Object.entries(services).forEach(([name, component]) => {
8 if (component?.[serviceCapabilities] != null && Array.isArray(component[serviceCapabilities])) {
9 capabilities[name] = component[serviceCapabilities]
10 }
11 })
12
13 return capabilities
14 }