diff --git a/src/features/AuthStore/hooks/useAuth.tsx b/src/features/AuthStore/hooks/useAuth.tsx
index 5e060e34..6f4db4b5 100644
--- a/src/features/AuthStore/hooks/useAuth.tsx
+++ b/src/features/AuthStore/hooks/useAuth.tsx
@@ -216,7 +216,8 @@ export const useAuth = () => {
useEffect(() => {
// попытаемся обновить токен используя refresh_token
const tryRenewToken = () => {
- userManager.signinSilent().catch(logout)
+ userManager.signinSilent()
+ .catch(() => user && logout())
}
// если запросы вернули 401 | 403
window.addEventListener('FORBIDDEN_REQUEST', tryRenewToken)
@@ -227,6 +228,7 @@ export const useAuth = () => {
window.removeEventListener('FORBIDDEN_REQUEST', tryRenewToken)
userManager.events.removeAccessTokenExpired(tryRenewToken)
}
+ // eslint-disable-next-line react-hooks/exhaustive-deps
}, [userManager, logout])
useEffect(() => {
diff --git a/src/features/HomePage/hooks.tsx b/src/features/HomePage/hooks.tsx
index 104cdf16..efe3923c 100644
--- a/src/features/HomePage/hooks.tsx
+++ b/src/features/HomePage/hooks.tsx
@@ -56,7 +56,7 @@ export const useHomePage = () => {
})()
}
// eslint-disable-next-line react-hooks/exhaustive-deps
- }, [userInfo])
+ }, [userInfo?.email])
useEffect(() => {
const dateLastOpenSmartBanner = localStorage.getItem('dateLastOpenSmartBanner')
@@ -75,7 +75,7 @@ export const useHomePage = () => {
timezoneOffset: getTimezoneOffset(selectedDate),
}),
// eslint-disable-next-line react-hooks/exhaustive-deps
- [selectedDate],
+ [selectedDate, userInfo?.email],
)
useEffect(() => {
diff --git a/src/features/HomePage/index.tsx b/src/features/HomePage/index.tsx
index e4e476a2..f5d94791 100644
--- a/src/features/HomePage/index.tsx
+++ b/src/features/HomePage/index.tsx
@@ -47,6 +47,7 @@ const Home = () => {
{isMobileDevice ? null : }
+ {/* {userInfo?.email && } */}
{
+export const Matches = memo((props: Props) => {
const {
fetchMoreMatches,
isFetching,
@@ -72,4 +76,4 @@ export const Matches = (props: Props) => {
{isMobileDevice ? mobileView : desktopView}
)
-}
+})
diff --git a/src/features/SportsFilter/components/SelectSport/styled.tsx b/src/features/SportsFilter/components/SelectSport/styled.tsx
index 13e51081..6747afcc 100644
--- a/src/features/SportsFilter/components/SelectSport/styled.tsx
+++ b/src/features/SportsFilter/components/SelectSport/styled.tsx
@@ -56,7 +56,7 @@ export const Arrows = styled.span`
${({ active }) => (
active
? css`
- transform: translate(-50%, -50%) rotate(135deg);
+ transform: translate(-50%) rotate(135deg);
`
: css`
transform: translate(-50%, -50%) rotate(315deg);
diff --git a/src/features/UserFavorites/hooks/index.tsx b/src/features/UserFavorites/hooks/index.tsx
index 624c67e9..bffa44d4 100644
--- a/src/features/UserFavorites/hooks/index.tsx
+++ b/src/features/UserFavorites/hooks/index.tsx
@@ -21,6 +21,8 @@ import { useToggle } from 'hooks/useToggle'
import { ProfileTypes, SportTypes } from 'config'
+import { useAuthStore } from '../../AuthStore'
+
type ProfileType = {
profile: ObjectWithName & {
additionalInfo: ObjectWithName & {
@@ -40,6 +42,7 @@ export type SuperTournament = ObjectWithName & {
type Args = Parameters[0]
export const useUserFavorites = () => {
+ const { userInfo } = useAuthStore()
const [userFavorites, setUserFavorites] = useState([])
const [playerHighlight, setPlayerHighlight] = useState({} as ProfileType)
@@ -78,7 +81,8 @@ export const useUserFavorites = () => {
setUserFavorites(value)
}
})
- }, [])
+ // eslint-disable-next-line react-hooks/exhaustive-deps
+ }, [userInfo?.email])
const removeSuperTournament = (id: number) => {
forEach(userFavorites, (item) => {
diff --git a/src/features/UserFavorites/index.tsx b/src/features/UserFavorites/index.tsx
index 4d7d4259..3f343a85 100644
--- a/src/features/UserFavorites/index.tsx
+++ b/src/features/UserFavorites/index.tsx
@@ -10,9 +10,9 @@ import map from 'lodash/map'
import { FavoritesActions } from 'requests'
import { Modal } from 'features/Modal'
-
import { ProfileLink } from 'features/ProfileLink'
-import { Close } from '../../libs/objects/Close'
+
+import { Close } from 'libs/objects/Close'
import { TooltipBlock } from './TooltipBlock'
import { FavoritesToolip } from './FavoritesTooltip'
@@ -29,6 +29,8 @@ import {
ScrollWrapper,
} from './styled'
+import { useAuthStore } from '../AuthStore'
+
type Props = {
marginTop?: number,
}
@@ -44,9 +46,14 @@ export const UserFavorites = ({ marginTop }: Props) => {
userFavorites,
} = useUserFavoritesStore()
+ const { user } = useAuthStore()
const [position, setPosition] = useState(0)
- useEffect(fetchFavorites, [fetchFavorites])
+ useEffect(() => {
+ if (!user) return
+ fetchFavorites()
+ // eslint-disable-next-line react-hooks/exhaustive-deps
+ }, [fetchFavorites])
const getPosition = (event: MouseEvent | FocusEvent) => {
if (event.currentTarget) {
diff --git a/src/helpers/callApi/logoutIfUnauthorized.tsx b/src/helpers/callApi/logoutIfUnauthorized.tsx
index f7f68cdf..18e71881 100644
--- a/src/helpers/callApi/logoutIfUnauthorized.tsx
+++ b/src/helpers/callApi/logoutIfUnauthorized.tsx
@@ -1,9 +1,6 @@
-import { removeToken } from '../token'
-
export const logoutIfUnauthorized = async (response: Response) => {
/* отключили из-за доступа без авторизации */
if (response.status === 401 || response.status === 403) {
- removeToken()
window.dispatchEvent(new Event('FORBIDDEN_REQUEST'))
}