lrytv sunset nag
This commit is contained in:
parent
ddb4c051ee
commit
2a19f9f63c
2 changed files with 36 additions and 0 deletions
|
@ -48,9 +48,11 @@ const NagDegradedPerformance = lazyImport(() =>
|
|||
import('web/component/nag-degraded-performance' /* webpackChunkName: "secondary" */)
|
||||
);
|
||||
const NagNoUser = lazyImport(() => import('web/component/nag-no-user' /* webpackChunkName: "nag-no-user" */));
|
||||
const NagSunset = lazyImport(() => import('web/component/nag-sunset' /* webpackChunkName: "nag-no-user" */));
|
||||
const YoutubeWelcome = lazyImport(() =>
|
||||
import('web/component/youtubeReferralWelcome' /* webpackChunkName: "secondary" */)
|
||||
);
|
||||
|
||||
// @endif
|
||||
|
||||
const SyncFatalError = lazyImport(() => import('component/syncFatalError' /* webpackChunkName: "syncFatalError" */));
|
||||
|
@ -162,12 +164,14 @@ function App(props: Props) {
|
|||
const [upgradeNagClosed, setUpgradeNagClosed] = useState(false);
|
||||
const [resolvedSubscriptions, setResolvedSubscriptions] = useState(false);
|
||||
const [sidebarOpen] = usePersistedState('sidebar', true);
|
||||
const [seenSunsestMessage, setSeenSunsetMessage] = usePersistedState('lbrytv-sunset', false);
|
||||
const showUpgradeButton =
|
||||
(autoUpdateDownloaded || (process.platform === 'linux' && isUpgradeAvailable)) && !upgradeNagClosed;
|
||||
// referral claiming
|
||||
const referredRewardAvailable = rewards && rewards.some((reward) => reward.reward_type === REWARDS.TYPE_REFEREE);
|
||||
const urlParams = new URLSearchParams(search);
|
||||
const rawReferrerParam = urlParams.get('r');
|
||||
const fromLbrytvParam = urlParams.get('sunset');
|
||||
const sanitizedReferrerParam = rawReferrerParam && rawReferrerParam.replace(':', '#');
|
||||
const shouldHideNag = pathname.startsWith(`/$/${PAGES.EMBED}`) || pathname.startsWith(`/$/${PAGES.AUTH_VERIFY}`);
|
||||
const userId = user && user.id;
|
||||
|
@ -460,6 +464,9 @@ function App(props: Props) {
|
|||
<YoutubeWelcome />
|
||||
{!SIMPLE_SITE && !shouldHideNag && <OpenInAppLink uri={uri} />}
|
||||
{!shouldHideNag && <NagContinueFirstRun />}
|
||||
{!SIMPLE_SITE && fromLbrytvParam && !seenSunsestMessage && !shouldHideNag && (
|
||||
<NagSunset email={hasVerifiedEmail} onClose={() => setSeenSunsetMessage(true)} />
|
||||
)}
|
||||
{(lbryTvApiStatus === STATUS_DEGRADED || lbryTvApiStatus === STATUS_FAILING) && !shouldHideNag && (
|
||||
<NagDegradedPerformance onClose={() => setLbryTvApiStatus(STATUS_OK)} />
|
||||
)}
|
||||
|
|
29
web/component/nag-sunset.jsx
Normal file
29
web/component/nag-sunset.jsx
Normal file
|
@ -0,0 +1,29 @@
|
|||
// @flow
|
||||
import React from 'react';
|
||||
import Nag from 'component/common/nag';
|
||||
import I18nMessage from 'component/i18nMessage';
|
||||
import * as PAGES from 'constants/pages';
|
||||
import { useHistory } from 'react-router';
|
||||
|
||||
type Props = {
|
||||
email?: User,
|
||||
onClose: () => void,
|
||||
};
|
||||
export default function NagSunset(props: Props) {
|
||||
const { email, onClose } = props;
|
||||
const { push } = useHistory();
|
||||
|
||||
const handleOnClick = () => {
|
||||
onClose();
|
||||
push(`/$/${PAGES.AUTH_SIGNIN}`);
|
||||
};
|
||||
return (
|
||||
<Nag
|
||||
type="helpful"
|
||||
message={<I18nMessage>lbry.tv has been retired. You have been magically transported to odysee.com</I18nMessage>}
|
||||
actionText={__('Sign In')}
|
||||
onClick={!email ? handleOnClick : undefined}
|
||||
onClose={onClose}
|
||||
/>
|
||||
);
|
||||
}
|
Loading…
Reference in a new issue