rewrite litlyx

This commit is contained in:
Emily
2024-10-08 15:12:04 +02:00
parent b27cacf4e6
commit 79e956e930
33 changed files with 231 additions and 214 deletions

View File

@@ -4,9 +4,9 @@ import type { MetricsCounts } from '~/server/api/metrics/[project_id]/counts';
definePageMeta({ layout: 'dashboard' });
const activeProject = useActiveProject();
const {project} = useProject();
const isPremium = computed(() => (activeProject.value?.premium_type || 0) > 0);
const isPremium = computed(() => (project.value?.premium_type || 0) > 0);
const metricsInfo = ref<number>(0);
@@ -29,12 +29,12 @@ const totalItems = computed(() => metricsInfo.value);
const { data: tableData, pending: loadingData } = await useLazyFetch<any[]>(() =>
`/api/metrics/${activeProject.value?._id}/query?type=1&orderBy=${sort.value.column}&order=${sort.value.direction}&page=${page.value}&limit=${itemsPerPage}`, {
`/api/metrics/${project.value?._id}/query?type=1&orderBy=${sort.value.column}&order=${sort.value.direction}&page=${page.value}&limit=${itemsPerPage}`, {
...signHeaders(),
})
onMounted(async () => {
const counts = await $fetch<MetricsCounts>(`/api/metrics/${activeProject.value?._id}/counts`, signHeaders());
const counts = await $fetch<MetricsCounts>(`/api/metrics/${project.value?._id}/counts`, signHeaders());
metricsInfo.value = counts.eventsCount;
});

View File

@@ -4,9 +4,9 @@ import type { MetricsCounts } from '~/server/api/metrics/[project_id]/counts';
definePageMeta({ layout: 'dashboard' });
const activeProject = useActiveProject();
const {project} = useProject();
const isPremium = computed(() => (activeProject.value?.premium_type || 0) > 0);
const isPremium = computed(() => (project.value?.premium_type || 0) > 0);
const metricsInfo = ref<number>(0);
@@ -35,12 +35,12 @@ const totalItems = computed(() => metricsInfo.value);
const { data: tableData, pending: loadingData } = await useLazyFetch<any[]>(() =>
`/api/metrics/${activeProject.value?._id}/query?type=0&orderBy=${sort.value.column}&order=${sort.value.direction}&page=${page.value}&limit=${itemsPerPage}`, {
`/api/metrics/${project.value?._id}/query?type=0&orderBy=${sort.value.column}&order=${sort.value.direction}&page=${page.value}&limit=${itemsPerPage}`, {
...signHeaders(),
})
onMounted(async () => {
const counts = await $fetch<MetricsCounts>(`/api/metrics/${activeProject.value?._id}/counts`, signHeaders());
const counts = await $fetch<MetricsCounts>(`/api/metrics/${project.value?._id}/counts`, signHeaders());
metricsInfo.value = counts.visitsCount;
});

View File

@@ -10,21 +10,7 @@ const selectLabelsEvents = [
];
const eventsStackedSelectIndex = ref<number>(0);
const { projectId } = useProject();
const { snapshot, safeSnapshotDates } = useSnapshot();
const headers = computed(() => {
return {
'x-from': safeSnapshotDates.value.from,
'x-to': safeSnapshotDates.value.to,
'Authorization': authorizationHeaderComputed.value,
'x-schema': 'events',
'x-pid': projectId.value ?? ''
}
});
const eventsData = await useFetch(`/api/data/count`, { method: 'POST', headers, lazy: true });
const eventsData = await useFetch(`/api/data/count`, { headers: useComputedHeaders({ custom: { 'x-schema': 'events' } }), lazy: true });
</script>
@@ -36,9 +22,9 @@ const eventsData = await useFetch(`/api/data/count`, { method: 'POST', headers,
<LyxUiCard class="w-full flex justify-between items-center">
<div class="flex flex-col gap-1">
<div>
Total events: {{ eventsData.data.value?.[0]?.total || '0' }}
Total events: {{ eventsData.data.value?.[0]?.count || '0' }}
</div>
<div v-if="(eventsData.data.value?.[0]?.total || 0) === 0">
<div v-if="(eventsData.data.value?.[0]?.count || 0) === 0">
Waiting for your first event...
</div>
</div>
@@ -62,7 +48,7 @@ const eventsData = await useFetch(`/api/data/count`, { method: 'POST', headers,
<EventsStackedBarChart :slice="(selectLabelsEvents[eventsStackedSelectIndex].value as any)">
</EventsStackedBarChart>
</div>
</CardTitled>
</CardTitled>
<CardTitled :key="refreshKey" class="p-4 flex-[2] w-full h-full" title="Top events"
sub="Displays key events.">
@@ -71,7 +57,7 @@ const eventsData = await useFetch(`/api/data/count`, { method: 'POST', headers,
</div>
<div class="flex">
<!-- <div class="flex">
<EventsFunnelChart :key="refreshKey" class="w-full"></EventsFunnelChart>
</div>
@@ -81,7 +67,7 @@ const eventsData = await useFetch(`/api/data/count`, { method: 'POST', headers,
<div class="flex">
<EventsMetadataAnalyzer :key="refreshKey"></EventsMetadataAnalyzer>
</div>
</div> -->

View File

@@ -3,8 +3,6 @@
definePageMeta({ layout: 'dashboard' });
const activeProject = useActiveProject();
const items = [
{ label: 'General', slot: 'general' },
{ label: 'Members', slot: 'members' },
@@ -20,16 +18,16 @@ const items = [
<CustomTab :items="items" class="mt-8">
<template #general>
<SettingsGeneral :key="activeProject?._id.toString()"></SettingsGeneral>
<SettingsGeneral :key="refreshKey"></SettingsGeneral>
</template>
<template #members>
<SettingsMembers :key="activeProject?._id.toString()"></SettingsMembers>
<SettingsMembers :key="refreshKey"></SettingsMembers>
</template>
<template #billing>
<SettingsBilling :key="activeProject?._id.toString()"></SettingsBilling>
<SettingsBilling :key="refreshKey"></SettingsBilling>
</template>
<template #account>
<SettingsAccount :key="activeProject?._id.toString()"></SettingsAccount>
<SettingsAccount :key="refreshKey"></SettingsAccount>
</template>
</CustomTab>