Files
supabase/apps/studio/data/database-functions/database-functions-query.ts
T
2025-09-18 22:51:25 +08:00

26 lines
967 B
TypeScript

import { useQuery, UseQueryOptions } from '@tanstack/react-query'
import { z } from 'zod'
import { databaseKeys } from 'data/database/keys'
import type { ResponseError } from 'types'
import { DatabaseFunctionsVariables, getDatabaseFunctions, pgMetaFunctionsList } from './fetchers'
export type DatabaseFunctionsData = z.infer<typeof pgMetaFunctionsList.zod>
export type DatabaseFunctionsError = ResponseError
export const useDatabaseFunctionsQuery = <TData = DatabaseFunctionsData>(
{ projectRef, connectionString }: DatabaseFunctionsVariables,
{
enabled = true,
...options
}: UseQueryOptions<DatabaseFunctionsData, DatabaseFunctionsError, TData> = {}
) =>
useQuery<DatabaseFunctionsData, DatabaseFunctionsError, TData>(
databaseKeys.databaseFunctions(projectRef),
({ signal }) => getDatabaseFunctions({ projectRef, connectionString }, signal),
{
enabled: enabled && typeof projectRef !== 'undefined',
...options,
}
)