UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

60 lines (58 loc) 1.69 kB
/** * DevExtreme (cjs/viz/tree_map/drilldown.js) * Version: 24.2.6 * Build date: Mon Mar 17 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ "use strict"; var _tree_map = _interopRequireDefault(require("./tree_map.base")); var _helpers = require("../core/helpers"); require("./api"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e } } const proto = _tree_map.default.prototype; proto._eventsMap.onDrill = { name: "drill" }; (0, _helpers.expand)(proto, "_extendProxyType", (function(proto) { const that = this; proto.drillDown = function() { that._drillToNode(this._id) } })); (0, _helpers.expand)(proto, "_onNodesCreated", (function() { this._drilldownIndex = -1 })); proto._drillToNode = function(index) { const that = this; let node; if (that._drilldownIndex !== index) { node = that._nodes[index] || that._root; if (node.nodes) { that._drilldownIndex = index; that._topNode = node; that._context.suspend(); that._context.change(["MAX_DEPTH", "NODES_RESET"]); that._context.resume(); that._eventTrigger("drill", { node: node.proxy }) } } }; proto.resetDrillDown = function() { this._drillToNode(-1); return this }; proto.drillUp = function() { this._drillToNode(this._topNode.parent._id || -1); return this }; proto.getCurrentNode = function() { return this._topNode.proxy };