Commit 8f92e23e by Peter Holmberg

copy props to state to make it visible in the view

parent a4091813
......@@ -38,7 +38,33 @@ interface Props {
datasource: DataSourceSelectItem;
}
export class QueryOptions extends PureComponent<Props> {
interface State {
relativeTime: string;
timeShift: string;
}
export class QueryOptions extends PureComponent<Props, State> {
constructor(props) {
super(props);
this.state = {
relativeTime: props.panel.timeFrom || '',
timeShift: props.panel.timeShift || '',
};
}
onRelativeTimeChange = event => {
this.setState({
relativeTime: event.target.value,
});
};
onTimeShiftChange = event => {
this.setState({
timeShift: event.target.value,
});
};
onOverrideTime = (evt, status: InputStatus) => {
const { value } = evt.target;
const { panel } = this.props;
......@@ -128,8 +154,10 @@ export class QueryOptions extends PureComponent<Props> {
});
}
render = () => {
render() {
const hideTimeOverride = this.props.panel.hideTimeOverride;
const { relativeTime, timeShift } = this.state;
return (
<div className="gf-form-inline">
{this.renderOptions()}
......@@ -140,9 +168,11 @@ export class QueryOptions extends PureComponent<Props> {
type="text"
className="width-6"
placeholder="1h"
onChange={this.onRelativeTimeChange}
onBlur={this.onOverrideTime}
validationEvents={timeRangeValidationEvents}
hideErrorMessage={true}
value={relativeTime}
/>
</div>
......@@ -152,9 +182,11 @@ export class QueryOptions extends PureComponent<Props> {
type="text"
className="width-6"
placeholder="1h"
onChange={this.onTimeShiftChange}
onBlur={this.onTimeShift}
validationEvents={timeRangeValidationEvents}
hideErrorMessage={true}
value={timeShift}
/>
</div>
......@@ -163,5 +195,5 @@ export class QueryOptions extends PureComponent<Props> {
</div>
</div>
);
};
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment