UNPKG

cione-comp-lib

Version:

`$ yarn add cione-comp-lib` 或者 `$ npm i cione-comp-lib -S`

125 lines (124 loc) 4 kB
import { __extends } from "../../../../tslib/tslib.es6.mjs"; import SeriesModel from "../../model/Series.mjs"; import Tree from "../../data/Tree.mjs"; import Model from "../../model/Model.mjs"; import { createTooltipMarkup } from "../../component/tooltip/tooltipMarkup.mjs"; import { wrapTreePathInfo } from "../helper/treeHelper.mjs"; var TreeSeriesModel = function(_super) { __extends(TreeSeriesModel2, _super); function TreeSeriesModel2() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.hasSymbolVisual = true; _this.ignoreStyleOnData = true; return _this; } TreeSeriesModel2.prototype.getInitialData = function(option) { var root = { name: option.name, children: option.data }; var leaves = option.leaves || {}; var leavesModel = new Model(leaves, this, this.ecModel); var tree = Tree.createTree(root, this, beforeLink); function beforeLink(nodeData) { nodeData.wrapMethod("getItemModel", function(model, idx) { var node = tree.getNodeByDataIndex(idx); if (!(node && node.children.length && node.isExpand)) { model.parentModel = leavesModel; } return model; }); } var treeDepth = 0; tree.eachNode("preorder", function(node) { if (node.depth > treeDepth) { treeDepth = node.depth; } }); var expandAndCollapse = option.expandAndCollapse; var expandTreeDepth = expandAndCollapse && option.initialTreeDepth >= 0 ? option.initialTreeDepth : treeDepth; tree.root.eachNode("preorder", function(node) { var item = node.hostTree.data.getRawDataItem(node.dataIndex); node.isExpand = item && item.collapsed != null ? !item.collapsed : node.depth <= expandTreeDepth; }); return tree.data; }; TreeSeriesModel2.prototype.getOrient = function() { var orient = this.get("orient"); if (orient === "horizontal") { orient = "LR"; } else if (orient === "vertical") { orient = "TB"; } return orient; }; TreeSeriesModel2.prototype.setZoom = function(zoom) { this.option.zoom = zoom; }; TreeSeriesModel2.prototype.setCenter = function(center) { this.option.center = center; }; TreeSeriesModel2.prototype.formatTooltip = function(dataIndex, multipleSeries, dataType) { var tree = this.getData().tree; var realRoot = tree.root.children[0]; var node = tree.getNodeByDataIndex(dataIndex); var value = node.getValue(); var name = node.name; while (node && node !== realRoot) { name = node.parentNode.name + "." + name; node = node.parentNode; } return createTooltipMarkup("nameValue", { name, value, noValue: isNaN(value) || value == null }); }; TreeSeriesModel2.prototype.getDataParams = function(dataIndex) { var params = _super.prototype.getDataParams.apply(this, arguments); var node = this.getData().tree.getNodeByDataIndex(dataIndex); params.treeAncestors = wrapTreePathInfo(node, this); params.collapsed = !node.isExpand; return params; }; TreeSeriesModel2.type = "series.tree"; TreeSeriesModel2.layoutMode = "box"; TreeSeriesModel2.defaultOption = { z: 2, coordinateSystem: "view", left: "12%", top: "12%", right: "12%", bottom: "12%", layout: "orthogonal", edgeShape: "curve", edgeForkPosition: "50%", roam: false, nodeScaleRatio: 0.4, center: null, zoom: 1, orient: "LR", symbol: "emptyCircle", symbolSize: 7, expandAndCollapse: true, initialTreeDepth: 2, lineStyle: { color: "#ccc", width: 1.5, curveness: 0.5 }, itemStyle: { color: "lightsteelblue", borderWidth: 1.5 }, label: { show: true }, animationEasing: "linear", animationDuration: 700, animationDurationUpdate: 500 }; return TreeSeriesModel2; }(SeriesModel); var TreeSeriesModel$1 = TreeSeriesModel; export { TreeSeriesModel$1 as default };