diff --git a/frontend/Dockerfile b/frontend/Dockerfile index 370a4d47..d32a5757 100644 --- a/frontend/Dockerfile +++ b/frontend/Dockerfile @@ -9,7 +9,7 @@ COPY --from=deps /app/node_modules ./node_modules COPY . . ARG BACKEND_BASE_URL=http://backend:8000 ENV BACKEND_BASE_URL=${BACKEND_BASE_URL} -RUN npm run build +RUN npm run build -- --webpack FROM node:22-alpine AS runner WORKDIR /app diff --git a/frontend/src/app/admin/[slug]/page.tsx b/frontend/src/app/admin/[slug]/page.tsx index 3b2ba81b..3b25c670 100644 --- a/frontend/src/app/admin/[slug]/page.tsx +++ b/frontend/src/app/admin/[slug]/page.tsx @@ -14,8 +14,8 @@ const adminRouteMap: Record = { "tenant-settings": "/tenant-settings", }; -export default function AdminAliasPage({ params }: { params: { slug: string } }) { - const { slug } = params; +export default async function AdminAliasPage({ params }: { params: Promise<{ slug: string }> }) { + const { slug } = await params; const target = adminRouteMap[slug]; if (!target) { diff --git a/frontend/src/app/page.tsx b/frontend/src/app/page.tsx index 801c127e..268dcd6c 100644 --- a/frontend/src/app/page.tsx +++ b/frontend/src/app/page.tsx @@ -111,7 +111,7 @@ function formatContractType(value: string) { return contractTypeMap[value] ?? value; } -export function buildStats(items: ReviewListItem[]) { +function buildStats(items: ReviewListItem[]) { const monthlyReviews = items.filter((item) => isCurrentMonth(item.created_at)).length; const highRisk = items.filter((item) => item.risk_level === "high").length; const mediumRisk = items.filter((item) => item.risk_level === "medium").length; @@ -132,7 +132,7 @@ export function buildStats(items: ReviewListItem[]) { }; } -export function buildPriorityTasks(items: ReviewListItem[]) { +function buildPriorityTasks(items: ReviewListItem[]) { const highRiskItems = items.filter((item) => item.risk_level === "high").slice(0, 2); const blockedItems = items.filter((item) => item.status === "failed" || item.status === "partial").slice(0, 2); const processingItems = items.filter((item) => item.status === "pending" || item.status === "processing").slice(0, 2); @@ -173,7 +173,7 @@ function formatRiskLevel(value: string | null | undefined) { return riskLabelMap[value] ?? value; } -export function getAdminWorkbenchLinks(role: string | undefined) { +function getAdminWorkbenchLinks(role: string | undefined) { if (role !== "admin") { return [] as Array<{ href: string; label: string; description: string }>; }