diff --git a/ui/src/shared/components/RefreshingView.tsx b/ui/src/shared/components/RefreshingView.tsx index ad082766af..07e208981f 100644 --- a/ui/src/shared/components/RefreshingView.tsx +++ b/ui/src/shared/components/RefreshingView.tsx @@ -87,10 +87,10 @@ class RefreshingView extends PureComponent { key={manualRefresh} variables={this.variableAssignments} > - {({tables, loading, error, isInitialFetch}) => { + {({tables, loading, errorMessage, isInitialFetch}) => { return ( ({ tables: [], files: null, fetchCount: 0, - error: null, + errorMessage: '', duration: 0, }) @@ -97,13 +98,20 @@ class TimeSeries extends Component { } public render() { - const {tables, files, loading, error, fetchCount, duration} = this.state + const { + tables, + files, + loading, + errorMessage, + fetchCount, + duration, + } = this.state return this.props.children({ tables, files, loading, - error, + errorMessage, duration, isInitialFetch: fetchCount === 1, }) @@ -127,7 +135,7 @@ class TimeSeries extends Component { this.setState({ loading: RemoteDataState.Loading, fetchCount: this.state.fetchCount + 1, - error: null, + errorMessage: '', }) try { @@ -161,12 +169,15 @@ class TimeSeries extends Component { return } + let errorMessage = get(error, 'message', '') + if (get(error, 'xhr.status') === RATE_LIMIT_ERROR_STATUS) { notify(readLimitReached()) + errorMessage = RATE_LIMIT_ERROR_TEXT } this.setState({ - error, + errorMessage, loading: RemoteDataState.Error, }) }