2023-06-19 15:57:58 +03:00
|
|
|
import { Button } from 'antd';
|
|
|
|
|
import { PANEL_TYPES } from 'constants/queryBuilder';
|
|
|
|
|
import { QueryBuilder } from 'container/QueryBuilder';
|
2023-07-07 15:49:35 +03:00
|
|
|
import { QueryBuilderProps } from 'container/QueryBuilder/QueryBuilder.interfaces';
|
2023-06-23 21:39:59 +03:00
|
|
|
import { useGetPanelTypesQueryParam } from 'hooks/queryBuilder/useGetPanelTypesQueryParam';
|
2023-06-19 15:57:58 +03:00
|
|
|
import { useQueryBuilder } from 'hooks/queryBuilder/useQueryBuilder';
|
2023-07-07 15:49:35 +03:00
|
|
|
import { memo, useMemo } from 'react';
|
2023-06-19 15:57:58 +03:00
|
|
|
import { DataSource } from 'types/common/queryBuilder';
|
|
|
|
|
|
|
|
|
|
import { ButtonWrapper, Container } from './styles';
|
|
|
|
|
|
|
|
|
|
function QuerySection(): JSX.Element {
|
|
|
|
|
const { handleRunQuery } = useQueryBuilder();
|
|
|
|
|
|
2023-07-04 08:24:34 +03:00
|
|
|
const panelTypes = useGetPanelTypesQueryParam(PANEL_TYPES.LIST);
|
2023-06-23 21:39:59 +03:00
|
|
|
|
2023-07-07 15:49:35 +03:00
|
|
|
const filterConfigs: QueryBuilderProps['filterConfigs'] = useMemo(() => {
|
|
|
|
|
const config: QueryBuilderProps['filterConfigs'] = {
|
|
|
|
|
stepInterval: { isHidden: false, isDisabled: true },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
return config;
|
|
|
|
|
}, []);
|
|
|
|
|
|
2023-06-19 15:57:58 +03:00
|
|
|
return (
|
|
|
|
|
<Container>
|
|
|
|
|
<QueryBuilder
|
2023-06-23 21:39:59 +03:00
|
|
|
panelType={panelTypes}
|
2023-06-19 15:57:58 +03:00
|
|
|
config={{
|
|
|
|
|
queryVariant: 'static',
|
|
|
|
|
initialDataSource: DataSource.TRACES,
|
|
|
|
|
}}
|
2023-07-07 15:49:35 +03:00
|
|
|
filterConfigs={filterConfigs}
|
2023-06-19 15:57:58 +03:00
|
|
|
actions={
|
|
|
|
|
<ButtonWrapper>
|
|
|
|
|
<Button onClick={handleRunQuery} type="primary">
|
|
|
|
|
Run Query
|
|
|
|
|
</Button>
|
|
|
|
|
</ButtonWrapper>
|
|
|
|
|
}
|
|
|
|
|
/>
|
|
|
|
|
</Container>
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2023-07-04 08:24:34 +03:00
|
|
|
export default memo(QuerySection);
|