@@ -6,6 +6,8 @@ import ErrorMsg from '../components/ErrorHandling/ErrorMsg';
66import { useDispatch , useSelector } from 'react-redux' ;
77import { MainState , RootState , ErrorContainerProps } from '../FrontendTypes' ;
88import { current } from '@reduxjs/toolkit' ;
9+ import { RefreshCw , Github , PlayCircle } from 'lucide-react' ;
10+
911/*
1012This is the loading screen that a user may get when first initalizing the application. This page checks:
1113
@@ -107,38 +109,61 @@ function ErrorContainer(props: ErrorContainerProps): JSX.Element {
107109
108110 return (
109111 < div className = 'error-container' >
110- < img src = '../assets/whiteBlackSquareLogo.png' alt = 'Reactime Logo' height = '50px' />
111-
112- < h2 > Launching Reactime on tab: { currentTitle } </ h2 >
113-
114- < div className = 'loaderChecks' >
115- < p > Checking if content script has been launched on current tab</ p >
116- < Loader loading = { loadingArray [ 0 ] } result = { status . contentScriptLaunched } />
117-
118- < p > Checking if React Dev Tools has been installed</ p >
119- < Loader loading = { loadingArray [ 1 ] } result = { status . reactDevToolsInstalled } />
120-
121- < p > Checking if target is a compatible React app</ p >
122- < Loader loading = { loadingArray [ 2 ] } result = { status . targetPageisaReactApp } />
123- </ div >
124-
125- < br />
126- < div className = 'errorMsg' >
127- < ErrorMsg
128- loadingArray = { loadingArray }
129- status = { status }
130- launchContent = { launch }
131- reinitialize = { reinitialize }
132- />
112+ < img src = '../assets/whiteBlackSquareLogo.png' alt = 'Reactime Logo' className = 'error-logo' />
113+
114+ < div className = 'error-content' >
115+ < div className = 'error-alert' >
116+ < div className = 'error-title' >
117+ < RefreshCw size = { 20 } />
118+ Welcome to Reactime
119+ </ div >
120+
121+ < div className = 'loaderChecks' >
122+ < p > Checking if content script has been launched on current tab</ p >
123+ < Loader loading = { loadingArray [ 0 ] } result = { status . contentScriptLaunched } />
124+
125+ < p > Checking if React Dev Tools has been installed</ p >
126+ < Loader loading = { loadingArray [ 1 ] } result = { status . reactDevToolsInstalled } />
127+
128+ < p > Checking if target is a compatible React app</ p >
129+ < Loader loading = { loadingArray [ 2 ] } result = { status . targetPageisaReactApp } />
130+ </ div >
131+
132+ < p className = 'error-description' >
133+ To ensure Reactime works correctly with your React application, please refresh your
134+ development page. This allows Reactime to properly connect with your app and start
135+ monitoring state changes.
136+ </ p >
137+ < p className = 'error-description' >
138+ Important: Reactime requires React Developer Tools to be installed. If you haven't
139+ already, please{ ' ' }
140+ < a
141+ href = 'https://chrome.google.com/webstore/detail/react-developer-tools/fmkadmapgofadopljbjfkapdkoienihi?hl=en'
142+ target = '_blank'
143+ rel = 'noopener noreferrer'
144+ className = 'devtools-link'
145+ >
146+ install React Developer Tools
147+ </ a > { ' ' }
148+ first.
149+ </ p >
150+ </ div >
151+
152+ < p className = 'error-note' >
153+ Note: Reactime only works with React applications and by default only launches on URLs
154+ starting with localhost.
155+ </ p >
156+
157+ < a
158+ href = 'https://github.com/open-source-labs/reactime'
159+ target = '_blank'
160+ rel = 'noopener noreferrer'
161+ className = 'github-link'
162+ >
163+ < Github size = { 18 } />
164+ Visit Reactime Github for more information
165+ </ a >
133166 </ div >
134- < br />
135- < a
136- href = 'https://github.com/open-source-labs/reactime'
137- target = '_blank'
138- rel = 'noopener noreferrer'
139- >
140- Please visit the Reactime Github for more info.
141- </ a >
142167 </ div >
143168 ) ;
144169}
0 commit comments