Files
grafana/public/app/plugins/datasource/cloud-monitoring/components/QueryHeader.tsx
Andreas Christou 108acee08e CloudMonitoring: Initial GCM Schema (#67739)
* Initial GCM schema work

- Split types for convenience
- Update conditionals where needed
- Update type references

* Add additional supporting types

* Add some more accessory and legacy types

* Add missing type

* Rename backend folder

* Add missing generated file

* Review
2023-05-22 17:19:54 +01:00

33 lines
826 B
TypeScript

import React from 'react';
import { EditorHeader, FlexItem, InlineSelect } from '@grafana/experimental';
import { QUERY_TYPES } from '../constants';
import { CloudMonitoringQuery } from '../types/query';
export interface QueryEditorHeaderProps {
query: CloudMonitoringQuery;
onChange: (value: CloudMonitoringQuery) => void;
onRunQuery: () => void;
}
export const QueryHeader = (props: QueryEditorHeaderProps) => {
const { query, onChange, onRunQuery } = props;
const { queryType } = query;
return (
<EditorHeader>
<InlineSelect
label="Query type"
options={QUERY_TYPES}
value={queryType}
onChange={({ value }) => {
onChange({ ...query, queryType: value! });
onRunQuery();
}}
/>
<FlexItem grow={1} />
</EditorHeader>
);
};