perf(dashboard): usar Promise.all para fetching paralelo de dados

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Felipe Coutinho
2026-01-17 16:56:05 +00:00
parent 6b033c79eb
commit fc7083d95e

View File

@@ -29,25 +29,22 @@ export default async function Page({ searchParams }: PageProps) {
const periodoParam = getSingleParam(resolvedSearchParams, "periodo");
const { period: selectedPeriod } = parsePeriodParam(periodoParam);
const data = await fetchDashboardData(user.id, selectedPeriod);
// Buscar preferências do usuário
const preferencesResult = await db
const [data, preferencesResult] = await Promise.all([
fetchDashboardData(user.id, selectedPeriod),
db
.select({
disableMagnetlines: schema.userPreferences.disableMagnetlines,
})
.from(schema.userPreferences)
.where(eq(schema.userPreferences.userId, user.id))
.limit(1);
.limit(1),
]);
const disableMagnetlines = preferencesResult[0]?.disableMagnetlines ?? false;
return (
<main className="flex flex-col gap-4 px-6">
<DashboardWelcome
name={user.name}
disableMagnetlines={disableMagnetlines}
/>
<DashboardWelcome name={user.name} disableMagnetlines={disableMagnetlines} />
<MonthNavigation />
<SectionCards metrics={data.metrics} />
<DashboardGrid data={data} period={selectedPeriod} />