cione-comp-lib
Version:
`$ yarn add cione-comp-lib` 或者 `$ npm i cione-comp-lib -S`
34 lines (33 loc) • 1.15 kB
JavaScript
import { retrieveTargetInfo, aboveViewRoot } from "../helper/treeHelper.mjs";
import { noop } from "../../../../zrender/lib/core/util.mjs";
var actionTypes = ["treemapZoomToNode", "treemapRender", "treemapMove"];
function installTreemapAction(registers) {
for (var i = 0; i < actionTypes.length; i++) {
registers.registerAction({
type: actionTypes[i],
update: "updateView"
}, noop);
}
registers.registerAction({
type: "treemapRootToNode",
update: "updateView"
}, function(payload, ecModel) {
ecModel.eachComponent({
mainType: "series",
subType: "treemap",
query: payload
}, handleRootToNode);
function handleRootToNode(model, index) {
var types = ["treemapZoomToNode", "treemapRootToNode"];
var targetInfo = retrieveTargetInfo(payload, types, model);
if (targetInfo) {
var originViewRoot = model.getViewRoot();
if (originViewRoot) {
payload.direction = aboveViewRoot(originViewRoot, targetInfo.node) ? "rollUp" : "drillDown";
}
model.resetViewRoot(targetInfo.node);
}
}
});
}
export { installTreemapAction };