opendash
Version:
open.DASH data visualization framework
45 lines • 2.36 kB
JavaScript
import * as React from "react";
import { useDataItemValue } from "..";
export var DataItemValueDisplay = React.memo(function (_a) {
var item = _a.item, dimension = _a.dimension, _b = _a.booleanSize, booleanSize = _b === void 0 ? 10 : _b;
var _c, _d, _e, _f, _g, _h, _j, _k, _l;
var value = useDataItemValue(item);
if (!value) {
console.warn("DataItemValueDisplay: Value not found '" + ((_c = item) === null || _c === void 0 ? void 0 : _c.id) + "'");
return null;
}
if (!((_e = (_d = item) === null || _d === void 0 ? void 0 : _d.valueTypes) === null || _e === void 0 ? void 0 : _e[dimension])) {
console.warn("DataItemValueDisplay: Item Value Dimension not found '" + ((_f = item) === null || _f === void 0 ? void 0 : _f.id) + "' '" + dimension + "'");
return null;
}
if (((_h = (_g = value) === null || _g === void 0 ? void 0 : _g.value) === null || _h === void 0 ? void 0 : _h[dimension]) === null ||
((_k = (_j = value) === null || _j === void 0 ? void 0 : _j.value) === null || _k === void 0 ? void 0 : _k[dimension]) === undefined) {
console.warn("DataItemValueDisplay: Value Dimension not found '" + ((_l = item) === null || _l === void 0 ? void 0 : _l.id) + "' '" + dimension + "'");
return null;
}
if (item.valueTypes[dimension].type === "String") {
return (React.createElement("span", null,
value.value[dimension],
" ",
item.valueTypes[dimension].unit));
}
if (item.valueTypes[dimension].type === "Number") {
return (React.createElement("span", null,
value.value[dimension],
" ",
item.valueTypes[dimension].unit));
}
if (item.valueTypes[dimension].type === "Boolean") {
return (React.createElement("span", { style: {
display: "inline-block",
width: booleanSize,
height: booleanSize,
borderRadius: booleanSize,
border: "1px solid #0063AC",
background: value.value[dimension] ? "#0063AC" : "transparent",
} }));
}
console.warn("DataItemValueDisplay: item or dimension not available or no way to display value type");
return null;
});
//# sourceMappingURL=DataItemValueDisplay.js.map