XYOracleNetwork/sdk-xyo-client-js

View on GitHub
packages/sdk-utils/packages/network/src/knownNetworks.ts

Summary

Maintainability
C
1 day
Test Coverage
import { NetworkNodePayload } from './NetworkNodePayload'
import { NetworkNodePayloadWrapper } from './NetworkNodePayloadWrapper'
import { NetworkPayload, NetworkSchema } from './NetworkPayload'

const kerplunk = async (): Promise<NetworkPayload> => {
  return {
    name: 'Kerplunk',
    nodes: [
      (await NetworkNodePayloadWrapper.known('kerplunk-archivist-xyo-network'))?.payload,
      (await NetworkNodePayloadWrapper.known('beta-location-diviner-xyo-network'))?.payload,
    ].filter(Boolean) as NetworkNodePayload[],
    schema: NetworkSchema,
    slug: 'kerplunk',
  }
}

const main = async (): Promise<NetworkPayload> => {
  return {
    name: 'Main',
    nodes: [
      (await NetworkNodePayloadWrapper.known('main-archivist-xyo-network'))?.payload,
      (await NetworkNodePayloadWrapper.known('location-diviner-xyo-network'))?.payload,
    ].filter(Boolean) as NetworkNodePayload[],
    schema: NetworkSchema,
    slug: 'main',
  }
}

const local = async (): Promise<NetworkPayload> => {
  return {
    name: 'Local',
    nodes: [
      (await NetworkNodePayloadWrapper.known('kerplunk-archivist-xyo-network'))?.payload,
      (await NetworkNodePayloadWrapper.known('beta-location-diviner-xyo-network'))?.payload,
    ].filter(Boolean) as NetworkNodePayload[],
    schema: NetworkSchema,
    slug: 'local',
  }
}

export const knownNetworks = async (): Promise<NetworkPayload[]> => [await kerplunk(), await main(), await local()]