mirror of
https://github.com/umami-software/umami.git
synced 2026-02-04 04:37:11 +01:00
fix: unique session count
This commit is contained in:
parent
49c31c1e2c
commit
f7b902cfd9
1 changed files with 26 additions and 14 deletions
|
|
@ -1,27 +1,39 @@
|
||||||
import { Container, Text } from '@umami/react-zen';
|
import { Container, Loading, Text } from '@umami/react-zen';
|
||||||
import { useMemo } from 'react';
|
import { useWebsiteStatsQuery } from '@/components/hooks';
|
||||||
import { useWebsiteEventsQuery } from '@/components/hooks';
|
|
||||||
|
|
||||||
const UniqueSessions = ({ websiteId }) => {
|
interface UniqueSessionsProps {
|
||||||
const query = useWebsiteEventsQuery(websiteId, { view: 'all' });
|
websiteId: string;
|
||||||
|
}
|
||||||
|
|
||||||
const uniqueSessionCount = useMemo(() => {
|
const UniqueSessions = ({ websiteId }: UniqueSessionsProps) => {
|
||||||
if (!query?.data?.data) return 0;
|
const { data, isLoading, error } = useWebsiteStatsQuery(websiteId);
|
||||||
|
|
||||||
const uniqueSessions = new Set(query.data.data.map((event: any) => event.sessionId));
|
const renderContent = () => {
|
||||||
|
if (isLoading) {
|
||||||
|
return <Loading icon="dots" />;
|
||||||
|
}
|
||||||
|
|
||||||
return uniqueSessions.size;
|
if (error) {
|
||||||
}, [query?.data?.data]);
|
return (
|
||||||
|
<Text size="5" color="red">
|
||||||
|
Error loading data
|
||||||
|
</Text>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return (
|
||||||
|
<Text size="5" className="text-white mr-3" weight="bold">
|
||||||
|
{data?.visitors ?? 0}
|
||||||
|
</Text>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Container className="flex items-center gap-8">
|
<Container className="flex items-center gap-8">
|
||||||
<Text size="5" color="gray">
|
<Text size="5" color="gray">
|
||||||
Unique Sessions:
|
Unique Sessions:
|
||||||
</Text>
|
</Text>
|
||||||
<Text size="5" className="text-white mr-3" weight="bold">
|
{renderContent()}
|
||||||
{' '}
|
|
||||||
{uniqueSessionCount}
|
|
||||||
</Text>
|
|
||||||
</Container>
|
</Container>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue