2020-02-26 19:39:03 +01:00
|
|
|
// @flow
|
2020-03-12 02:43:52 +01:00
|
|
|
import React, { useEffect } from 'react';
|
2020-02-26 19:39:03 +01:00
|
|
|
import ClaimListDiscover from 'component/claimListDiscover';
|
2020-02-10 20:43:24 +01:00
|
|
|
import * as CS from 'constants/claim_search';
|
2020-02-26 19:39:03 +01:00
|
|
|
import Nag from 'component/common/nag';
|
2020-03-12 02:43:52 +01:00
|
|
|
import { parseURI } from 'lbry-redux';
|
|
|
|
import Button from 'component/button';
|
|
|
|
import { Form } from 'component/common/form-components/form';
|
2020-02-26 19:39:03 +01:00
|
|
|
|
|
|
|
type Props = {
|
|
|
|
subscribedChannels: Array<Subscription>,
|
|
|
|
onContinue: () => void,
|
2020-03-12 02:43:52 +01:00
|
|
|
onBack: () => void,
|
|
|
|
channelSubscribe: (sub: Subscription) => void,
|
2020-02-26 19:39:03 +01:00
|
|
|
};
|
|
|
|
|
2020-03-12 02:43:52 +01:00
|
|
|
const LBRYURI = 'lbry://@lbry#3fda836a92faaceedfe398225fb9b2ee2ed1f01a';
|
2020-02-26 19:39:03 +01:00
|
|
|
function UserChannelFollowIntro(props: Props) {
|
2020-03-12 02:43:52 +01:00
|
|
|
const { subscribedChannels, channelSubscribe, onContinue, onBack } = props;
|
2020-02-26 19:39:03 +01:00
|
|
|
const followingCount = (subscribedChannels && subscribedChannels.length) || 0;
|
|
|
|
|
2020-03-12 02:43:52 +01:00
|
|
|
// subscribe to lbry
|
|
|
|
useEffect(() => {
|
|
|
|
channelSubscribe({
|
|
|
|
channelName: parseURI(LBRYURI).claimName,
|
|
|
|
uri: LBRYURI,
|
|
|
|
});
|
|
|
|
}, []);
|
|
|
|
|
2020-02-26 19:39:03 +01:00
|
|
|
return (
|
|
|
|
<React.Fragment>
|
|
|
|
<h1 className="section__title--large">{__('Find Channels to Follow')}</h1>
|
|
|
|
<p className="section__subtitle">
|
|
|
|
{__(
|
|
|
|
'LBRY works better if you find and follow at least 5 creators you like. You can also block channels you never want to see.'
|
|
|
|
)}
|
|
|
|
</p>
|
2020-03-12 02:43:52 +01:00
|
|
|
<Form onSubmit={onContinue} className="section__body">
|
|
|
|
<div className="card__actions">
|
|
|
|
<Button button="secondary" onClick={onBack} label={__('Back')} />
|
|
|
|
<Button
|
|
|
|
button="primary"
|
|
|
|
type="Submit"
|
|
|
|
onClick={onContinue}
|
|
|
|
label={__('Continue')}
|
|
|
|
disabled={subscribedChannels.length < 2}
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
</Form>
|
2020-02-26 20:20:38 +01:00
|
|
|
<div className="section__body">
|
2020-02-10 20:43:24 +01:00
|
|
|
<ClaimListDiscover
|
2020-03-01 23:51:21 +01:00
|
|
|
defaultOrderBy={CS.ORDER_BY_TOP}
|
|
|
|
defaultFreshness={CS.FRESH_ALL}
|
2020-02-10 20:43:24 +01:00
|
|
|
claimType="channel"
|
|
|
|
hideBlock
|
2020-03-12 02:43:52 +01:00
|
|
|
defaultTags={CS.TAGS_FOLLOWED}
|
2020-02-10 20:43:24 +01:00
|
|
|
/>
|
2020-02-26 20:20:38 +01:00
|
|
|
{followingCount > 0 && (
|
|
|
|
<Nag
|
|
|
|
type="helpful"
|
|
|
|
message={
|
|
|
|
followingCount === 1
|
|
|
|
? __('Nice! You are currently following %followingCount% creator', { followingCount })
|
|
|
|
: __('Nice! You are currently following %followingCount% creators', { followingCount })
|
|
|
|
}
|
|
|
|
actionText={__('Continue')}
|
|
|
|
onClick={onContinue}
|
|
|
|
/>
|
|
|
|
)}
|
|
|
|
</div>
|
2020-02-26 19:39:03 +01:00
|
|
|
</React.Fragment>
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
export default UserChannelFollowIntro;
|