UNPKG

@antv/f2

Version:

Charts for mobile visualization.

47 lines (46 loc) 1.52 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _tslib = require("tslib"); var _fEngine = require("@antv/f-engine"); var _util = require("@antv/util"); var _default = exports.default = function _default(View) { return /** @class */function (_super) { (0, _tslib.__extends)(ElementLink, _super); function ElementLink(props) { return _super.call(this, props) || this; } ElementLink.prototype.getHighlightData = function () { var props = this.props; var chart = props.chart; var highlights = chart.state.highlights; var geometry = chart.getGeometrys()[0]; var data = geometry.flatRecords(); var elements = []; (0, _util.each)(highlights, function (condition, field) { if (!condition) return; var highlightsData = data.filter(function (record) { return condition(record[field], record); }); if (!highlightsData.length) return; elements.push({ highlightsData: highlightsData, field: field, color: highlightsData[0].color || 'transparent' }); }); return elements; }; ElementLink.prototype.render = function () { var props = this.props; var elements = this.getHighlightData(); if (!elements.length) return null; return (0, _fEngine.jsx)(View, (0, _tslib.__assign)({ elements: elements }, props)); }; return ElementLink; }(_fEngine.Component); };