@hisptz/react-ui
Version:
A collection of reusable complex DHIS2 react ui components.
69 lines (66 loc) • 2.5 kB
JavaScript
import { useDataQuery } from "@dhis2/app-runtime";
import i18n from "@dhis2/d2-i18n";
import PropTypes from "prop-types";
import React, { useEffect } from "react";
import Error from "../../../../Shared/Componets/Error/ErrorAPIResult";
import Loader from "../../../../Shared/Componets/Loaders/Loader";
const query = {
dataElements: {
resource: "dataElements",
id: _ref => {
let {
id
} = _ref;
return id;
},
params: {
fields: ["id", "displayName", "description", "shortName", "code", "displayFormName", "href"]
}
}
};
export default function Introduction(_ref2) {
let {
id
} = _ref2;
const {
loading,
error,
data,
refetch
} = useDataQuery(query, {
variables: {
id
}
});
useEffect(() => {
refetch({
id
});
}, [id]);
if (loading) {
return /*#__PURE__*/React.createElement(Loader, null);
}
if (error) {
return /*#__PURE__*/React.createElement(Error, {
error: error
});
}
const res = data === null || data === void 0 ? void 0 : data.dataElements;
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("h2", null, res === null || res === void 0 ? void 0 : res.displayName), /*#__PURE__*/React.createElement("h3", null, " ", i18n.t("Introduction"), " "), /*#__PURE__*/React.createElement("p", null, /*#__PURE__*/React.createElement("b", null, res === null || res === void 0 ? void 0 : res.displayName), " ", i18n.t("can be described as {{variables}}.", {
variables: res === null || res === void 0 ? void 0 : res.description
}), /*#__PURE__*/React.createElement("br", null), i18n.t("It\u2019s labelled in short as {{variables1}} and has a code of {{variables2}}. In data entry form, it\u2019s named \u201C{{variables3}}\u201D", {
variables1: res === null || res === void 0 ? void 0 : res.shortName,
variables2: res === null || res === void 0 ? void 0 : res.code,
variables3: res === null || res === void 0 ? void 0 : res.displayFormName
}), /*#__PURE__*/React.createElement("br", null), i18n.t("Identified by:"), " ", /*#__PURE__*/React.createElement("i", null, " ", /*#__PURE__*/React.createElement("a", {
style: {
textDecoration: "none"
},
href: (res === null || res === void 0 ? void 0 : res.href) + ".json",
target: "_blank",
rel: "noreferrer"
}, res === null || res === void 0 ? void 0 : res.id), " ")));
}
Introduction.prototype = {
id: PropTypes.string.isRequired
};