ze-react-component-library
Version:
ZeroETP React Component Library
76 lines (61 loc) • 2.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _zeroetpApiSdk = require("zeroetp-api-sdk");
var _StatisticForValue = _interopRequireDefault(require("../StatisticForValue"));
var _hooks = require("@umijs/hooks");
var _request = require("../../request");
require("./index.less");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var TableSummary = function TableSummary(_a) {
var _b, _c, _d, _e, _f, _g;
var logicform = _a.logicform,
schema = _a.schema;
var measurements = [];
if (schema) {
if ((_d = (_c = (_b = schema.modality) === null || _b === void 0 ? void 0 : _b.list) === null || _c === void 0 ? void 0 : _c.config) === null || _d === void 0 ? void 0 : _d.summary) {
measurements = (_g = (_f = (_e = schema.modality) === null || _e === void 0 ? void 0 : _e.list) === null || _f === void 0 ? void 0 : _f.config) === null || _g === void 0 ? void 0 : _g.summary;
} else {
measurements = schema.properties.filter(function (p) {
return p.primal_type === "number" && p.is_additive !== false;
}).map(function (p) {
return {
operator: "$sum",
pred: p.name
};
});
}
}
var data = (0, _hooks.useRequest)(function () {
if (!schema || !logicform) return Promise.resolve(null);
if (schema.type !== "event") return Promise.resolve(null);
if (!(0, _zeroetpApiSdk.isSimpleQuery)(logicform)) return Promise.resolve(null);
return (0, _request.requestLogicform)({
query: logicform.query,
schema: schema._id,
preds: measurements
});
}, {
refreshDeps: [schema]
}).data;
if (!data) {
return null;
}
return /*#__PURE__*/_react.default.createElement("div", {
className: "ze-table-summary ze-value-items"
}, data.columnProperties.map(function (property, i) {
return /*#__PURE__*/_react.default.createElement("div", {
key: property.name,
className: "ze-value-item " + (i === 0 ? "ze-value-item-highlight" : "")
}, /*#__PURE__*/_react.default.createElement(_StatisticForValue.default, {
property: property,
title: property.name,
value: data.result[0][property.name]
}));
}));
};
var _default = TableSummary;
exports.default = _default;