@atomist/org-visualizer
Version:
Organization Visualizer using Atomist project scanning
41 lines • 2.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const React = require("react");
function displayCurrentIdeal(currentIdeal) {
return React.createElement("h2", null,
"Current ideal: ",
currentIdeal.displayValue);
}
/* This element will contain the full data value for one level, about the item hovered over. */
function levelDataListItem(item) {
return React.createElement("li", { key: "li-" + item.textAreaId },
React.createElement("label", { htmlFor: item.textAreaId },
item.labelText,
": "),
React.createElement("div", { className: "unfrozenLevelData", id: item.textAreaId }));
}
function SunburstPage(props) {
const perLevelDataItems = !props.tree || !props.tree.circles ? []
: props.tree.circles.map((c, i) => ({ textAreaId: "levelData-" + i, labelText: c.meaning }));
const d3ScriptCall = `<script>
const data = ${JSON.stringify(props.tree)};
SunburstYo.sunburst("${props.workspaceId}",
data,
window.innerWidth - 250,
window.innerHeight - 100,
[${perLevelDataItems.map(p => `"` + p.textAreaId + `"`).join(",")}]);
</script>`;
const thingies = !props.tree ? "Hover over a slice to see its details" :
React.createElement("ul", null, perLevelDataItems.map(levelDataListItem));
const idealDisplay = props.currentIdeal ? displayCurrentIdeal(props.currentIdeal) : "";
return React.createElement("div", { className: "sunburst" },
React.createElement("h1", null, props.fingerprintDisplayName),
idealDisplay,
React.createElement("div", { className: "wrapper" },
React.createElement("div", { id: "putSvgHere", className: "sunburstSvg" }),
React.createElement("div", { id: "dataAboutWhatYouClicked", className: "sunburstData" }, thingies)),
React.createElement("div", { dangerouslySetInnerHTML: { __html: d3ScriptCall } }),
React.createElement("a", { href: "." + props.dataUrl, type: "application/json" }, "Raw data"));
}
exports.SunburstPage = SunburstPage;
//# sourceMappingURL=sunburstPage.js.map