diff --git a/apps/frontend/src/components/launches/calendar.context.tsx b/apps/frontend/src/components/launches/calendar.context.tsx index 01bb5609..d37b2ce1 100644 --- a/apps/frontend/src/components/launches/calendar.context.tsx +++ b/apps/frontend/src/components/launches/calendar.context.tsx @@ -105,31 +105,6 @@ export const CalendarWeekProvider: FC<{ display, }); - const setFiltersWrapper = useCallback( - (filters: { - currentWeek: number; - currentYear: number; - currentMonth: number; - display: 'week' | 'month'; - }) => { - setFilters(filters); - setInternalData([]); - window.history.replaceState( - null, - '', - `/launches?${ - filters.currentWeek - ? `week=${filters.currentWeek}` - : `month=${filters.currentMonth}` - }&year=${filters.currentYear}` - ); - setTimeout(() => { - mutate('/posts'); - }, 10); - }, - [filters] - ); - const params = useMemo(() => { return new URLSearchParams( filters.currentWeek @@ -158,6 +133,32 @@ export const CalendarWeekProvider: FC<{ refreshWhenHidden: false, revalidateOnFocus: false, }); + + const setFiltersWrapper = useCallback( + (filters: { + currentWeek: number; + currentYear: number; + currentMonth: number; + display: 'week' | 'month'; + }) => { + setFilters(filters); + setInternalData([]); + window.history.replaceState( + null, + '', + `/launches?${ + filters.currentWeek + ? `week=${filters.currentWeek}` + : `month=${filters.currentMonth}` + }&year=${filters.currentYear}` + ); + setTimeout(() => { + swr.mutate(); + }, 10); + }, + [filters, swr.mutate] + ); + const { isLoading } = swr; const { posts, comments } = swr?.data || { posts: [], comments: [] }; diff --git a/apps/frontend/src/components/launches/calendar.tsx b/apps/frontend/src/components/launches/calendar.tsx index bc087c50..b7c944f2 100644 --- a/apps/frontend/src/components/launches/calendar.tsx +++ b/apps/frontend/src/components/launches/calendar.tsx @@ -145,17 +145,7 @@ export const MonthView = () => { export const Calendar = () => { const { display } = useCalendar(); - const [firstDisplay, setFirstDisplay] = useState(display); - useEffect(() => { - setTimeout(() => { - setFirstDisplay(display); - }, 1000); - }, [display]); - - if (display !== firstDisplay) { - return <>; - } return ( {display === 'week' ? : }