UNPKG

@hisptz/react-ui

Version:

A collection of reusable complex DHIS2 react ui components.

33 lines (28 loc) 1.11 kB
import { compact, find, isArray, isEmpty, map } from "lodash"; import { DATA_SOURCES } from "../constants"; import CustomFunctions from "../models/customFunctions"; import DataElements from "../models/dataElements"; import DataSets from "../models/dataSets"; import NativeDataSource from "../models/nativeDataSource"; export function getDataSourcesList(dataSourcesConfig) { if (isArray(dataSourcesConfig) && !isEmpty(dataSourcesConfig)) { return compact(map(dataSourcesConfig, dataSourceType => { const dataSourceConfig = find(DATA_SOURCES, ["type", dataSourceType]); if (dataSourceConfig) { if (dataSourceConfig.native) { return new NativeDataSource(dataSourceConfig); } if (dataSourceConfig.type === "dataElement") { return new DataElements(dataSourceConfig); } if (dataSourceConfig.type === "customFunction") { return new CustomFunctions(dataSourceConfig); } if (dataSourceConfig.type === "dataSet") { return new DataSets(dataSourceConfig); } } })); } return []; }