@@ -9,6 +9,8 @@ import styled from "styled-components";
9
9
import { Button , LoadingButton } from "components" ;
10
10
11
11
import { useConfig } from "config" ;
12
+ import { Action , Namespace } from "core/analytics" ;
13
+ import { useAnalyticsService } from "hooks/services/Analytics" ;
12
14
import { useCurrentWorkspace } from "hooks/services/useWorkspace" ;
13
15
import { CloudWorkspace } from "packages/cloud/lib/domain/cloudWorkspaces/types" ;
14
16
import { useStripeCheckout } from "packages/cloud/services/stripe/StripeService" ;
@@ -67,6 +69,7 @@ const RemainingCredits: React.FC<Props> = ({ selfServiceCheckoutEnabled }) => {
67
69
const [ searchParams , setSearchParams ] = useSearchParams ( ) ;
68
70
const invalidateWorkspace = useInvalidateCloudWorkspace ( currentWorkspace . workspaceId ) ;
69
71
const { isLoading, mutateAsync : createCheckout } = useStripeCheckout ( ) ;
72
+ const analytics = useAnalyticsService ( ) ;
70
73
const [ isWaitingForCredits , setIsWaitingForCredits ] = useState ( false ) ;
71
74
72
75
useEffectOnce ( ( ) => {
@@ -107,6 +110,9 @@ const RemainingCredits: React.FC<Props> = ({ selfServiceCheckoutEnabled }) => {
107
110
successUrl : successUrl . href ,
108
111
cancelUrl : window . location . href ,
109
112
} ) ;
113
+ await analytics . track ( Namespace . CREDITS , Action . CHECKOUT_START , {
114
+ actionDescription : "Checkout Start" ,
115
+ } ) ;
110
116
// Forward to stripe as soon as we created a checkout session successfully
111
117
window . location . assign ( stripeUrl ) ;
112
118
} ;
0 commit comments