* wip * wip * wip * wip * show revenue better on overview * align realtime and overview counters * update revenue docs * always return device id * add project settings, improve projects charts, * fix: comments * fixes * fix migration * ignore sql files * fix comments
56 lines
1.7 KiB
TypeScript
56 lines
1.7 KiB
TypeScript
import { EventsTable } from '@/components/events/table';
|
|
import { useReadColumnVisibility } from '@/components/ui/data-table/data-table-hooks';
|
|
import {
|
|
useEventQueryFilters,
|
|
useEventQueryNamesFilter,
|
|
} from '@/hooks/use-event-query-filters';
|
|
import { useTRPC } from '@/integrations/trpc/react';
|
|
import { PAGE_TITLES, createProjectTitle } from '@/utils/title';
|
|
import { useInfiniteQuery } from '@tanstack/react-query';
|
|
import { createFileRoute } from '@tanstack/react-router';
|
|
import { parseAsIsoDateTime, useQueryState } from 'nuqs';
|
|
|
|
export const Route = createFileRoute(
|
|
'/_app/$organizationId/$projectId/profiles/$profileId/_tabs/events',
|
|
)({
|
|
component: Component,
|
|
head: () => {
|
|
return {
|
|
meta: [
|
|
{
|
|
title: createProjectTitle(PAGE_TITLES.PROFILE_EVENTS),
|
|
},
|
|
],
|
|
};
|
|
},
|
|
});
|
|
|
|
function Component() {
|
|
const { projectId, profileId } = Route.useParams();
|
|
const trpc = useTRPC();
|
|
const [filters] = useEventQueryFilters();
|
|
const [startDate] = useQueryState('startDate', parseAsIsoDateTime);
|
|
const [endDate] = useQueryState('endDate', parseAsIsoDateTime);
|
|
const [eventNames] = useEventQueryNamesFilter();
|
|
const columnVisibility = useReadColumnVisibility('events');
|
|
const query = useInfiniteQuery(
|
|
trpc.event.events.infiniteQueryOptions(
|
|
{
|
|
projectId,
|
|
profileId,
|
|
filters,
|
|
startDate: startDate || undefined,
|
|
endDate: endDate || undefined,
|
|
events: eventNames,
|
|
columnVisibility: columnVisibility ?? {},
|
|
},
|
|
{
|
|
enabled: columnVisibility !== null,
|
|
getNextPageParam: (lastPage) => lastPage.meta.next,
|
|
},
|
|
),
|
|
);
|
|
|
|
return <EventsTable query={query} />;
|
|
}
|