import { PostgresTrigger } from '@supabase/postgres-meta' import { PermissionAction } from '@supabase/shared-types/out/constants' import { useState } from 'react' import DeleteHookModal from 'components/interfaces/Database/Hooks/DeleteHookModal' import { EditHookPanel } from 'components/interfaces/Database/Hooks/EditHookPanel' import { HooksList } from 'components/interfaces/Database/Hooks/HooksList/HooksList' import NoPermission from 'components/ui/NoPermission' import { useAsyncCheckProjectPermissions } from 'hooks/misc/useCheckPermissions' export const WebhooksListTab = () => { const [selectedHook, setSelectedHook] = useState() const [showCreateHookForm, setShowCreateHookForm] = useState(false) const [showDeleteHookForm, setShowDeleteHookForm] = useState(false) const { can: canReadWebhooks, isSuccess: isPermissionsLoaded } = useAsyncCheckProjectPermissions( PermissionAction.TENANT_SQL_ADMIN_READ, 'triggers' ) const createHook = () => { setSelectedHook(undefined) setShowCreateHookForm(true) } const editHook = (hook: PostgresTrigger) => { setSelectedHook(hook) setShowCreateHookForm(true) } const deleteHook = (hook: PostgresTrigger) => { setSelectedHook(hook) setShowDeleteHookForm(true) } if (isPermissionsLoaded && !canReadWebhooks) { return } return (
setShowCreateHookForm(false)} /> setShowDeleteHookForm(false)} />
) }