UNPKG

@qn-pandora/pandora-visualization

Version:

Pandora 通用可视化库

67 lines (66 loc) 2.61 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")); var drill_down_1 = require("../../constants/drill-down"); exports.DEFAULT_SPAN = '5m'; /** * 提供图表下钻相关的服务: * 1. 封装根据点击元素生成约定Event的逻辑 * 2. 设置下钻相关的token,可作为模板变量使用 */ var ChartDrillDownService = /** @class */ (function () { function ChartDrillDownService(type) { this.type = type; } // 除searchAuto外暂用不到 ChartDrillDownService.prototype.toCommonEvent = function () { return undefined; }; ChartDrillDownService.prototype.toEvent = function (params) { switch (this.type) { case drill_down_1.DrillDownType.ToSearchAuto: return this.toSearchAutoEvent(params); default: return this.toCommonEvent(); } }; ChartDrillDownService.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 }; }; ChartDrillDownService.prototype.generateMetric = function (fieldname, value) { return { field: fieldname, value: value }; }; ChartDrillDownService.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) }; }; ChartDrillDownService.prototype.isFieldValid = function (fieldname, value) { return !!fieldname && !lodash_1.isUndefined(value); }; return ChartDrillDownService; }()); exports.default = ChartDrillDownService;