11import React , { useEffect } from 'react' ;
2- import TagManager , { TagManagerArgs } from 'react-gtm-module' ;
32import { Helmet } from 'react-helmet' ;
3+ import { useLocation } from 'react-router-dom' ;
44import { useAppSelector } from 'src/app/hooks' ;
55import { useActiveWorkspace } from 'src/hooks/useActiveWorkspace' ;
6- import { isDev } from './isDevEnvironment ' ;
6+ import { useAnalytics } from 'use-analytics ' ;
77
8- const tagManagerArgs : TagManagerArgs = {
9- gtmId : process . env . REACT_APP_GTM_ID || 'GTM-WVXPS94' ,
10- ...( isDev ( ) && {
11- auth : 'HjeAxSQB9e685mi-_8YiDw' ,
12- preview : 'env-4' ,
13- } ) ,
14- events : {
15- unguess_loaded : 'unguess_loaded' ,
16- workspace_change : 'workspace_change' ,
17- generic_error : 'generic_error' ,
18- } ,
19- } ;
20- TagManager . initialize ( tagManagerArgs ) ;
8+ // const tagManagerArgs: TagManagerArgs = {
9+ // gtmId: process.env.REACT_APP_GTM_ID || 'GTM-WVXPS94',
10+ // ...(isDev() && {
11+ // auth: 'HjeAxSQB9e685mi-_8YiDw',
12+ // preview: 'env-4',
13+ // }),
14+ // events: {
15+ // unguess_loaded: 'unguess_loaded',
16+ // workspace_change: 'workspace_change',
17+ // generic_error: 'generic_error',
18+ // },
19+ // };
20+ // TagManager.initialize(tagManagerArgs);
2121
22- export const GoogleTagManager = ( {
22+ export const Track = ( {
2323 title,
2424 children,
2525} : {
@@ -28,6 +28,12 @@ export const GoogleTagManager = ({
2828} ) => {
2929 const { userData } = useAppSelector ( ( state ) => state . user ) ;
3030 const { activeWorkspace } = useActiveWorkspace ( ) ;
31+ const { track, identify, page } = useAnalytics ( ) ;
32+ const location = useLocation ( ) ;
33+
34+ useEffect ( ( ) => {
35+ page ( ) ;
36+ } , [ location ] ) ;
3137
3238 const helmet = ( ) => (
3339 < Helmet >
@@ -39,19 +45,24 @@ export const GoogleTagManager = ({
3945
4046 useEffect ( ( ) => {
4147 if ( userData ?. role && activeWorkspace ?. company ) {
42- const tagManagerDataLayer = {
48+ identify ( `profile_ ${ userData . profile_id } ` , {
4349 role : userData . role ,
4450 customer_role : userData . customer_role ,
4551 wp_user_id : userData . tryber_wp_user_id ,
4652 tester_id : userData . profile_id ,
4753 name : userData . name ,
4854 email : userData . email ,
4955 company : activeWorkspace . company ,
50- event : 'unguess_loaded' ,
51- } ;
56+ } ) ;
5257
53- TagManager . dataLayer ( {
54- dataLayer : tagManagerDataLayer ,
58+ track ( 'unguess_loaded' , {
59+ role : userData . role ,
60+ customer_role : userData . customer_role ,
61+ wp_user_id : userData . tryber_wp_user_id ,
62+ tester_id : userData . profile_id ,
63+ name : userData . name ,
64+ email : userData . email ,
65+ company : activeWorkspace . company ,
5566 } ) ;
5667 }
5768 } , [ userData , activeWorkspace ] ) ;
0 commit comments