Refactor part 2: Electric Boogaloo. Standardize way of passing filter parameters.

This commit is contained in:
Mike Cao 2025-07-04 01:23:11 -07:00
parent f26f1b0581
commit cdf391d5c2
90 changed files with 867 additions and 709 deletions

View file

@ -2,7 +2,7 @@ import { z } from 'zod';
import { getQueryFilters, parseRequest } from '@/lib/request';
import { unauthorized, json } from '@/lib/response';
import { canViewWebsite } from '@/lib/auth';
import { pagingParams } from '@/lib/schema';
import { dateRangeParams, pagingParams, filterParams } from '@/lib/schema';
import { getWebsiteEvents } from '@/queries';
export async function GET(
@ -10,8 +10,8 @@ export async function GET(
{ params }: { params: Promise<{ websiteId: string }> },
) {
const schema = z.object({
startAt: z.coerce.number().int(),
endAt: z.coerce.number().int(),
...dateRangeParams,
...filterParams,
...pagingParams,
});

View file

@ -1,5 +1,5 @@
import { z } from 'zod';
import { parseRequest, getQueryFilters } from '@/lib/request';
import { parseRequest, getQueryFilters, setWebsiteDate } from '@/lib/request';
import { unauthorized, json } from '@/lib/response';
import { canViewWebsite } from '@/lib/auth';
import { filterParams, timezoneParam, unitParam } from '@/lib/schema';
@ -29,7 +29,7 @@ export async function GET(
return unauthorized();
}
const filters = await getQueryFilters({ ...query, websiteId });
const filters = await setWebsiteDate(websiteId, getQueryFilters(query));
const data = await getEventMetrics(websiteId, filters);