fix(ui): показывать сведения о рукопожатии без ложного статуса

This commit is contained in:
Denozordec committed 2026-10-04 12:21:53 +07:00
1 parent 837298a171
commit c6702efcc4
9 files changed
+53 -16

No files matched your search

@@ -86,7 +86,6 @@ function WireguardDataGrid({
cell: ({ row }) => {
const iface = row.original
const expanded = row.getIsExpanded()
const onlinePeers = iface.peers.filter((p) => !!p.latestHandshake).length
return (
<div className="flex items-start gap-2 min-w-0">
<Button type="button" variant="ghost" size="icon" className="size-11 shrink-0" aria-label={"Пиры: " + iface.name} aria-expanded={expanded} onClick={event => { event.stopPropagation(); row.toggleExpanded() }}>
@@ -109,7 +108,7 @@ function WireguardDataGrid({
</div>
) : null}
<p className="sr-only">
{onlinePeers}/{iface.peers.length} пиров
{iface.peers.length} пиров
</p>
</div>
</div>
@@ -164,11 +163,9 @@ function WireguardDataGrid({
enableSorting: false,
cell: ({ row }) => {
const iface = row.original
const onlinePeers = iface.peers.filter((p) => !!p.latestHandshake).length
return (
<span className="font-mono text-sm text-center block">
<span className="text-success">{onlinePeers}</span>
<span className="text-muted-foreground">/{iface.peers.length}</span>
{iface.peers.length}
</span>
)
},
@@ -82,10 +82,10 @@ function WireGuardPeersDetail({
<span
className={cn(
"font-mono text-[11px] whitespace-nowrap",
peer.latestHandshake ? "text-success" : "text-muted-foreground",
"text-muted-foreground",
)}
>
<span className="sr-only">Последнее рукопожатие: </span>{peer.latestHandshake ?? "нет рукопожатия"}
<span className="sr-only">Последнее рукопожатие: </span><span>{peer.latestHandshake?.trim() || "Нет данных"}</span>
</span>
<div className="flex items-center gap-2 text-muted-foreground whitespace-nowrap">
<span aria-label="RX" className="flex items-center gap-0.5">
@@ -97,7 +97,7 @@ function WireGuardPeersDetail({
{fmtBytes(peer.transferTx)}
</span>
</div>
<span className="min-w-0 break-all font-mono text-muted-foreground/60 text-[11px]"><span className="sr-only">Endpoint: </span>{peer.endpoint ?? "—"}</span>
<span className="min-w-0 break-all font-mono text-muted-foreground/60 text-[11px]"><span>Endpoint: </span>{peer.endpoint ?? "—"}</span>
<div className="flex items-center gap-1 justify-end">
{onExportPeer && (
<Button
@@ -141,10 +141,10 @@ function WireguardPeersGrid({
<span
className={cn(
"whitespace-nowrap font-mono text-[11px]",
row.original.latestHandshake ? "text-success" : "text-muted-foreground",
"text-muted-foreground",
)}
>
{row.original.latestHandshake ?? "нет рукопожатия"}
{row.original.latestHandshake?.trim() || "Нет данных"}
</span>
),
meta: {