fix: refina layout das colunas de empresas e corrige leitura de cookies no middleware

This commit is contained in:
Esdras Renan 2025-10-15 23:30:16 -03:00
parent 43230e0310
commit 5211ea45df
2 changed files with 28 additions and 13 deletions

View file

@ -75,14 +75,17 @@ async function attemptSessionRefresh(request: NextRequest): Promise<NextResponse
} }
const redirect = NextResponse.redirect(request.nextUrl) const redirect = NextResponse.redirect(request.nextUrl)
const setCookieHeaders = const headersWithGetSetCookie = response.headers as Headers & { getSetCookie?: () => string[] | undefined }
typeof response.headers.raw === "function" let setCookieHeaders =
? response.headers.raw()["set-cookie"] ?? [] typeof headersWithGetSetCookie.getSetCookie === "function"
? headersWithGetSetCookie.getSetCookie() ?? []
: [] : []
if (setCookieHeaders.length === 0) { if (setCookieHeaders.length === 0) {
const single = response.headers.get("set-cookie") const single = response.headers.get("set-cookie")
if (single) setCookieHeaders.push(single) if (single) {
setCookieHeaders = [single]
}
} }
for (const cookie of setCookieHeaders) { for (const cookie of setCookieHeaders) {

View file

@ -469,9 +469,21 @@ export function AdminCompaniesManager({ initialCompanies }: { initialCompanies:
<div className="mt-2 flex flex-wrap items-center gap-2 text-xs text-muted-foreground"> <div className="mt-2 flex flex-wrap items-center gap-2 text-xs text-muted-foreground">
{alertInfo ? ( {alertInfo ? (
<> <>
<IconClock className="size-3" /> <IconClock
className={cn(
"size-3",
isThresholdExceeded ? "text-amber-500" : "text-emerald-500"
)}
/>
<span>{lastAlertDistance}</span> <span>{lastAlertDistance}</span>
<span>· Consumo {Math.round(usagePct)}% / limite {threshold}%</span> <span
className={cn(
"font-medium",
isThresholdExceeded ? "text-amber-600" : "text-emerald-600"
)}
>
· Consumo {Math.round(usagePct)}% / limite {threshold}%
</span>
</> </>
) : ( ) : (
<> <>
@ -493,9 +505,9 @@ export function AdminCompaniesManager({ initialCompanies }: { initialCompanies:
<TableHeader> <TableHeader>
<TableRow className="border-slate-100/80 dark:border-slate-800/60"> <TableRow className="border-slate-100/80 dark:border-slate-800/60">
<TableHead className="w-[30%] min-w-[220px] pl-6 text-slate-500 dark:text-slate-300">Empresa</TableHead> <TableHead className="w-[30%] min-w-[220px] pl-6 text-slate-500 dark:text-slate-300">Empresa</TableHead>
<TableHead className="w-[22%] min-w-[180px] text-slate-500 dark:text-slate-300">Provisionamento</TableHead> <TableHead className="w-[22%] min-w-[180px] pl-4 text-slate-500 dark:text-slate-300">Provisionamento</TableHead>
<TableHead className="w-[18%] min-w-[160px] text-slate-500 dark:text-slate-300">Cliente avulso</TableHead> <TableHead className="w-[18%] min-w-[160px] pl-12 text-slate-500 dark:text-slate-300">Cliente avulso</TableHead>
<TableHead className="w-[20%] min-w-[170px] text-slate-500 dark:text-slate-300">Uso e alertas</TableHead> <TableHead className="w-[20%] min-w-[170px] pl-12 text-slate-500 dark:text-slate-300">Uso e alertas</TableHead>
<TableHead className="w-[10%] min-w-[90px] pr-6 text-right text-slate-500 dark:text-slate-300">Ações</TableHead> <TableHead className="w-[10%] min-w-[90px] pr-6 text-right text-slate-500 dark:text-slate-300">Ações</TableHead>
</TableRow> </TableRow>
</TableHeader> </TableHeader>
@ -561,11 +573,11 @@ export function AdminCompaniesManager({ initialCompanies }: { initialCompanies:
</div> </div>
</div> </div>
</TableCell> </TableCell>
<TableCell className="align-middle pr-10"> <TableCell className="align-middle pr-8 pl-2">
<ProvisioningCodeCard code={company.provisioningCode} /> <ProvisioningCodeCard code={company.provisioningCode} />
</TableCell> </TableCell>
<TableCell className="pl-6 pr-4 align-middle"> <TableCell className="pl-12 pr-6 align-middle">
<div className="flex items-center gap-4"> <div className="flex items-center gap-6">
<Badge <Badge
variant={company.isAvulso ? "default" : "outline"} variant={company.isAvulso ? "default" : "outline"}
className={cn( className={cn(
@ -595,7 +607,7 @@ export function AdminCompaniesManager({ initialCompanies }: { initialCompanies:
</Tooltip> </Tooltip>
</div> </div>
</TableCell> </TableCell>
<TableCell className="pr-4 align-middle"> <TableCell className="pl-12 pr-6 align-middle">
{alertInfo ? ( {alertInfo ? (
<div className="space-y-2"> <div className="space-y-2">
<div className="flex items-center gap-2 text-xs text-muted-foreground"> <div className="flex items-center gap-2 text-xs text-muted-foreground">