@dfnivo/sankey
Version:
<a href="https://nivo.rocks"><img alt="nivo" src="https://raw.githubusercontent.com/plouc/nivo/master/nivo.png" width="216" height="68"/></a>
46 lines (45 loc) • 2.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "SankeyLinks", {
enumerable: true,
get: function() {
return SankeyLinks;
}
});
var _jsxRuntime = require("react/jsx-runtime");
var _links = require("./links");
var _sankeyLinksItem = require("./SankeyLinksItem");
var _react = require("react");
var SankeyLinks = function(param) {
var links = param.links, layout = param.layout, linkOpacity = param.linkOpacity, linkHoverOpacity = param.linkHoverOpacity, linkHoverOthersOpacity = param.linkHoverOthersOpacity, linkContract = param.linkContract, linkBlendMode = param.linkBlendMode, enableLinkGradient = param.enableLinkGradient, setCurrentLink = param.setCurrentLink, currentLink = param.currentLink, currentNode = param.currentNode, isCurrentLink = param.isCurrentLink, isInteractive = param.isInteractive, onClick = param.onClick, tooltip = param.tooltip;
var getOpacity = function(link) {
if (!currentNode && !currentLink) return linkOpacity;
if (isCurrentLink(link)) return linkHoverOpacity;
return linkHoverOthersOpacity;
};
var getLinkPath = (0, _react.useMemo)(function() {
return layout === "horizontal" ? (0, _links.sankeyLinkHorizontal)() : (0, _links.sankeyLinkVertical)();
}, [
layout
]);
return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
children: links.map(function(link) {
return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_sankeyLinksItem.SankeyLinksItem, {
link: link,
layout: layout,
path: getLinkPath(link, linkContract),
color: link.color,
opacity: getOpacity(link),
blendMode: linkBlendMode,
enableGradient: enableLinkGradient,
setCurrent: setCurrentLink,
isInteractive: isInteractive,
onClick: onClick,
tooltip: tooltip
}, "".concat(link.source.id, ".").concat(link.target.id));
})
});
};
//# sourceMappingURL=SankeyLinks.js.map