diff --git a/packages/grafana-ui/src/utils/statsCalculator.ts b/packages/grafana-ui/src/utils/statsCalculator.ts index 82245f590f7..6f78eb1be62 100644 --- a/packages/grafana-ui/src/utils/statsCalculator.ts +++ b/packages/grafana-ui/src/utils/statsCalculator.ts @@ -24,12 +24,12 @@ export enum StatID { allIsNull = 'allIsNull', } -export interface ColumnStats { +export interface FieldStats { [key: string]: any; } // Internal function -type StatCalculator = (data: SeriesData, fieldIndex: number, ignoreNulls: boolean, nullAsZero: boolean) => ColumnStats; +type StatCalculator = (data: SeriesData, fieldIndex: number, ignoreNulls: boolean, nullAsZero: boolean) => FieldStats; export interface StatCalculatorInfo { id: string; @@ -73,7 +73,7 @@ export interface CalculateStatsOptions { /** * @returns an object with a key for each selected stat */ -export function calculateStats(options: CalculateStatsOptions): ColumnStats { +export function calculateStats(options: CalculateStatsOptions): FieldStats { const { series, fieldIndex, stats, nullValueMode } = options; if (!stats || stats.length < 1) { @@ -85,7 +85,7 @@ export function calculateStats(options: CalculateStatsOptions): ColumnStats { // Return early for empty series // This lets the concrete implementations assume at least one row if (!series.rows || series.rows.length < 1) { - const stats = {} as ColumnStats; + const stats = {} as FieldStats; for (const stat of queue) { stats[stat.id] = stat.emptyInputResult !== null ? stat.emptyInputResult : null; } @@ -227,7 +227,7 @@ function standardStatsStat( fieldIndex: number, ignoreNulls: boolean, nullAsZero: boolean -): ColumnStats { +): FieldStats { const stats = { sum: 0, max: -Number.MAX_VALUE, @@ -247,7 +247,7 @@ function standardStatsStat( // Just used for calcutations -- not exposed as a stat previousDeltaUp: true, - } as ColumnStats; + } as FieldStats; for (let i = 0; i < data.rows.length; i++) { let currentValue = data.rows[i][fieldIndex]; @@ -345,11 +345,11 @@ function standardStatsStat( return stats; } -function calculateFirst(data: SeriesData, fieldIndex: number, ignoreNulls: boolean, nullAsZero: boolean): ColumnStats { +function calculateFirst(data: SeriesData, fieldIndex: number, ignoreNulls: boolean, nullAsZero: boolean): FieldStats { return { first: data.rows[0][fieldIndex] }; } -function calculateLast(data: SeriesData, fieldIndex: number, ignoreNulls: boolean, nullAsZero: boolean): ColumnStats { +function calculateLast(data: SeriesData, fieldIndex: number, ignoreNulls: boolean, nullAsZero: boolean): FieldStats { return { last: data.rows[data.rows.length - 1][fieldIndex] }; } @@ -358,7 +358,7 @@ function calculateChangeCount( fieldIndex: number, ignoreNulls: boolean, nullAsZero: boolean -): ColumnStats { +): FieldStats { let count = 0; let first = true; let last: any = null; @@ -387,7 +387,7 @@ function calculateDistinctCount( fieldIndex: number, ignoreNulls: boolean, nullAsZero: boolean -): ColumnStats { +): FieldStats { const distinct = new Set(); for (let i = 0; i < data.rows.length; i++) { let currentValue = data.rows[i][fieldIndex];