{formatPortTrafficLogMessage(ev.message, t)}
{t("portTraffic.empty")}
| {t("portTraffic.col.device")} | {t("portTraffic.col.status")} | {t("portTraffic.col.ports")} | {t("portTraffic.col.interval")} | {t("portTraffic.col.last")} | {t("portTraffic.col.actions")} |
|---|---|---|---|---|---|
|
{deviceLabel(row)}
{row.ne_ip || row.ne_id}
{row.vendor ? ` · ${row.vendor}` : ""}
{row.note ? ` · ${row.note}` : ""}
|
{statusText(row.status)} {row.collect_running ? ( {t("portTraffic.collecting")} ) : null} | {row.active_target_count}/{row.target_count} | {row.interval_sec}s | {formatSystemTime(row.last_collect_ended_at) || "—"} |
{needsNeRebind(row) ? (
) : null}
{row.status !== "running" ? (
) : (
)}
{row.status !== "stopped" ? (
) : null}
|
{deepLinkHint}
: null}| {t("portTraffic.col.source")} | {t("portTraffic.col.name")} | IP | {t("portTraffic.col.vendor")} | |
|---|---|---|---|---|
| { setSelectedNe(row); setPorts([]); setPickedIfnames({}); }} /> | {row.source} | {row.name} | {row.ip_address} | {row.vendor || "—"} |
{t("portTraffic.pickNeFirst")}
: null} {selectedNe ? ( <>
{t("portTraffic.discoverCommand")}: {discoverMeta.command}
{discoverMeta.error}
) : null}{t("portTraffic.discoverRaw")}
{discoverMeta.raw_preview || "—"}
| {t("portTraffic.col.ifname")} | {t("portTraffic.col.bw")} | {t("portTraffic.col.upDown")} | {t("portTraffic.col.description")} | |
|---|---|---|---|---|
| toggleIfname(p)} /> | {p.ifname} | {p.bw_raw || formatBw(p.bw_bps)} |
|
{p.description || "—"} |
{t("portTraffic.selectedPorts", { count: String(pickedList.length) })}
> ) : null}{selectedNe?.name || "—"} ({selectedNe?.ip_address || "—"})
{t("portTraffic.selectedPorts", { count: String(pickedList.length) })}
{portsError}
: null} {discoverMeta ? (
{t("portTraffic.discoverCommand")}: {discoverMeta.command}
{discoverMeta.error}
) : null}{t("portTraffic.discoverRaw")}
{discoverMeta.raw_preview || "—"}
| {t("portTraffic.col.ifname")} | {t("portTraffic.col.bw")} | {t("portTraffic.col.upDown")} | {t("portTraffic.col.description")} | |
|---|---|---|---|---|
| toggleIfname(p)} /> | {p.ifname} | {p.bw_raw || formatBw(p.bw_bps)} |
|
{p.description || "—"} |
{t("portTraffic.logDevice")}: {logDeviceLabel || "—"}
…
) : !(logQuery.data?.items || []).length ? ({t("portTraffic.logEmpty")}
) : ({formatPortTrafficLogMessage(ev.message, t)}
{t("portTraffic.rebindCurrent")}: {deviceLabel(rebindDevice)} {rebindDevice.ne_ip ? ` · ${rebindDevice.ne_ip}` : ""} {` · ${rebindSource}`} {rebindDevice.ne_id ? ` · ID ${rebindDevice.ne_id.slice(0, 8)}…` : ""}
{t("portTraffic.rebindHint")}
…
) : !(rebindNesQuery.data?.items || []).length ? ({t("portTraffic.rebindEmpty")}
) : (| {t("portTraffic.col.name")} | IP | {t("portTraffic.col.vendor")} | ID | |
|---|---|---|---|---|
| setRebindSelectedNe(row)} /> | {row.name} | {row.ip_address} {sameIp ? ( {t("portTraffic.rebindSameIp")} ) : null} | {row.vendor || "—"} | {row.id.slice(0, 8)}… |