Update source for tag values
parent
97ee2e3047
commit
d76b1d0b0e
|
@ -8,6 +8,7 @@ import showTagKeysParser from 'shared/parsing/showTagKeys'
|
||||||
import showTagValuesParser from 'shared/parsing/showTagValues'
|
import showTagValuesParser from 'shared/parsing/showTagValues'
|
||||||
|
|
||||||
const {string, shape, func, bool} = PropTypes
|
const {string, shape, func, bool} = PropTypes
|
||||||
|
|
||||||
const TagList = React.createClass({
|
const TagList = React.createClass({
|
||||||
propTypes: {
|
propTypes: {
|
||||||
query: shape({
|
query: shape({
|
||||||
|
@ -18,16 +19,27 @@ const TagList = React.createClass({
|
||||||
}).isRequired,
|
}).isRequired,
|
||||||
onChooseTag: func.isRequired,
|
onChooseTag: func.isRequired,
|
||||||
onGroupByTag: func.isRequired,
|
onGroupByTag: func.isRequired,
|
||||||
|
querySource: shape({
|
||||||
|
links: shape({
|
||||||
|
proxy: string.isRequired,
|
||||||
|
}).isRequired,
|
||||||
|
}),
|
||||||
},
|
},
|
||||||
|
|
||||||
contextTypes: {
|
contextTypes: {
|
||||||
source: PropTypes.shape({
|
source: shape({
|
||||||
links: PropTypes.shape({
|
links: shape({
|
||||||
proxy: PropTypes.string.isRequired,
|
proxy: string.isRequired,
|
||||||
}).isRequired,
|
}).isRequired,
|
||||||
}).isRequired,
|
}).isRequired,
|
||||||
},
|
},
|
||||||
|
|
||||||
|
getDefaultProps() {
|
||||||
|
return {
|
||||||
|
querySource: null,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
getInitialState() {
|
getInitialState() {
|
||||||
return {
|
return {
|
||||||
tags: {},
|
tags: {},
|
||||||
|
@ -37,9 +49,12 @@ const TagList = React.createClass({
|
||||||
_getTags() {
|
_getTags() {
|
||||||
const {database, measurement, retentionPolicy} = this.props.query
|
const {database, measurement, retentionPolicy} = this.props.query
|
||||||
const {source} = this.context
|
const {source} = this.context
|
||||||
const sourceProxy = source.links.proxy
|
const {querySource} = this.props
|
||||||
|
|
||||||
showTagKeys({source: sourceProxy, database, retentionPolicy, measurement})
|
const proxy =
|
||||||
|
_.get(querySource, ['links', 'proxy'], null) || source.links.proxy
|
||||||
|
|
||||||
|
showTagKeys({source: proxy, database, retentionPolicy, measurement})
|
||||||
.then(resp => {
|
.then(resp => {
|
||||||
const {errors, tagKeys} = showTagKeysParser(resp.data)
|
const {errors, tagKeys} = showTagKeysParser(resp.data)
|
||||||
if (errors.length) {
|
if (errors.length) {
|
||||||
|
@ -47,7 +62,7 @@ const TagList = React.createClass({
|
||||||
}
|
}
|
||||||
|
|
||||||
return showTagValues({
|
return showTagValues({
|
||||||
source: sourceProxy,
|
source: proxy,
|
||||||
database,
|
database,
|
||||||
retentionPolicy,
|
retentionPolicy,
|
||||||
measurement,
|
measurement,
|
||||||
|
@ -74,7 +89,9 @@ const TagList = React.createClass({
|
||||||
},
|
},
|
||||||
|
|
||||||
componentDidUpdate(prevProps) {
|
componentDidUpdate(prevProps) {
|
||||||
const {database, measurement, retentionPolicy} = this.props.query
|
const {query, querySource} = this.props
|
||||||
|
const {database, measurement, retentionPolicy} = query
|
||||||
|
|
||||||
const {
|
const {
|
||||||
database: prevDB,
|
database: prevDB,
|
||||||
measurement: prevMeas,
|
measurement: prevMeas,
|
||||||
|
@ -87,7 +104,8 @@ const TagList = React.createClass({
|
||||||
if (
|
if (
|
||||||
database === prevDB &&
|
database === prevDB &&
|
||||||
measurement === prevMeas &&
|
measurement === prevMeas &&
|
||||||
retentionPolicy === prevRP
|
retentionPolicy === prevRP &&
|
||||||
|
_.isEqual(prevProps.querySource, querySource)
|
||||||
) {
|
) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
|
@ -182,6 +182,7 @@ const MeasurementList = React.createClass({
|
||||||
{isActive
|
{isActive
|
||||||
? <TagList
|
? <TagList
|
||||||
query={this.props.query}
|
query={this.props.query}
|
||||||
|
querySource={this.props.querySource}
|
||||||
onChooseTag={this.props.onChooseTag}
|
onChooseTag={this.props.onChooseTag}
|
||||||
onGroupByTag={this.props.onGroupByTag}
|
onGroupByTag={this.props.onGroupByTag}
|
||||||
/>
|
/>
|
||||||
|
|
Loading…
Reference in New Issue