Fix AP location and table root consistency

- Only include APs in getSwitchesInLocation for AP sub-locations
- Update table.js to include APs in switch graph like render.js

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Ian Gulliver
2026-02-02 22:17:50 -08:00
parent 92ab5d8a6e
commit ced0a6e599
2 changed files with 6 additions and 5 deletions

View File

@@ -1,4 +1,4 @@
import { getLabel, getFirstName, isSwitch, getInterfaceSpeed, getInterfaceErrors, getInterfaceRates, getInterfaceUptime, getInterfaceLastError } from './nodes.js';
import { getLabel, getFirstName, isSwitch, isAP, getInterfaceSpeed, getInterfaceErrors, getInterfaceRates, getInterfaceUptime, getInterfaceLastError } from './nodes.js';
import { buildSwitchUplinks } from './topology.js';
import { escapeHtml, formatUniverse } from './format.js';
import { tableData, tableSortKeys, setTableSortKeys } from './state.js';
@@ -96,7 +96,7 @@ export function renderNetworkTable() {
nodes.forEach(node => nodesByTypeId.set(node.id, node));
const upstreamConnections = new Map();
const allSwitches = nodes.filter(n => isSwitch(n));
const allSwitches = nodes.filter(n => isSwitch(n) || isAP(n));
const switchLinks = [];
links.forEach(link => {
@@ -104,8 +104,8 @@ export function renderNetworkTable() {
const nodeB = nodesByTypeId.get(link.node_b_id);
if (!nodeA || !nodeB) return;
const aIsSwitch = isSwitch(nodeA);
const bIsSwitch = isSwitch(nodeB);
const aIsSwitch = isSwitch(nodeA) || isAP(nodeA);
const bIsSwitch = isSwitch(nodeB) || isAP(nodeB);
if (aIsSwitch && !bIsSwitch) {
upstreamConnections.set(nodeB.id, {

View File

@@ -130,7 +130,8 @@ export function getSwitchesInLocation(loc, assignedNodes) {
const switches = [];
const nodes = assignedNodes.get(loc) || [];
nodes.forEach(n => {
if (isSwitch(n) || isAP(n)) switches.push(n);
if (isSwitch(n)) switches.push(n);
if (isAP(n) && loc.isAPLocation) switches.push(n);
});
loc.children.forEach(child => {
if (child.anonymous || child.isAPLocation) {