diff --git a/src/visits/ShortUrlVisits.js b/src/visits/ShortUrlVisits.js index 410d390b..6882e478 100644 --- a/src/visits/ShortUrlVisits.js +++ b/src/visits/ShortUrlVisits.js @@ -21,6 +21,9 @@ import { shortUrlDetailType } from './reducers/shortUrlDetail'; import VisitsTable from './VisitsTable'; const propTypes = { + history: PropTypes.shape({ + goBack: PropTypes.func, + }), match: PropTypes.shape({ params: PropTypes.object, }), @@ -53,6 +56,7 @@ let selectedBar; const ShortUrlVisits = ({ processStatsFromVisits, normalizeVisits }, OpenMapModalBtn) => { const ShortUrlVisitsComp = ({ + history, match, location, shortUrlVisits, @@ -204,7 +208,7 @@ const ShortUrlVisits = ({ processStatsFromVisits, normalizeVisits }, OpenMapModa return ( - +
diff --git a/src/visits/VisitsHeader.js b/src/visits/VisitsHeader.js index e13398dc..84752c1c 100644 --- a/src/visits/VisitsHeader.js +++ b/src/visits/VisitsHeader.js @@ -1,7 +1,10 @@ -import { Card, UncontrolledTooltip } from 'reactstrap'; +import { Button, Card, UncontrolledTooltip } from 'reactstrap'; import Moment from 'react-moment'; import React from 'react'; +import PropTypes from 'prop-types'; import { ExternalLink } from 'react-external-link'; +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { faArrowLeft } from '@fortawesome/free-solid-svg-icons'; import ShortUrlVisitsCount from '../short-urls/helpers/ShortUrlVisitsCount'; import { shortUrlDetailType } from './reducers/shortUrlDetail'; import { shortUrlVisitsType } from './reducers/shortUrlVisits'; @@ -10,9 +13,10 @@ import './VisitsHeader.scss'; const propTypes = { shortUrlDetail: shortUrlDetailType.isRequired, shortUrlVisits: shortUrlVisitsType.isRequired, + goBack: PropTypes.func.isRequired, }; -export default function VisitsHeader({ shortUrlDetail, shortUrlVisits }) { +export default function VisitsHeader({ shortUrlDetail, shortUrlVisits, goBack }) { const { shortUrl, loading } = shortUrlDetail; const { visits } = shortUrlVisits; const shortLink = shortUrl && shortUrl.shortUrl ? shortUrl.shortUrl : ''; @@ -26,17 +30,28 @@ export default function VisitsHeader({ shortUrlDetail, shortUrlVisits }) { ); + const visitsStatsTitle = ( + + Visit stats for + + ); return (
-

- +

+ + + {visitsStatsTitle} + + Visits:{' '} - Visit stats for

+

{visitsStatsTitle}


Created: {renderDate()}
diff --git a/test/visits/ShortUrlVisits.test.js b/test/visits/ShortUrlVisits.test.js index ad8743a1..0f221308 100644 --- a/test/visits/ShortUrlVisits.test.js +++ b/test/visits/ShortUrlVisits.test.js @@ -18,6 +18,9 @@ describe('', () => { params: { shortCode: 'abc123' }, }; const location = { search: '' }; + const history = { + goBack: jest.fn(), + }; const createComponent = (shortUrlVisits) => { const ShortUrlVisits = createShortUrlVisits({ processStatsFromVisits, normalizeVisits: identity }, () => ''); @@ -28,6 +31,7 @@ describe('', () => { getShortUrlVisits={getShortUrlVisitsMock} match={match} location={location} + history={history} shortUrlVisits={shortUrlVisits} shortUrlDetail={{}} cancelGetShortUrlVisits={identity} diff --git a/test/visits/VisitsHeader.test.js b/test/visits/VisitsHeader.test.js index 3d4b48dd..8c151c4b 100644 --- a/test/visits/VisitsHeader.test.js +++ b/test/visits/VisitsHeader.test.js @@ -17,9 +17,10 @@ describe('', () => { const shortUrlVisits = { visits: [{}, {}, {}], }; + const goBack = jest.fn(); beforeEach(() => { - wrapper = shallow(); + wrapper = shallow(); }); afterEach(() => wrapper.unmount());