import React, { FC, FormEvent, useMemo } from 'react'; import { css } from 'emotion'; import { GrafanaTheme, SelectableValue } from '@grafana/data'; import { Field, Input, Select, Tab, TabContent, TabsBar, TextArea, useStyles } from '@grafana/ui'; import { AlertDefinition, QueryGroupOptions } from 'app/types'; const intervalOptions: Array> = [ { value: 60, label: '1m' }, { value: 300, label: '5m' }, { value: 600, label: '10m' }, ]; interface Props { alertDefinition: AlertDefinition; onChange: (event: FormEvent) => void; onIntervalChange: (interval: SelectableValue) => void; onConditionChange: (refId: SelectableValue) => void; queryOptions: QueryGroupOptions; } export const AlertDefinitionOptions: FC = ({ alertDefinition, onChange, onIntervalChange, onConditionChange, queryOptions, }) => { const styles = useStyles(getStyles); const refIds = useMemo(() => queryOptions.queries.map((q) => ({ value: q.refId, label: q.refId })), [ queryOptions.queries, ]); return (