organizationSettingsLayout.tsx 953 B

12345678910111213141516171819202122232425262728293031323334
  1. import {Fragment} from 'react';
  2. import type {RouteComponentProps} from 'sentry/types/legacyReactRouter';
  3. import useOrganization from 'sentry/utils/useOrganization';
  4. import SettingsLayout from 'sentry/views/settings/components/settingsLayout';
  5. import OrganizationSettingsNavigation from 'sentry/views/settings/organization/organizationSettingsNavigation';
  6. type Props = RouteComponentProps<{}, {}> & {
  7. children: React.ReactNode;
  8. };
  9. function OrganizationSettingsLayout(props: Props) {
  10. const organization = useOrganization();
  11. const hasNavigationV2 = organization?.features.includes('navigation-sidebar-v2');
  12. if (hasNavigationV2) {
  13. return (
  14. <Fragment>
  15. <OrganizationSettingsNavigation />
  16. <SettingsLayout {...props} />
  17. </Fragment>
  18. );
  19. }
  20. return (
  21. <SettingsLayout
  22. {...props}
  23. renderNavigation={() => <OrganizationSettingsNavigation />}
  24. />
  25. );
  26. }
  27. export default OrganizationSettingsLayout;