clean-up useWebsite query params

This commit is contained in:
Francis Cao 2025-10-07 09:07:34 -07:00
parent 0d67f1fdaa
commit d440a44d96
3 changed files with 29 additions and 11 deletions

View file

@ -1,8 +1,8 @@
import { ReactQueryOptions } from '@/lib/types';
import { keepPreviousData } from '@tanstack/react-query';
import { useApi } from '../useApi';
import { useFilterParameters } from '../useFilterParameters';
import { useDateParameters } from '../useDateParameters';
import { ReactQueryOptions } from '@/lib/types';
import { useFilterParameters } from '../useFilterParameters';
export type WebsiteMetricsData = {
x: string;
@ -15,7 +15,7 @@ export function useWebsiteMetricsQuery(
options?: ReactQueryOptions<WebsiteMetricsData>,
) {
const { get, useQuery } = useApi();
const date = useDateParameters();
const { startAt, endAt, unit, timezone } = useDateParameters();
const filters = useFilterParameters();
return useQuery<WebsiteMetricsData>({
@ -23,14 +23,20 @@ export function useWebsiteMetricsQuery(
'websites:metrics',
{
websiteId,
...date,
startAt,
endAt,
unit,
timezone,
...filters,
...params,
},
],
queryFn: async () =>
get(`/websites/${websiteId}/metrics`, {
...date,
startAt,
endAt,
unit,
timezone,
...filters,
...params,
}),

View file

@ -13,12 +13,23 @@ export function useWebsitePageviewsQuery(
options?: ReactQueryOptions<WebsitePageviewsData>,
) {
const { get, useQuery } = useApi();
const date = useDateParameters();
const { startAt, endAt, unit, timezone } = useDateParameters();
const queryParams = useFilterParameters();
return useQuery<WebsitePageviewsData>({
queryKey: ['websites:pageviews', { websiteId, compare, ...date, ...queryParams }],
queryFn: () => get(`/websites/${websiteId}/pageviews`, { compare, ...date, ...queryParams }),
queryKey: [
'websites:pageviews',
{ websiteId, compare, startAt, endAt, unit, timezone, ...queryParams },
],
queryFn: () =>
get(`/websites/${websiteId}/pageviews`, {
compare,
startAt,
endAt,
unit,
timezone,
...queryParams,
}),
enabled: !!websiteId,
...options,
});

View file

@ -23,12 +23,13 @@ export function useWebsiteStatsQuery(
options?: UseQueryOptions<WebsiteStatsData, Error, WebsiteStatsData>,
) {
const { get, useQuery } = useApi();
const date = useDateParameters();
const { startAt, endAt, unit, timezone } = useDateParameters();
const filters = useFilterParameters();
return useQuery<WebsiteStatsData>({
queryKey: ['websites:stats', { websiteId, ...date, ...filters }],
queryFn: () => get(`/websites/${websiteId}/stats`, { ...date, ...filters }),
queryKey: ['websites:stats', { websiteId, startAt, endAt, unit, timezone, ...filters }],
queryFn: () =>
get(`/websites/${websiteId}/stats`, { startAt, endAt, unit, timezone, ...filters }),
enabled: !!websiteId,
...options,
});