commit
fba9ed88bf
|
@ -63,6 +63,7 @@ const RefreshingGraph = ({
|
|||
templates={templates}
|
||||
autoRefresh={autoRefresh}
|
||||
cellHeight={cellHeight}
|
||||
editQueryStatus={editQueryStatus}
|
||||
prefix={prefix}
|
||||
suffix={suffix}
|
||||
inView={inView}
|
||||
|
@ -81,6 +82,7 @@ const RefreshingGraph = ({
|
|||
autoRefresh={autoRefresh}
|
||||
cellHeight={cellHeight}
|
||||
resizerTopHeight={resizerTopHeight}
|
||||
editQueryStatus={editQueryStatus}
|
||||
resizeCoords={resizeCoords}
|
||||
cellID={cellID}
|
||||
prefix={prefix}
|
||||
|
@ -105,6 +107,7 @@ const RefreshingGraph = ({
|
|||
cellHeight={cellHeight}
|
||||
resizeCoords={resizeCoords}
|
||||
tableOptions={tableOptions}
|
||||
editQueryStatus={editQueryStatus}
|
||||
resizerTopHeight={resizerTopHeight}
|
||||
handleSetHoverTime={handleSetHoverTime}
|
||||
isInCEO={isInCEO}
|
||||
|
|
|
@ -2,8 +2,11 @@ import _ from 'lodash'
|
|||
import {shiftDate} from 'shared/query/helpers'
|
||||
import {map, reduce, forEach, concat, clone} from 'fast.js'
|
||||
|
||||
const groupByMap = (responses, responseIndex, groupByColumns) => {
|
||||
const firstColumns = _.get(responses, [0, 'series', 0, 'columns'])
|
||||
const groupByMap = (results, responseIndex, groupByColumns) => {
|
||||
if (_.isEmpty(results)) {
|
||||
return []
|
||||
}
|
||||
const firstColumns = _.get(results, [0, 'series', 0, 'columns'])
|
||||
const accum = [
|
||||
{
|
||||
responseIndex,
|
||||
|
@ -15,14 +18,14 @@ const groupByMap = (responses, responseIndex, groupByColumns) => {
|
|||
...firstColumns.slice(1),
|
||||
],
|
||||
groupByColumns,
|
||||
name: _.get(responses, [0, 'series', 0, 'name']),
|
||||
name: _.get(results, [0, 'series', 0, 'name'], ''),
|
||||
values: [],
|
||||
},
|
||||
],
|
||||
},
|
||||
]
|
||||
|
||||
const seriesArray = _.get(responses, [0, 'series'])
|
||||
const seriesArray = _.get(results, [0, 'series'])
|
||||
seriesArray.forEach(s => {
|
||||
const prevValues = accum[0].series[0].values
|
||||
const tagsToAdd = groupByColumns.map(gb => s.tags[gb])
|
||||
|
@ -35,13 +38,14 @@ const groupByMap = (responses, responseIndex, groupByColumns) => {
|
|||
const constructResults = (raw, groupBys) => {
|
||||
return _.flatten(
|
||||
map(raw, (response, index) => {
|
||||
const responses = _.get(response, 'response.results', [])
|
||||
const results = _.get(response, 'response.results', [])
|
||||
|
||||
const successfulResults = _.filter(results, r => _.isNil(r.error))
|
||||
|
||||
if (groupBys[index]) {
|
||||
return groupByMap(responses, index, groupBys[index])
|
||||
return groupByMap(successfulResults, index, groupBys[index])
|
||||
}
|
||||
|
||||
return map(responses, r => ({...r, responseIndex: index}))
|
||||
return map(successfulResults, r => ({...r, responseIndex: index}))
|
||||
})
|
||||
)
|
||||
}
|
||||
|
@ -81,22 +85,24 @@ const constructCells = serieses => {
|
|||
name: measurement,
|
||||
columns,
|
||||
groupByColumns,
|
||||
values,
|
||||
values = [],
|
||||
seriesIndex,
|
||||
responseIndex,
|
||||
tags = {},
|
||||
},
|
||||
ind
|
||||
) => {
|
||||
const rows = map(values || [], vals => ({
|
||||
vals,
|
||||
}))
|
||||
const rows = map(values, vals => ({vals}))
|
||||
|
||||
const tagSet = map(Object.keys(tags), tag => `[${tag}=${tags[tag]}]`)
|
||||
.sort()
|
||||
.join('')
|
||||
|
||||
const unsortedLabels = map(columns.slice(1), (field, i) => ({
|
||||
label:
|
||||
groupByColumns && i <= groupByColumns.length - 1
|
||||
? `${field}`
|
||||
: `${measurement}.${field}`,
|
||||
: `${measurement}.${field}${tagSet}`,
|
||||
responseIndex,
|
||||
seriesIndex,
|
||||
}))
|
||||
|
@ -221,8 +227,8 @@ export const groupByTimeSeriesTransform = (raw, groupBys) => {
|
|||
if (!groupBys) {
|
||||
groupBys = Array(raw.length).fill(false)
|
||||
}
|
||||
const results = constructResults(raw, groupBys)
|
||||
|
||||
const results = constructResults(raw, groupBys)
|
||||
const serieses = constructSerieses(results)
|
||||
|
||||
const {cells, sortedLabels, seriesLabels} = constructCells(serieses)
|
||||
|
|
Loading…
Reference in New Issue