index.tsx 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import Form from 'sentry/components/forms/form';
  2. import ExternalLink from 'sentry/components/links/externalLink';
  3. import NarrowLayout from 'sentry/components/narrowLayout';
  4. import {t, tct} from 'sentry/locale';
  5. import type {PartnershipAgreementProps} from 'sentry/types/hooks';
  6. export default function PartnershipAgreement({
  7. partnerDisplayName,
  8. agreements,
  9. onSubmitSuccess,
  10. organizationSlug,
  11. }: PartnershipAgreementProps) {
  12. const tos = (
  13. <ExternalLink href="https://sentry.io/terms/">terms of service</ExternalLink>
  14. );
  15. const privacyPolicy = (
  16. <ExternalLink href="https://sentry.io/privacy/">privacy policy</ExternalLink>
  17. );
  18. return (
  19. <NarrowLayout>
  20. <Form
  21. apiMethod="POST"
  22. apiEndpoint={`/organizations/${organizationSlug}/partnership-agreements/`}
  23. submitLabel={t('Continue')}
  24. onSubmitSuccess={onSubmitSuccess}
  25. >
  26. {agreements.includes('partner_presence')
  27. ? tct(
  28. "This organization is created in partnership with [partnerDisplayName]. By pressing continue, you acknowledge that you have agreed to Sentry's [tos] and [privacyPolicy] through [partnerDisplayName] and are aware of the partner's presence in the organization as a manager.",
  29. {partnerDisplayName, tos, privacyPolicy}
  30. )
  31. : tct(
  32. "This organization is created in partnership with [partnerDisplayName]. By pressing continue, you acknowledge that you have agreed to Sentry's [tos] and [privacyPolicy] through [partnerDisplayName].",
  33. {partnerDisplayName, tos, privacyPolicy}
  34. )}
  35. </Form>
  36. </NarrowLayout>
  37. );
  38. }