diff --git a/client/src/App/App.container.jsx b/client/src/App/App.container.jsx index fb1dcd800..74f6ba4df 100644 --- a/client/src/App/App.container.jsx +++ b/client/src/App/App.container.jsx @@ -2,7 +2,6 @@ import { ApolloProvider } from "@apollo/client"; import { SplitFactory, SplitSdk } from "@splitsoftware/splitio-react"; import { ConfigProvider } from "antd"; import enLocale from "antd/es/locale/en_US"; -import LogRocket from "logrocket"; import moment from "moment"; import React from "react"; import { useTranslation } from "react-i18next"; @@ -10,13 +9,8 @@ import GlobalLoadingBar from "../components/global-loading-bar/global-loading-ba import client from "../utils/GraphQLClient"; import App from "./App"; - moment.locale("en-US"); - -//tracker.start(); -if (process.env.NODE_ENV === "production") LogRocket.init("gvfvfw/bodyshopapp"); - export const factory = SplitSdk({ core: { authorizationKey: process.env.REACT_APP_SPLIT_API, diff --git a/client/src/App/App.jsx b/client/src/App/App.jsx index 6a2bf774a..7a3970a06 100644 --- a/client/src/App/App.jsx +++ b/client/src/App/App.jsx @@ -6,6 +6,8 @@ import { Route, Switch } from "react-router-dom"; import { createStructuredSelector } from "reselect"; import DocumentEditorContainer from "../components/document-editor/document-editor.container"; import ErrorBoundary from "../components/error-boundary/error-boundary.component"; +import LogRocket from "logrocket"; + //Component Imports import LoadingSpinner from "../components/loading-spinner/loading-spinner.component"; import DisclaimerPage from "../pages/disclaimer/disclaimer.page"; @@ -13,11 +15,15 @@ import TechPageContainer from "../pages/tech/tech.page.container"; import { setOnline } from "../redux/application/application.actions"; import { selectOnline } from "../redux/application/application.selectors"; import { checkUserSession } from "../redux/user/user.actions"; -import { selectCurrentUser } from "../redux/user/user.selectors"; +import { + selectBodyshop, + selectCurrentUser, +} from "../redux/user/user.selectors"; import PrivateRoute from "../utils/private-route"; import "./App.styles.scss"; import LandingPage from "../pages/landing/landing.page"; +import { useTreatments } from "@splitsoftware/splitio-react"; const ResetPassword = lazy(() => import("../pages/reset-password/reset-password.component") ); @@ -32,13 +38,31 @@ const MobilePaymentContainer = lazy(() => const mapStateToProps = createStructuredSelector({ currentUser: selectCurrentUser, online: selectOnline, + bodyshop: selectBodyshop, }); const mapDispatchToProps = (dispatch) => ({ checkUserSession: () => dispatch(checkUserSession()), setOnline: (isOnline) => dispatch(setOnline(isOnline)), }); -export function App({ checkUserSession, currentUser, online, setOnline }) { +export function App({ + bodyshop, + checkUserSession, + currentUser, + online, + setOnline, +}) { + const { LogRocket_Tracking } = useTreatments( + ["LogRocket_Tracking"], + {}, + bodyshop && bodyshop.imexshopid + ); + + console.log( + "🚀 ~ file: App.jsx ~ line 56 ~ LogRocket_Tracking", + LogRocket_Tracking + ); + useEffect(() => { if (!navigator.onLine) { setOnline(false); @@ -59,6 +83,16 @@ export function App({ checkUserSession, currentUser, online, setOnline }) { window.addEventListener("online", function (e) { setOnline(true); }); + useEffect(() => { + if (currentUser.authorized) { + if ( + process.env.NODE_ENV === "production" && + LogRocket_Tracking.treatment === "on" + ) { + LogRocket.init("gvfvfw/bodyshopapp"); + } + } + }, [currentUser.authorized, LogRocket_Tracking.treatment]); if (currentUser.authorized === null) { return ;