diff --git a/client/src/client-only-routes/ShowProfileOrFourOhFour.js b/client/src/client-only-routes/ShowProfileOrFourOhFour.js index 0b6b49cbe0..e164c727e4 100644 --- a/client/src/client-only-routes/ShowProfileOrFourOhFour.js +++ b/client/src/client-only-routes/ShowProfileOrFourOhFour.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import { connect } from 'react-redux'; import { isEmpty } from 'lodash-es'; -import Loader from '../components/helpers/Loader'; +import Loader from '../components/helpers/loader'; import { userByNameSelector, userProfileFetchStateSelector, diff --git a/client/src/components/helpers/index.js b/client/src/components/helpers/index.js index 3d3f1830bb..b4647b906a 100644 --- a/client/src/components/helpers/index.js +++ b/client/src/components/helpers/index.js @@ -1,7 +1,7 @@ export { default as ButtonSpacer } from './ButtonSpacer'; export { default as FullWidthRow } from './FullWidthRow'; export { default as SlimWidthRow } from './slim-width-row'; -export { default as Loader } from './Loader'; +export { default as Loader } from './loader'; export { default as SkeletonSprite } from './skeleton-sprite'; export { default as Spacer } from './spacer'; export { default as Link } from './Link'; diff --git a/client/src/components/helpers/loader.test.tsx b/client/src/components/helpers/loader.test.tsx index 614f19d375..a06299fa10 100644 --- a/client/src/components/helpers/loader.test.tsx +++ b/client/src/components/helpers/loader.test.tsx @@ -2,7 +2,7 @@ import React from 'react'; import { render, cleanup } from '@testing-library/react'; -import Loader from './Loader'; +import Loader from './loader'; describe('', () => { afterEach(cleanup); diff --git a/client/src/components/helpers/loader.tsx b/client/src/components/helpers/loader.tsx index 8bd5a55f3a..e39561e7d9 100644 --- a/client/src/components/helpers/loader.tsx +++ b/client/src/components/helpers/loader.tsx @@ -1,13 +1,16 @@ import React, { useState, useEffect } from 'react'; -import PropTypes from 'prop-types'; import Spinner from 'react-spinkit'; import './loader.css'; -function Loader({ fullScreen, timeout }) { +interface LoaderProps { + fullScreen?: boolean; + timeout?: number; +} +function Loader({ fullScreen, timeout }: LoaderProps): JSX.Element { const [showSpinner, setShowSpinner] = useState(!timeout); useEffect(() => { - let timerId; + let timerId: ReturnType; if (!showSpinner) { timerId = setTimeout(() => setShowSpinner(true), timeout); } @@ -21,9 +24,5 @@ function Loader({ fullScreen, timeout }) { } Loader.displayName = 'Loader'; -Loader.propTypes = { - fullScreen: PropTypes.bool, - timeout: PropTypes.number -}; export default Loader; diff --git a/client/src/templates/Challenges/video/Show.js b/client/src/templates/Challenges/video/Show.js index 0d822e0aa0..fb33277581 100644 --- a/client/src/templates/Challenges/video/Show.js +++ b/client/src/templates/Challenges/video/Show.js @@ -20,7 +20,7 @@ import ChallengeDescription from '../components/Challenge-Description'; import Spacer from '../../../components/helpers/spacer'; import CompletionModal from '../components/CompletionModal'; import Hotkeys from '../components/Hotkeys'; -import Loader from '../../../components/helpers/Loader'; +import Loader from '../../../components/helpers/loader'; import { isChallengeCompletedSelector, challengeMounted,