mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
39 lines
1.0 KiB
TypeScript
39 lines
1.0 KiB
TypeScript
|
|
// Libraries
|
||
|
|
import React, { memo } from 'react';
|
||
|
|
|
||
|
|
// Types
|
||
|
|
import { FormLabel } from '@grafana/ui';
|
||
|
|
|
||
|
|
export interface PromExploreExtraFieldProps {
|
||
|
|
label: string;
|
||
|
|
onChangeFunc: (e: React.SyntheticEvent<HTMLInputElement>) => void;
|
||
|
|
onKeyDownFunc: (e: React.KeyboardEvent<HTMLInputElement>) => void;
|
||
|
|
value: string;
|
||
|
|
hasTooltip?: boolean;
|
||
|
|
tooltipContent?: string;
|
||
|
|
}
|
||
|
|
|
||
|
|
export function PromExploreExtraField(props: PromExploreExtraFieldProps) {
|
||
|
|
const { label, onChangeFunc, onKeyDownFunc, value, hasTooltip, tooltipContent } = props;
|
||
|
|
|
||
|
|
return (
|
||
|
|
<div className="gf-form-inline explore-input--ml">
|
||
|
|
<div className="gf-form">
|
||
|
|
<FormLabel width={5} tooltip={hasTooltip ? tooltipContent : null}>
|
||
|
|
{label}
|
||
|
|
</FormLabel>
|
||
|
|
<input
|
||
|
|
type={'text'}
|
||
|
|
className="gf-form-input width-4"
|
||
|
|
placeholder={'auto'}
|
||
|
|
onChange={onChangeFunc}
|
||
|
|
onKeyDown={onKeyDownFunc}
|
||
|
|
value={value}
|
||
|
|
/>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
);
|
||
|
|
}
|
||
|
|
|
||
|
|
export default memo(PromExploreExtraField);
|