diff --git a/src/pages/LoginPage/LoginButton.jsx b/src/pages/LoginPage/LoginButton.jsx
index b2c74655ce..3ea5e04ee4 100644
--- a/src/pages/LoginPage/LoginButton.jsx
+++ b/src/pages/LoginPage/LoginButton.jsx
@@ -1,5 +1,6 @@
import PropTypes from 'prop-types'
+import { eventTracker } from 'services/events/events'
import { useNavLinks } from 'services/navigation'
import { Theme, useThemeContext } from 'shared/ThemeContext'
import {
@@ -21,6 +22,15 @@ function LoginButton({ provider }) {
className="flex h-14 items-center rounded-sm border border-ds-gray-quaternary bg-ds-gray-primary font-semibold shadow hover:bg-ds-gray-secondary"
href={signIn.path({ to, provider })}
data-cy={'login-button'}
+ onClick={() => {
+ eventTracker().track({
+ type: 'Button Clicked',
+ properties: {
+ buttonName: `Login with ${providerName}`,
+ buttonLocation: 'Login Page',
+ },
+ })
+ }}
>
= ({ provider }) => {
const { signIn } = useNavLinks()
const to = `${window.location.protocol}//${window.location.host}/${provider}`
-
+ const providerName = providerToName(provider)
return (
)
diff --git a/src/pages/TermsOfService/TermsOfService.tsx b/src/pages/TermsOfService/TermsOfService.tsx
index 51ffa56c95..df7ee89d5f 100644
--- a/src/pages/TermsOfService/TermsOfService.tsx
+++ b/src/pages/TermsOfService/TermsOfService.tsx
@@ -8,6 +8,7 @@ import config from 'config'
import { SentryBugReporter } from 'sentry'
import umbrellaSvg from 'assets/svg/umbrella.svg'
+import { eventTracker } from 'services/events/events'
import { useInternalUser } from 'services/user'
import A from 'ui/A'
import Button from 'ui/Button'
@@ -275,6 +276,15 @@ export default function TermsOfService() {
})}
type="submit"
hook="user signed tos"
+ onClick={() => {
+ eventTracker().track({
+ type: 'Button Clicked',
+ properties: {
+ buttonName: 'Continue',
+ buttonLocation: 'Terms of Service',
+ },
+ })
+ }}
to={undefined}
>
Continue
diff --git a/src/services/events/types.ts b/src/services/events/types.ts
index 1684930172..0fe94b978e 100644
--- a/src/services/events/types.ts
+++ b/src/services/events/types.ts
@@ -1,4 +1,5 @@
import { Provider } from 'shared/api/helpers'
+import { providerToName } from 'shared/utils/provider'
//
// Add new events to the the Event union type below!
@@ -85,8 +86,16 @@ export abstract class EventTracker {
// Extend as needed.
//
+type ProviderName = ReturnType
+type SyncButtonName = `Sync with ${ProviderName}`
+type LoginButtonName = `Login with ${ProviderName}`
+
type ButtonName =
| 'Install GitHub App'
| 'Configure Repo'
| 'Open App Install Modal'
+ | 'Continue'
+ | SyncButtonName
+ | LoginButtonName
+
type PageName = 'Owner Page'