mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
InfluxDB: Use new datasource update option funcs (#20907)
This commit is contained in:
parent
4a25ec0d36
commit
ced13da889
@ -1,5 +1,11 @@
|
|||||||
import React, { PureComponent, ChangeEvent } from 'react';
|
import React, { PureComponent, ChangeEvent } from 'react';
|
||||||
import { DataSourcePluginOptionsEditorProps, SelectableValue } from '@grafana/data';
|
import {
|
||||||
|
DataSourcePluginOptionsEditorProps,
|
||||||
|
SelectableValue,
|
||||||
|
updateDatasourcePluginJsonDataOption,
|
||||||
|
updateDatasourcePluginResetKeyOption,
|
||||||
|
updateDatasourcePluginOption,
|
||||||
|
} from '@grafana/data';
|
||||||
import { DataSourceHttpSettings, FormLabel, Input, SecretFormField, Select } from '@grafana/ui';
|
import { DataSourceHttpSettings, FormLabel, Input, SecretFormField, Select } from '@grafana/ui';
|
||||||
import { InfluxOptions, InfluxSecureJsonData } from '../types';
|
import { InfluxOptions, InfluxSecureJsonData } from '../types';
|
||||||
|
|
||||||
@ -11,68 +17,40 @@ const httpModes = [
|
|||||||
export type Props = DataSourcePluginOptionsEditorProps<InfluxOptions>;
|
export type Props = DataSourcePluginOptionsEditorProps<InfluxOptions>;
|
||||||
|
|
||||||
export class ConfigEditor extends PureComponent<Props> {
|
export class ConfigEditor extends PureComponent<Props> {
|
||||||
|
onUpdateOption = (key: string, val: any) => {
|
||||||
|
updateDatasourcePluginOption(this.props, key, val);
|
||||||
|
};
|
||||||
|
|
||||||
|
onUpdateJsonDataOption = (key: string, val: any, secure: boolean) => {
|
||||||
|
updateDatasourcePluginJsonDataOption(this.props, key, val, secure);
|
||||||
|
};
|
||||||
|
|
||||||
|
onResetKey = (key: string) => {
|
||||||
|
updateDatasourcePluginResetKeyOption(this.props, key);
|
||||||
|
};
|
||||||
|
|
||||||
onDatabaseChange = (event: ChangeEvent<HTMLInputElement>) => {
|
onDatabaseChange = (event: ChangeEvent<HTMLInputElement>) => {
|
||||||
const { onOptionsChange, options } = this.props;
|
this.onUpdateOption('database', event.target.value);
|
||||||
onOptionsChange({
|
|
||||||
...options,
|
|
||||||
database: event.target.value,
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
onUserChange = (event: ChangeEvent<HTMLInputElement>) => {
|
onUserChange = (event: ChangeEvent<HTMLInputElement>) => {
|
||||||
const { onOptionsChange, options } = this.props;
|
this.onUpdateOption('user', event.target.value);
|
||||||
onOptionsChange({
|
|
||||||
...options,
|
|
||||||
user: event.target.value,
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
onPasswordChange = (event: ChangeEvent<HTMLInputElement>) => {
|
onPasswordChange = (event: ChangeEvent<HTMLInputElement>) => {
|
||||||
const { onOptionsChange, options } = this.props;
|
this.onUpdateJsonDataOption('password', event.target.value, true);
|
||||||
onOptionsChange({
|
|
||||||
...options,
|
|
||||||
secureJsonData: {
|
|
||||||
...options.secureJsonData,
|
|
||||||
password: event.target.value,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
onTimeIntervalChange = (event: ChangeEvent<HTMLInputElement>) => {
|
onTimeIntervalChange = (event: ChangeEvent<HTMLInputElement>) => {
|
||||||
const { onOptionsChange, options } = this.props;
|
this.onUpdateJsonDataOption('timeInterval', event.target.value, false);
|
||||||
onOptionsChange({
|
|
||||||
...options,
|
|
||||||
jsonData: {
|
|
||||||
...options.jsonData,
|
|
||||||
timeInterval: event.target.value,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
onResetPassword = () => {
|
onResetPassword = () => {
|
||||||
const { onOptionsChange, options } = this.props;
|
this.onResetKey('password');
|
||||||
onOptionsChange({
|
|
||||||
...options,
|
|
||||||
secureJsonFields: {
|
|
||||||
...options.secureJsonFields,
|
|
||||||
password: false,
|
|
||||||
},
|
|
||||||
secureJsonData: {
|
|
||||||
...options.secureJsonData,
|
|
||||||
password: '',
|
|
||||||
},
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
onHttpModeSelect = (httpMode: SelectableValue) => {
|
onHttpModeSelect = (httpMode: SelectableValue) => {
|
||||||
const { onOptionsChange, options } = this.props;
|
this.onUpdateJsonDataOption('httpMode', httpMode.value, false);
|
||||||
onOptionsChange({
|
|
||||||
...options,
|
|
||||||
jsonData: {
|
|
||||||
...options.jsonData,
|
|
||||||
httpMode: httpMode.value,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
|
Loading…
Reference in New Issue
Block a user