Files
supabase/apps/studio/data/reports/database-report-query.ts
Joshen Lim 02d943e9d6 Add refresh button to reports (#33211)
* Add refresh to custom reports

* Add refresh button to API and storage reports

* Add refresh button to database report

* Clean up database report

* Clean up custom report
2025-02-03 11:59:28 +08:00

33 lines
952 B
TypeScript

import { useParams } from 'common'
import { PRESET_CONFIG } from 'components/interfaces/Reports/Reports.constants'
import { queriesFactory } from 'components/interfaces/Reports/Reports.utils'
import { DbQueryHook } from 'hooks/analytics/useDbQuery'
export const useDatabaseReport = () => {
const { ref: projectRef } = useParams()
const queryHooks = queriesFactory<keyof typeof PRESET_CONFIG.database.queries>(
PRESET_CONFIG.database.queries,
projectRef ?? 'default'
)
const largeObjects = queryHooks.largeObjects() as DbQueryHook
const activeHooks = [largeObjects]
const isLoading = activeHooks.some((hook) => hook.isLoading)
return {
data: {
largeObjects: largeObjects.data,
},
errors: {
largeObjects: largeObjects.error,
},
params: {
largeObjects: largeObjects.params,
},
largeObjectsSql: largeObjects.resolvedSql,
isLoading,
refresh: () => largeObjects.runQuery,
}
}