mirror of
https://github.com/supabase/supabase.git
synced 2026-10-17 15:19:08 +03:00
61 lines
1.9 KiB
TypeScript
61 lines
1.9 KiB
TypeScript
import { PermissionAction } from '@supabase/shared-types/out/constants'
|
|
|
|
import FunctionsList from 'components/interfaces/Database/Functions/FunctionsList/FunctionsList'
|
|
import DatabaseLayout from 'components/layouts/DatabaseLayout/DatabaseLayout'
|
|
import DefaultLayout from 'components/layouts/DefaultLayout'
|
|
import { DocsButton } from 'components/ui/DocsButton'
|
|
import NoPermission from 'components/ui/NoPermission'
|
|
import { useAsyncCheckPermissions } from 'hooks/misc/useCheckPermissions'
|
|
import { DOCS_URL } from 'lib/constants'
|
|
import type { NextPageWithLayout } from 'types'
|
|
import { PageContainer } from 'ui-patterns/PageContainer'
|
|
import {
|
|
PageHeader,
|
|
PageHeaderAside,
|
|
PageHeaderMeta,
|
|
PageHeaderSummary,
|
|
PageHeaderTitle,
|
|
} from 'ui-patterns/PageHeader'
|
|
import { PageSection, PageSectionContent } from 'ui-patterns/PageSection'
|
|
|
|
const DatabaseFunctionsPage: NextPageWithLayout = () => {
|
|
const { can: canReadFunctions, isSuccess: isPermissionsLoaded } = useAsyncCheckPermissions(
|
|
PermissionAction.TENANT_SQL_ADMIN_READ,
|
|
'functions'
|
|
)
|
|
|
|
if (isPermissionsLoaded && !canReadFunctions) {
|
|
return <NoPermission isFullPage resourceText="view database functions" />
|
|
}
|
|
|
|
return (
|
|
<>
|
|
<PageHeader size="large">
|
|
<PageHeaderMeta>
|
|
<PageHeaderSummary>
|
|
<PageHeaderTitle>Database Functions</PageHeaderTitle>
|
|
</PageHeaderSummary>
|
|
<PageHeaderAside>
|
|
<DocsButton href={`${DOCS_URL}/guides/database/functions`} />
|
|
</PageHeaderAside>
|
|
</PageHeaderMeta>
|
|
</PageHeader>
|
|
<PageContainer size="large">
|
|
<PageSection>
|
|
<PageSectionContent>
|
|
<FunctionsList />
|
|
</PageSectionContent>
|
|
</PageSection>
|
|
</PageContainer>
|
|
</>
|
|
)
|
|
}
|
|
|
|
DatabaseFunctionsPage.getLayout = (page) => (
|
|
<DefaultLayout>
|
|
<DatabaseLayout title="Database">{page}</DatabaseLayout>
|
|
</DefaultLayout>
|
|
)
|
|
|
|
export default DatabaseFunctionsPage
|