@hisptz/react-ui
Version:
A collection of reusable complex DHIS2 react ui components.
73 lines (70 loc) • 3.46 kB
JavaScript
import React from "react";
import { useDataQuery } from "@dhis2/app-runtime";
import { DataTableRow, DataTableCell } from "@dhis2/ui";
import classes from "../calculationDetails/Components/Row/Components/DataSourceCellStyle.module.css";
const query = {
dataSets: {
resource: "dataSets",
id: _ref => {
let {
id
} = _ref;
return id;
},
params: {
fields: ["id", "displayName", "displayDescription", "timelyDays", "expiryDays", "periodType", "organisationUnits[id,displayName]", "dataSetElements[dataElement[id,displayName]]", "legendSets[id,displayName]"]
}
}
};
export default function Row(props) {
const dataSet = props.dataSet;
const id = dataSet.id;
const {
loading,
error,
data
} = useDataQuery(query, {
variables: {
id
}
});
function OtherCells(dataSet) {
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DataTableCell, {
bordered: true
}, dataSet === null || dataSet === void 0 ? void 0 : dataSet.timelyDays), /*#__PURE__*/React.createElement(DataTableCell, {
bordered: true
}, dataSet === null || dataSet === void 0 ? void 0 : dataSet.expiryDays), /*#__PURE__*/React.createElement(DataTableCell, {
bordered: true
}, dataSet === null || dataSet === void 0 ? void 0 : dataSet.periodType), /*#__PURE__*/React.createElement(DataTableCell, {
bordered: true
}, /*#__PURE__*/React.createElement("div", {
className: classes.sources
}, /*#__PURE__*/React.createElement("ol", null, dataSet === null || dataSet === void 0 ? void 0 : dataSet.organisationUnits.map(org => {
return /*#__PURE__*/React.createElement("li", {
key: org === null || org === void 0 ? void 0 : org.id
}, org === null || org === void 0 ? void 0 : org.displayName);
})))), /*#__PURE__*/React.createElement(DataTableCell, {
bordered: true
}, /*#__PURE__*/React.createElement("div", {
className: classes.sources
}, /*#__PURE__*/React.createElement("ol", null, dataSet === null || dataSet === void 0 ? void 0 : dataSet.dataSetElements.map(dt => {
var _dt$dataElement, _dt$dataElement2;
return /*#__PURE__*/React.createElement("li", {
key: dt === null || dt === void 0 ? void 0 : (_dt$dataElement = dt.dataElement) === null || _dt$dataElement === void 0 ? void 0 : _dt$dataElement.id
}, dt === null || dt === void 0 ? void 0 : (_dt$dataElement2 = dt.dataElement) === null || _dt$dataElement2 === void 0 ? void 0 : _dt$dataElement2.displayName);
})))), /*#__PURE__*/React.createElement(DataTableCell, {
bordered: true
}, /*#__PURE__*/React.createElement("div", {
className: classes.sources
}, /*#__PURE__*/React.createElement("ol", null, dataSet === null || dataSet === void 0 ? void 0 : dataSet.legendSets.map(leg => {
return /*#__PURE__*/React.createElement("li", {
key: leg.id
}, leg.displayName);
})))));
}
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DataTableRow, null, /*#__PURE__*/React.createElement(DataTableCell, {
bordered: true
}, dataSet === null || dataSet === void 0 ? void 0 : dataSet.val), /*#__PURE__*/React.createElement(DataTableCell, {
bordered: true
}, dataSet === null || dataSet === void 0 ? void 0 : dataSet.location), OtherCells(data === null || data === void 0 ? void 0 : data.dataSets)));
}