index.tsx 1.0 KB

12345678910111213141516171819202122232425262728293031
  1. import {cloneElement, isValidElement} from 'react';
  2. import Feature from 'app/components/acl/feature';
  3. import NoProjectMessage from 'app/components/noProjectMessage';
  4. import SentryDocumentTitle from 'app/components/sentryDocumentTitle';
  5. import {t} from 'app/locale';
  6. import {Organization} from 'app/types';
  7. import withOrganization from 'app/utils/withOrganization';
  8. type Props = {
  9. organization: Organization;
  10. children?: React.ReactNode;
  11. };
  12. function TeamInsightsContainer({children, organization}: Props) {
  13. return (
  14. <Feature organization={organization} features={['team-insights']}>
  15. <NoProjectMessage organization={organization}>
  16. <SentryDocumentTitle title={t('Project Reports')} orgSlug={organization.slug}>
  17. {children && isValidElement(children)
  18. ? cloneElement(children, {
  19. organization,
  20. })
  21. : children}
  22. </SentryDocumentTitle>
  23. </NoProjectMessage>
  24. </Feature>
  25. );
  26. }
  27. export default withOrganization(TeamInsightsContainer);