QueryPerformance.tsx 1003 B

1234567891011121314151617181920212223242526272829303132333435
  1. import { useParams } from 'common'
  2. import { useEffect } from 'react'
  3. import { PresetHookResult } from '../Reports/Reports.utils'
  4. import { QueryPerformanceInfiniteHook } from './useQueryPerformanceQuery'
  5. import { WithStatements } from './WithStatements/WithStatements'
  6. import { useDatabaseSelectorStateSnapshot } from '@/state/database-selector'
  7. interface QueryPerformanceProps {
  8. queryHitRate: PresetHookResult
  9. queryPerformanceQuery: QueryPerformanceInfiniteHook
  10. queryMetrics: PresetHookResult
  11. }
  12. export const QueryPerformance = ({
  13. queryHitRate,
  14. queryPerformanceQuery,
  15. queryMetrics,
  16. }: QueryPerformanceProps) => {
  17. const { ref } = useParams()
  18. const state = useDatabaseSelectorStateSnapshot()
  19. useEffect(() => {
  20. state.setSelectedDatabaseId(ref)
  21. // eslint-disable-next-line react-hooks/exhaustive-deps
  22. }, [ref])
  23. return (
  24. <WithStatements
  25. queryHitRate={queryHitRate}
  26. queryPerformanceQuery={queryPerformanceQuery}
  27. queryMetrics={queryMetrics}
  28. />
  29. )
  30. }