legalAndCompliance.tsx 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import Panel from 'sentry/components/panels/panel';
  2. import PanelHeader from 'sentry/components/panels/panelHeader';
  3. import SentryDocumentTitle from 'sentry/components/sentryDocumentTitle';
  4. import {t} from 'sentry/locale';
  5. import type {RouteComponentProps} from 'sentry/types/legacyReactRouter';
  6. import type {Organization} from 'sentry/types/organization';
  7. import withOrganization from 'sentry/utils/withOrganization';
  8. import SettingsPageHeader from 'sentry/views/settings/components/settingsPageHeader';
  9. import {OrganizationRegionAction} from 'sentry/views/settings/organizationGeneralSettings/organizationRegionAction';
  10. import withSubscription from 'getsentry/components/withSubscription';
  11. import type {Subscription} from 'getsentry/types';
  12. import {GDPRPanel} from 'getsentry/views/legalAndCompliance/gdprPanel';
  13. import {TermsAndConditions} from 'getsentry/views/legalAndCompliance/termsAndConditions';
  14. import {BillingDetailsFormContainer} from 'getsentry/views/subscriptionPage/billingDetails';
  15. type Props = RouteComponentProps<unknown, unknown> & {
  16. organization: Organization;
  17. subscription: Subscription;
  18. };
  19. function LegalAndCompliance(props: Props) {
  20. return (
  21. <div>
  22. <SentryDocumentTitle title={t('Legal & Compliance')} />
  23. <SettingsPageHeader
  24. title="Legal & Compliance"
  25. action={OrganizationRegionAction({organization: props.organization})}
  26. />
  27. <TermsAndConditions {...props} />
  28. <GDPRPanel subscription={props.subscription} />
  29. <Panel>
  30. <PanelHeader>{t('Company Details')}</PanelHeader>
  31. <BillingDetailsFormContainer organization={props.organization} />
  32. </Panel>
  33. </div>
  34. );
  35. }
  36. export default withOrganization(withSubscription(LegalAndCompliance));