learnMoreButton.tsx 919 B

123456789101112131415161718192021222324252627282930313233
  1. import {LinkButton} from 'sentry/components/button';
  2. import {t} from 'sentry/locale';
  3. import type {Organization} from 'sentry/types/organization';
  4. import trackGetsentryAnalytics from 'getsentry/utils/trackGetsentryAnalytics';
  5. const learnMoreClicked = ({
  6. source,
  7. organization,
  8. }: Pick<Props, 'source' | 'organization'>) =>
  9. trackGetsentryAnalytics('learn_more_link.clicked', {
  10. organization,
  11. source,
  12. });
  13. type Props = React.PropsWithChildren<{
  14. organization: Organization;
  15. source: string;
  16. analyticsData?: Record<string, any>;
  17. 'aria-label'?: string;
  18. children?: React.ReactChild;
  19. }> &
  20. React.ComponentProps<typeof LinkButton>;
  21. function LearnMoreButton({organization, source, children, ...props}: Props) {
  22. return (
  23. <LinkButton onClick={() => learnMoreClicked({source, organization})} {...props}>
  24. {children || t('Learn More')}
  25. </LinkButton>
  26. );
  27. }
  28. export default LearnMoreButton;