|
|
|
|
@ -1,18 +1,14 @@ |
|
|
|
|
import { |
|
|
|
|
useCallback, |
|
|
|
|
useEffect, |
|
|
|
|
useMemo, |
|
|
|
|
useState, |
|
|
|
|
} from 'react' |
|
|
|
|
|
|
|
|
|
import find from 'lodash/find' |
|
|
|
|
import forEach from 'lodash/forEach' |
|
|
|
|
import { reduce } from 'lodash' |
|
|
|
|
|
|
|
|
|
import type { ObjectWithName } from 'features/Name' |
|
|
|
|
|
|
|
|
|
import { |
|
|
|
|
FavoritesActions, |
|
|
|
|
UserFavorites, |
|
|
|
|
modifyUserFavorites, |
|
|
|
|
getUserFavorites, |
|
|
|
|
@ -53,29 +49,6 @@ export const useUserFavorites = () => { |
|
|
|
|
open, |
|
|
|
|
} = useToggle() |
|
|
|
|
|
|
|
|
|
const superTournaments = useMemo(() => { |
|
|
|
|
const uniqueTournamnetIds: Record<number, number> = {} |
|
|
|
|
|
|
|
|
|
return reduce( |
|
|
|
|
userFavorites, |
|
|
|
|
(acc, item) => { |
|
|
|
|
if ( |
|
|
|
|
item?.info?.super_tournament |
|
|
|
|
&& !uniqueTournamnetIds[item.info.super_tournament.id] |
|
|
|
|
) { |
|
|
|
|
uniqueTournamnetIds[item.info.super_tournament.id] = item.info.super_tournament.id |
|
|
|
|
acc.push({ |
|
|
|
|
...item.info.super_tournament, |
|
|
|
|
sport: item.sport, |
|
|
|
|
type: ProfileTypes.SUPERTOURNAMENTS, |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
return acc |
|
|
|
|
}, |
|
|
|
|
[] as Array<SuperTournament>, |
|
|
|
|
) |
|
|
|
|
}, [userFavorites]) |
|
|
|
|
|
|
|
|
|
const fetchFavorites = useCallback(() => { |
|
|
|
|
getUserFavorites().then((value) => { |
|
|
|
|
if (Array.isArray(value)) { |
|
|
|
|
@ -85,19 +58,6 @@ export const useUserFavorites = () => { |
|
|
|
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
|
|
|
}, [userInfo?.email]) |
|
|
|
|
|
|
|
|
|
const removeSuperTournament = (id: number) => { |
|
|
|
|
forEach(userFavorites, (item) => { |
|
|
|
|
if (item.info.super_tournament?.id === id) { |
|
|
|
|
addRemoveFavorite({ |
|
|
|
|
action: FavoritesActions.REMOVE, |
|
|
|
|
id: item.id, |
|
|
|
|
sport: item.sport, |
|
|
|
|
type: item.type, |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
if (!user) return |
|
|
|
|
|
|
|
|
|
@ -122,9 +82,7 @@ export const useUserFavorites = () => { |
|
|
|
|
isOpen, |
|
|
|
|
open, |
|
|
|
|
playerHighlight, |
|
|
|
|
removeSuperTournament, |
|
|
|
|
setPlayerHighlight, |
|
|
|
|
superTournaments, |
|
|
|
|
userFavorites, |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|