feat(rack-planner): implement port-to-port connections (patch cables) with dynamic SVG visualization layer

This commit is contained in:
2026-03-22 14:55:33 -05:00
parent 444d694a06
commit becb55d57c
13 changed files with 449 additions and 28 deletions

View File

@@ -53,6 +53,23 @@ model Port {
nativeVlan Int?
vlans PortVlan[]
notes String?
// Connections — port can be source or target of a patch cable
sourceConnections Connection[] @relation("SourcePort")
targetConnections Connection[] @relation("TargetPort")
}
model Connection {
id String @id @default(cuid())
fromPortId String
fromPort Port @relation("SourcePort", fields: [fromPortId], references: [id], onDelete: Cascade)
toPortId String
toPort Port @relation("TargetPort", fields: [toPortId], references: [id], onDelete: Cascade)
color String? // Optional custom cable color
label String? // Optional cable label (e.g. "Cable #104")
createdAt DateTime @default(now())
@@unique([fromPortId, toPortId])
}
model Vlan {