import React, { useMemo } from 'react'; import { useAtLeastOnePermission } from '../../contexts/AuthorizationContext'; import { useRouteParameter } from '../../contexts/RouterContext'; import NotAuthorizedPage from '../../components/NotAuthorizedPage'; import IntegrationsPage from './IntegrationsPage'; import NewIntegrationsPage from './new/NewIntegrationsPage'; import EditIntegrationsPage from './edit/EditIntegrationsPage'; import OutgoingWebhookHistoryPage from './edit/OutgoingWebhookHistoryPage'; function IntegrationsRoute() { const canViewIntegrationsPage = useAtLeastOnePermission( useMemo(() => [ 'manage-incoming-integrations', 'manage-outgoing-integrations', 'manage-own-incoming-integrations', 'manage-own-outgoing-integrations', ], []), ); const context = useRouteParameter('context'); if (!canViewIntegrationsPage) { return ; } if (context === 'new') { return ; } if (context === 'edit') { return ; } if (context === 'history') { return ; } return ; } export default IntegrationsRoute;