XYOracleNetwork/clients

View on GitHub
packages/modules-mongo/src/Job/getJobs.ts

Summary

Maintainability
A
0 mins
Test Coverage
import { exists } from '@xylabs/exists'
import { TYPES } from '@xyo-network/node-core-types'
import type { Job, JobProvider } from '@xyo-network/shared'
import type { Container } from 'inversify'

// TODO: This is no longer Mongo-specific and can be
// exposed in a non-DB module
export const getJobs = (container: Container): Job[] => {
  if (!container.isBound(TYPES.JobQueue)) return []
  return container
    .getAll<JobProvider>(TYPES.JobProvider)
    .flatMap(provider => provider?.jobs)
    .filter(exists)
}