Merge pull request #3950 from AymanAlSuleihi/fix/compare-metrics
Fix metrics bar not updating on compare mode switch
This commit is contained in:
@@ -31,7 +31,9 @@ export async function GET(
|
|||||||
|
|
||||||
const data = await getWebsiteStats(websiteId, filters);
|
const data = await getWebsiteStats(websiteId, filters);
|
||||||
|
|
||||||
const { startDate, endDate } = getCompareDate('prev', filters.startDate, filters.endDate);
|
const compare = filters.compare ?? 'prev';
|
||||||
|
|
||||||
|
const { startDate, endDate } = getCompareDate(compare, filters.startDate, filters.endDate);
|
||||||
|
|
||||||
const comparison = await getWebsiteStats(websiteId, {
|
const comparison = await getWebsiteStats(websiteId, {
|
||||||
...filters,
|
...filters,
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import type { UseQueryOptions } from '@tanstack/react-query';
|
import type { UseQueryOptions } from '@tanstack/react-query';
|
||||||
import { useDateParameters } from '@/components/hooks/useDateParameters';
|
import { useDateParameters } from '@/components/hooks/useDateParameters';
|
||||||
|
import { useDateRange } from '@/components/hooks/useDateRange';
|
||||||
import { useApi } from '../useApi';
|
import { useApi } from '../useApi';
|
||||||
import { useFilterParameters } from '../useFilterParameters';
|
import { useFilterParameters } from '../useFilterParameters';
|
||||||
|
|
||||||
@@ -24,12 +25,16 @@ export function useWebsiteStatsQuery(
|
|||||||
) {
|
) {
|
||||||
const { get, useQuery } = useApi();
|
const { get, useQuery } = useApi();
|
||||||
const { startAt, endAt, unit, timezone } = useDateParameters();
|
const { startAt, endAt, unit, timezone } = useDateParameters();
|
||||||
|
const { compare } = useDateRange();
|
||||||
const filters = useFilterParameters();
|
const filters = useFilterParameters();
|
||||||
|
|
||||||
return useQuery<WebsiteStatsData>({
|
return useQuery<WebsiteStatsData>({
|
||||||
queryKey: ['websites:stats', { websiteId, startAt, endAt, unit, timezone, ...filters }],
|
queryKey: [
|
||||||
|
'websites:stats',
|
||||||
|
{ websiteId, startAt, endAt, unit, timezone, compare, ...filters },
|
||||||
|
],
|
||||||
queryFn: () =>
|
queryFn: () =>
|
||||||
get(`/websites/${websiteId}/stats`, { startAt, endAt, unit, timezone, ...filters }),
|
get(`/websites/${websiteId}/stats`, { startAt, endAt, unit, timezone, compare, ...filters }),
|
||||||
enabled: !!websiteId,
|
enabled: !!websiteId,
|
||||||
...options,
|
...options,
|
||||||
});
|
});
|
||||||
|
|||||||
+1
-1
@@ -20,7 +20,7 @@ export const dateRangeParams = {
|
|||||||
endDate: z.coerce.date().optional(),
|
endDate: z.coerce.date().optional(),
|
||||||
timezone: timezoneParam.optional(),
|
timezone: timezoneParam.optional(),
|
||||||
unit: unitParam.optional(),
|
unit: unitParam.optional(),
|
||||||
compare: z.string().optional(),
|
compare: z.enum(['prev', 'yoy']).optional(),
|
||||||
};
|
};
|
||||||
|
|
||||||
export const filterParams = {
|
export const filterParams = {
|
||||||
|
|||||||
Reference in New Issue
Block a user