mirror of
https://github.com/Stremio/stremio-web.git
synced 2026-04-21 03:22:11 +00:00
fix(Intro): parse correct query params
This commit is contained in:
parent
0e75a6ceed
commit
2fbddee9ae
1 changed files with 7 additions and 9 deletions
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
const React = require('react');
|
const React = require('react');
|
||||||
const { useTranslation } = require('react-i18next');
|
const { useTranslation } = require('react-i18next');
|
||||||
const PropTypes = require('prop-types');
|
const { useSearchParams, useNavigate } = require('react-router-dom');
|
||||||
const classnames = require('classnames');
|
const classnames = require('classnames');
|
||||||
const { default: Icon } = require('@stremio/stremio-icons/react');
|
const { default: Icon } = require('@stremio/stremio-icons/react');
|
||||||
const { Modal } = require('stremio-router');
|
const { Modal } = require('stremio-router');
|
||||||
|
|
@ -20,7 +20,9 @@ const styles = require('./styles');
|
||||||
const SIGNUP_FORM = 'signup';
|
const SIGNUP_FORM = 'signup';
|
||||||
const LOGIN_FORM = 'login';
|
const LOGIN_FORM = 'login';
|
||||||
|
|
||||||
const Intro = ({ queryParams }) => {
|
const Intro = () => {
|
||||||
|
const [queryParams, setQueryParams] = useSearchParams();
|
||||||
|
const navigate = useNavigate();
|
||||||
const { core } = useServices();
|
const { core } = useServices();
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
const routeFocused = useRouteFocused();
|
const routeFocused = useRouteFocused();
|
||||||
|
|
@ -164,7 +166,7 @@ const Intro = ({ queryParams }) => {
|
||||||
dispatch({ type: 'error', error: 'You must accept the Terms of Service' });
|
dispatch({ type: 'error', error: 'You must accept the Terms of Service' });
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
window.location = '#/';
|
navigate('/');
|
||||||
}, [state.termsAccepted]);
|
}, [state.termsAccepted]);
|
||||||
const signup = React.useCallback(() => {
|
const signup = React.useCallback(() => {
|
||||||
if (typeof state.email !== 'string' || state.email.length === 0 || !emailRef.current.validity.valid) {
|
if (typeof state.email !== 'string' || state.email.length === 0 || !emailRef.current.validity.valid) {
|
||||||
|
|
@ -251,7 +253,7 @@ const Intro = ({ queryParams }) => {
|
||||||
}, []);
|
}, []);
|
||||||
const switchFormOnClick = React.useCallback(() => {
|
const switchFormOnClick = React.useCallback(() => {
|
||||||
const queryParams = new URLSearchParams([['form', state.form === SIGNUP_FORM ? LOGIN_FORM : SIGNUP_FORM]]);
|
const queryParams = new URLSearchParams([['form', state.form === SIGNUP_FORM ? LOGIN_FORM : SIGNUP_FORM]]);
|
||||||
window.location = `#/intro?${queryParams.toString()}`;
|
setQueryParams(queryParams);
|
||||||
}, [state.form]);
|
}, [state.form]);
|
||||||
React.useEffect(() => {
|
React.useEffect(() => {
|
||||||
if ([LOGIN_FORM, SIGNUP_FORM].includes(queryParams.get('form'))) {
|
if ([LOGIN_FORM, SIGNUP_FORM].includes(queryParams.get('form'))) {
|
||||||
|
|
@ -274,7 +276,7 @@ const Intro = ({ queryParams }) => {
|
||||||
case 'UserAuthenticated': {
|
case 'UserAuthenticated': {
|
||||||
closeLoaderModal();
|
closeLoaderModal();
|
||||||
if (routeFocused) {
|
if (routeFocused) {
|
||||||
window.location = '#/';
|
navigate('/');
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -435,8 +437,4 @@ const Intro = ({ queryParams }) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
Intro.propTypes = {
|
|
||||||
queryParams: PropTypes.instanceOf(URLSearchParams)
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = Intro;
|
module.exports = Intro;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue