@qn-pandora/pandora-visualization
Version:
Pandora 通用可视化库
32 lines (31 loc) • 1.41 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var lodash_1 = require("lodash");
var utils_1 = require("../../utils");
var SearchSingleBaseStyleService = /** @class */ (function () {
function SearchSingleBaseStyleService() {
}
SearchSingleBaseStyleService.prototype.datasetReaction = function (target, dataset) {
// 根据dataset初始化图表的bucket、metric、color等属性。
var fields = dataset.fields || [];
var fieldNames = fields.map(function (field) { return field && field.key; });
// tslint:disable-next-line:prefer-const
var _a = utils_1.getBucketMetricNameByFields(fields), metrics = _a.metrics, buckets = _a.buckets;
// metric
if (!target.currentMetrics.length ||
!lodash_1.includes(fieldNames, target.currentMetrics[0])) {
target.setCurrentMetrics(metrics.length ? [metrics[0]] : []);
metrics = metrics.slice(1);
}
else {
utils_1.updateMetricBucket(metrics, buckets, target.currentMetrics[0]);
}
// buckets
if (!target.currentBuckets.length ||
!lodash_1.includes(fieldNames, target.currentBuckets[0])) {
target.setCurrentBuckets(buckets.length ? [buckets[0]] : []);
}
};
return SearchSingleBaseStyleService;
}());
exports.default = SearchSingleBaseStyleService;