UNPKG

@qn-pandora/pandora-visualization

Version:

Pandora 通用可视化库

53 lines (52 loc) 2.12 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.DEFAULT_SPAN = void 0; var lodash_1 = require("lodash"); var moment_1 = __importDefault(require("moment")); exports.DEFAULT_SPAN = '5m'; /** * 提供图表调和钻相关的服务: * 1. 封装根据点击元素生成约定Event的逻辑 * 2. 设置跳转相关的token,可作为模版变量使用 */ var ChartCommonActionService = /** @class */ (function () { function ChartCommonActionService() { } ChartCommonActionService.prototype.generateBucket = function (fieldname, value, fields) { var field = fields.find(function (item) { return item.key === fieldname; }); var type = (field && field.fieldType) || ''; return { field: fieldname, type: type, span: type === 'Time' ? exports.DEFAULT_SPAN : '', value: type === 'Time' && value && moment_1.default(value).isValid() ? moment_1.default(value).valueOf() : value }; }; ChartCommonActionService.prototype.generateMetric = function (fieldname, value) { return { field: fieldname, value: value }; }; ChartCommonActionService.prototype.generateValidResults = function (res) { var _this = this; return { buckets: lodash_1.uniqWith((res.buckets || []).filter(function (bucket) { return _this.isFieldValid(bucket.field, bucket.value); }), lodash_1.isEqual), metrics: lodash_1.uniqWith((res.metrics || []).filter(function (metric) { return _this.isFieldValid(metric.field, metric.value); }), lodash_1.isEqual) }; }; ChartCommonActionService.prototype.isFieldValid = function (fieldname, value) { return !!fieldname && !lodash_1.isUndefined(value); }; return ChartCommonActionService; }()); exports.default = ChartCommonActionService;