lbry-desktop/ui/component/fileViewCount/view.jsx

34 lines
828 B
React
Raw Normal View History

2020-01-06 13:32:35 -05:00
// @flow
import React from 'react';
2020-01-06 13:32:35 -05:00
import HelpLink from 'component/common/help-link';
type Props = {
claim: ?StreamClaim,
fetchViewCount: (string) => void,
2021-06-17 14:55:23 -04:00
fetchingViewCount: boolean,
uri: string,
2020-01-06 13:32:35 -05:00
viewCount: string,
};
2020-01-06 15:57:49 -05:00
function FileViewCount(props: Props) {
2021-10-19 00:49:51 -04:00
const { claim, uri, fetchViewCount, viewCount } = props;
const claimId = claim && claim.claim_id;
React.useEffect(() => {
if (claimId) {
fetchViewCount(claimId);
}
}, [fetchViewCount, uri, claimId]);
2020-01-06 13:32:35 -05:00
2020-05-25 12:19:15 -04:00
const formattedViewCount = Number(viewCount).toLocaleString();
2020-01-06 13:32:35 -05:00
return (
2020-09-30 16:46:20 -04:00
<span className="media__subtitle--centered">
2021-10-19 00:49:51 -04:00
{viewCount !== 1 ? __('%view_count% views', { view_count: formattedViewCount }) : __('1 view')}
2021-10-18 19:37:58 -04:00
{<HelpLink href="https://lbry.com/faq/views" />}
2020-01-06 13:32:35 -05:00
</span>
);
}
2020-01-06 15:57:49 -05:00
export default FileViewCount;