/* eslint-disable */ // @ts-nocheck import { Col } from 'antd'; import FullView from 'container/GridGraphLayout/Graph/FullView/index.metricsBuilder'; import { databaseCallsAvgDuration, databaseCallsRPS, } from 'container/MetricsApplication/MetricsPageQueries/DBCallQueries'; import useResourceAttribute from 'hooks/useResourceAttribute'; import { convertRawQueriesToTraceSelectedTags, resourceAttributesToTagFilterItems, } from 'hooks/useResourceAttribute/utils'; import React, { useMemo, useState } from 'react'; import { useParams } from 'react-router-dom'; import { Widgets } from 'types/api/dashboard/getAll'; import { Card, GraphContainer, GraphTitle, Row } from '../styles'; import { Button } from './styles'; import { dbSystemTags, handleNonInQueryRange, onGraphClickHandler, onViewTracePopupClick, } from './util'; function DBCall({ getWidgetQueryBuilder }: DBCallProps): JSX.Element { const { servicename } = useParams<{ servicename?: string }>(); const [selectedTimeStamp, setSelectedTimeStamp] = useState(0); const { queries } = useResourceAttribute(); const tagFilterItems = useMemo( () => handleNonInQueryRange(resourceAttributesToTagFilterItems(queries)) || [], [queries], ); const selectedTraceTags: string = useMemo( () => JSON.stringify( convertRawQueriesToTraceSelectedTags(queries).concat(...dbSystemTags) || [], ), [queries], ); const legend = '{{db_system}}'; const databaseCallsRPSWidget = useMemo( () => getWidgetQueryBuilder({ queryType: 1, promQL: [], // TODO: change it later to actual builder metricsBuilder: databaseCallsRPS({ servicename, legend, tagFilterItems, }), clickHouse: [], }), [getWidgetQueryBuilder, servicename, tagFilterItems], ); const databaseCallsAverageDurationWidget = useMemo( () => getWidgetQueryBuilder({ queryType: 1, promQL: [], // TODO: change it later to actual builder metricsBuilder: databaseCallsAvgDuration({ servicename, tagFilterItems, }), clickHouse: [], }), [getWidgetQueryBuilder, servicename, tagFilterItems], ); return ( Database Calls RPS { onGraphClickHandler(setSelectedTimeStamp)( ChartEvent, activeElements, chart, data, 'database_call_rps', ); }} /> Database Calls Avg Duration { onGraphClickHandler(setSelectedTimeStamp)( ChartEvent, activeElements, chart, data, 'database_call_avg_duration', ); }} /> ); } interface DBCallProps { getWidgetQueryBuilder: (query: Widgets['query']) => Widgets; } export default DBCall;