Fixed event search. Removed session time from profile.

This commit is contained in:
Mike Cao 2024-08-11 23:14:02 -07:00
parent 1e52eeb0f0
commit 78728b8706
5 changed files with 37 additions and 40 deletions

View file

@ -10,22 +10,24 @@ export function SessionData({ websiteId, sessionId }: { websiteId: string; sessi
const { data, ...query } = useSessionData(websiteId, sessionId);
return (
<LoadingPanel className={styles.data} {...query} data={data}>
<>
<div className={styles.header}>{formatMessage(labels.properties)}</div>
{!data?.length && <Empty className={styles.empty} />}
{data?.map(({ dataKey, dataType, stringValue }) => {
return (
<div key={dataKey}>
<div className={styles.label}>
<div className={styles.name}>
<TextOverflow>{dataKey}</TextOverflow>
<LoadingPanel className={styles.data} {...query} data={data}>
{!data?.length && <Empty className={styles.empty} />}
{data?.map(({ dataKey, dataType, stringValue }) => {
return (
<div key={dataKey}>
<div className={styles.label}>
<div className={styles.name}>
<TextOverflow>{dataKey}</TextOverflow>
</div>
<div className={styles.type}>{DATA_TYPES[dataType]}</div>
</div>
<div className={styles.type}>{DATA_TYPES[dataType]}</div>
<div className={styles.value}>{stringValue}</div>
</div>
<div className={styles.value}>{stringValue}</div>
</div>
);
})}
</LoadingPanel>
);
})}
</LoadingPanel>
</>
);
}

View file

@ -1,31 +1,15 @@
import { useMessages } from 'components/hooks';
import MetricCard from 'components/metrics/MetricCard';
import MetricsBar from 'components/metrics/MetricsBar';
import { formatShortTime } from 'lib/format';
export function SessionStats({ data }) {
const { formatMessage, labels } = useMessages();
const duration = (new Date(data?.lastAt).getTime() - new Date(data?.firstAt).getTime()) / 1000;
let dateFormat;
if (duration > 86400) {
dateFormat = ['d', 'm'];
} else if (duration > 3600) {
dateFormat = ['h', 'm'];
} else {
dateFormat = ['m', 's'];
}
return (
<MetricsBar isFetched={true}>
<MetricCard label={formatMessage(labels.visits)} value={data?.visits} />
<MetricCard label={formatMessage(labels.views)} value={data?.views} />
<MetricCard label={formatMessage(labels.events)} value={data?.events} />
<MetricCard
label={formatMessage(labels.sessionDuration)}
value={duration}
formatValue={n => `${+n < 0 ? '-' : ''}${formatShortTime(Math.abs(~~n), dateFormat, ' ')}`}
/>
</MetricsBar>
);
}