@hisptz/react-ui
Version:
A collection of reusable complex DHIS2 react ui components.
91 lines (73 loc) • 5 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = DataSource;
var _appRuntime = require("@dhis2/app-runtime");
var _d2I18n = _interopRequireDefault(require("@dhis2/d2-i18n"));
var _ui = require("@dhis2/ui");
var _react = _interopRequireDefault(require("react"));
var _ErrorAPIResult = _interopRequireDefault(require("../../../../Shared/Componets/Error/ErrorAPIResult"));
var _Loader = _interopRequireDefault(require("../../../../Shared/Componets/Loaders/Loader"));
var _FunctionDictionary = require("../../../../Utils/Functions/FunctionDictionary");
var _Shared = require("../../../../Utils/Functions/Shared");
var _FunctionDictionary2 = require("../../../../Utils/Hooks/FunctionDictionary");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function DataSource(_ref) {
var _JSON$stringify, _idDetails, _idDetails2;
let {
json
} = _ref;
const jsonToUse = (_JSON$stringify = JSON.stringify(json)) === null || _JSON$stringify === void 0 ? void 0 : _JSON$stringify.replace(/\s/g, "");
const arrayIdToUse = (0, _FunctionDictionary.getAllId)(jsonToUse);
const engine = (0, _appRuntime.useDataEngine)();
const {
loading,
error,
data
} = (0, _FunctionDictionary2.useGetIdDetails)(arrayIdToUse, engine);
if (loading) {
return /*#__PURE__*/_react.default.createElement(_Loader.default, {
text: ""
});
}
if (error) {
return /*#__PURE__*/_react.default.createElement(_ErrorAPIResult.default, {
error: error
});
}
if ((data === null || data === void 0 ? void 0 : (_idDetails = data.idDetails) === null || _idDetails === void 0 ? void 0 : _idDetails.length) === 0) {
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
}
return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("h3", null, _d2I18n.default.t("Data Sources"), " "), /*#__PURE__*/_react.default.createElement("p", null, _d2I18n.default.t("Function have rules calculating from multiple data sources. Here are few data sources observed")), /*#__PURE__*/_react.default.createElement(_ui.DataTable, null, /*#__PURE__*/_react.default.createElement(_ui.TableHead, null, /*#__PURE__*/_react.default.createElement(_ui.DataTableRow, null, /*#__PURE__*/_react.default.createElement(_ui.DataTableColumnHeader, {
bordered: true
}, _d2I18n.default.t("Id")), /*#__PURE__*/_react.default.createElement(_ui.DataTableColumnHeader, {
bordered: true
}, _d2I18n.default.t("Name")), /*#__PURE__*/_react.default.createElement(_ui.DataTableColumnHeader, null, _d2I18n.default.t("Description")), /*#__PURE__*/_react.default.createElement(_ui.DataTableColumnHeader, null, _d2I18n.default.t("Code")), /*#__PURE__*/_react.default.createElement(_ui.DataTableColumnHeader, null, _d2I18n.default.t("Type")), /*#__PURE__*/_react.default.createElement(_ui.DataTableColumnHeader, null, _d2I18n.default.t("More details")), /*#__PURE__*/_react.default.createElement(_ui.DataTableColumnHeader, null, _d2I18n.default.t("Last updated")))), /*#__PURE__*/_react.default.createElement(_ui.TableBody, null, data === null || data === void 0 ? void 0 : (_idDetails2 = data.idDetails) === null || _idDetails2 === void 0 ? void 0 : _idDetails2.map(e => {
var _e$description, _e$code;
return /*#__PURE__*/_react.default.createElement(_ui.DataTableRow, {
key: e.id
}, /*#__PURE__*/_react.default.createElement(_ui.DataTableCell, {
bordered: true
}, e === null || e === void 0 ? void 0 : e.id), /*#__PURE__*/_react.default.createElement(_ui.DataTableCell, {
bordered: true
}, e === null || e === void 0 ? void 0 : e.displayName), /*#__PURE__*/_react.default.createElement(_ui.DataTableCell, {
bordered: true
}, (_e$description = e === null || e === void 0 ? void 0 : e.description) !== null && _e$description !== void 0 ? _e$description : "No description"), /*#__PURE__*/_react.default.createElement(_ui.DataTableCell, {
bordered: true
}, (_e$code = e === null || e === void 0 ? void 0 : e.code) !== null && _e$code !== void 0 ? _e$code : "no code"), /*#__PURE__*/_react.default.createElement(_ui.DataTableCell, {
bordered: true
}, (0, _FunctionDictionary.displayType)(e === null || e === void 0 ? void 0 : e.href)), /*#__PURE__*/_react.default.createElement(_ui.DataTableCell, {
bordered: true
}, /*#__PURE__*/_react.default.createElement("i", null, " ", /*#__PURE__*/_react.default.createElement("a", {
style: {
textDecoration: "none"
},
href: (e === null || e === void 0 ? void 0 : e.href) + ".json",
target: "_blank",
rel: "noreferrer"
}, (e === null || e === void 0 ? void 0 : e.href) + ".json"), " ")), /*#__PURE__*/_react.default.createElement(_ui.DataTableCell, {
bordered: true
}, (0, _Shared.dateTimeDisplay)(e === null || e === void 0 ? void 0 : e.lastUpdated)));
}))));
}