import React, { FC, useMemo } from 'react'; import { SelectableValue } from '@grafana/data'; import { Select } from '@grafana/ui'; import { SELECT_WIDTH } from '../constants'; import { getAlignmentPickerData } from '../functions'; import { MetricQuery } from '../types'; export interface Props { inputId: string; onChange: (query: MetricQuery) => void; query: MetricQuery; templateVariableOptions: Array>; } export const AlignmentFunction: FC = ({ inputId, query, templateVariableOptions, onChange }) => { const { valueType, metricKind, perSeriesAligner: psa, preprocessor } = query; const { perSeriesAligner, alignOptions } = useMemo( () => getAlignmentPickerData(valueType, metricKind, psa, preprocessor), [valueType, metricKind, psa, preprocessor] ); return ( ); };