mirror of
https://github.com/umami-software/umami.git
synced 2026-02-07 14:17:13 +01:00
Added retention screen.
This commit is contained in:
parent
d0d11225f4
commit
bce6737f29
12 changed files with 164 additions and 45 deletions
|
|
@ -7,6 +7,7 @@ export * from './queries/useLoginQuery';
|
|||
export * from './queries/useRealtimeQuery';
|
||||
export * from './queries/useReportQuery';
|
||||
export * from './queries/useReportsQuery';
|
||||
export * from './queries/useRetentionQuery';
|
||||
export * from './queries/useSessionActivityQuery';
|
||||
export * from './queries/useSessionDataQuery';
|
||||
export * from './queries/useSessionDataPropertiesQuery';
|
||||
|
|
|
|||
20
src/components/hooks/queries/useRetentionQuery.ts
Normal file
20
src/components/hooks/queries/useRetentionQuery.ts
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
import { useApi } from '../useApi';
|
||||
import { useFilterParams } from '../useFilterParams';
|
||||
import { UseQueryOptions } from '@tanstack/react-query';
|
||||
|
||||
export function useRetentionQuery(
|
||||
websiteId: string,
|
||||
queryParams?: { type: string; limit?: number; search?: string; startAt?: number; endAt?: number },
|
||||
options?: Omit<UseQueryOptions & { onDataLoad?: (data: any) => void }, 'queryKey' | 'queryFn'>,
|
||||
) {
|
||||
const { get, useQuery } = useApi();
|
||||
const filterParams = useFilterParams(websiteId);
|
||||
|
||||
return useQuery({
|
||||
queryKey: ['retention', websiteId, { ...filterParams, ...queryParams }],
|
||||
queryFn: () =>
|
||||
get(`/websites/${websiteId}/retention`, { websiteId, ...filterParams, ...queryParams }),
|
||||
enabled: !!websiteId,
|
||||
...options,
|
||||
});
|
||||
}
|
||||
|
|
@ -319,6 +319,7 @@ export const labels = defineMessages({
|
|||
links: { id: 'label.links', defaultMessage: 'Links' },
|
||||
pixels: { id: 'label.pixels', defaultMessage: 'Pixels' },
|
||||
addBoard: { id: 'label.add-board', defaultMessage: 'Add board' },
|
||||
cohort: { id: 'label.cohort', defaultMessage: 'Cohort' },
|
||||
});
|
||||
|
||||
export const messages = defineMessages({
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ export function ActiveUsers({
|
|||
return (
|
||||
<StatusLight variant="success">
|
||||
<Text size="2" weight="bold">
|
||||
{formatMessage(messages.activeUsers, { x: count })}
|
||||
{formatMessage(messages.numberOfUsers, { x: count })}
|
||||
</Text>
|
||||
</StatusLight>
|
||||
);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue