@mp70/react-networks 0.3.1-alpha.0 → 0.5.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -22
- package/dist/index.css +15 -1
- package/dist/index.css.map +1 -1
- package/dist/index.d.mts +194 -41
- package/dist/index.d.ts +194 -41
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -2
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -37
package/dist/index.d.ts
CHANGED
|
@@ -253,7 +253,7 @@ type PortCableType = 'smf' | 'cat6' | 'om3' | 'om4' | 'om5' | 'cat5e' | 'cat6a'
|
|
|
253
253
|
*
|
|
254
254
|
* @public
|
|
255
255
|
*/
|
|
256
|
-
type DeviceImageFit = 'cover' | 'contain' | 'fill' | 'none' | 'scale-down';
|
|
256
|
+
type DeviceImageFit = 'cover' | 'contain' | 'contain-height' | 'fill' | 'none' | 'scale-down';
|
|
257
257
|
/**
|
|
258
258
|
* Device image repeat options.
|
|
259
259
|
* @public
|
|
@@ -298,8 +298,9 @@ interface PortPosition {
|
|
|
298
298
|
yPercent?: number;
|
|
299
299
|
}
|
|
300
300
|
/**
|
|
301
|
-
*
|
|
302
|
-
* `react-networks` groups
|
|
301
|
+
* Recommended simple port input for device and PDU rendering.
|
|
302
|
+
* Pass a flat array in `ports`; `react-networks` groups entries into front/rear
|
|
303
|
+
* `PortBlock[]` internally using each port's `face` and `group`.
|
|
303
304
|
* @public
|
|
304
305
|
*/
|
|
305
306
|
interface DevicePort {
|
|
@@ -319,6 +320,8 @@ interface DevicePort {
|
|
|
319
320
|
cableType?: PortCableType;
|
|
320
321
|
/** Optional power connector type for rendering (mainly for PDU ports) */
|
|
321
322
|
connectorType?: 'C13' | 'C14' | 'C19' | 'C20';
|
|
323
|
+
/** Optional compatibility keys. When omitted, defaults are derived from type/cable/connector data. */
|
|
324
|
+
compatibility?: string[];
|
|
322
325
|
/** Optional sort order within a face/group bucket */
|
|
323
326
|
order?: number;
|
|
324
327
|
/**
|
|
@@ -341,6 +344,8 @@ interface Port {
|
|
|
341
344
|
cableType?: PortCableType;
|
|
342
345
|
/** Optional power connector type for rendering (mainly for PDU ports) */
|
|
343
346
|
connectorType?: 'C13' | 'C14' | 'C19' | 'C20';
|
|
347
|
+
/** Optional compatibility keys. When omitted, defaults are derived from type/cable/connector data. */
|
|
348
|
+
compatibility?: string[];
|
|
344
349
|
/** Optional explicit handle placement */
|
|
345
350
|
position?: PortPosition;
|
|
346
351
|
}
|
|
@@ -399,11 +404,11 @@ interface NetworkNodeDataBase extends DeviceImageOptions {
|
|
|
399
404
|
label: string;
|
|
400
405
|
/** Current status of the node/device */
|
|
401
406
|
status?: DeviceStatus | string;
|
|
402
|
-
/**
|
|
407
|
+
/** Simple flat port input. Use `portGroups` / `rearPortGroups` for explicit grouped control. */
|
|
403
408
|
ports?: DevicePort[] | number;
|
|
404
|
-
/**
|
|
409
|
+
/** Advanced grouped front port input */
|
|
405
410
|
portGroups?: PortBlock[];
|
|
406
|
-
/**
|
|
411
|
+
/** Advanced grouped rear port input */
|
|
407
412
|
rearPortGroups?: PortBlock[];
|
|
408
413
|
/** List of connected node IDs */
|
|
409
414
|
connections?: string[];
|
|
@@ -419,6 +424,8 @@ interface NetworkNodeDataBase extends DeviceImageOptions {
|
|
|
419
424
|
uHeight?: number;
|
|
420
425
|
/** Device position within rack in U units */
|
|
421
426
|
uPosition?: number;
|
|
427
|
+
/** Whether this node is currently mounted inside a rack container */
|
|
428
|
+
isRackMounted?: boolean;
|
|
422
429
|
/** Current front/rear view orientation */
|
|
423
430
|
view?: DeviceView;
|
|
424
431
|
/** Rack face orientation */
|
|
@@ -701,9 +708,148 @@ type NetworkEdge<TData extends NetworkEdgeData = NetworkEdgeData> = {
|
|
|
701
708
|
targetHandle?: string;
|
|
702
709
|
/** Type of network connection */
|
|
703
710
|
type?: NetworkEdgeType;
|
|
711
|
+
/** Whether the edge should be hidden from rendering */
|
|
712
|
+
hidden?: boolean;
|
|
704
713
|
/** Edge data and configuration */
|
|
705
714
|
data?: TData;
|
|
706
715
|
};
|
|
716
|
+
/**
|
|
717
|
+
* High-level document format independent from React Flow handle ids.
|
|
718
|
+
* @public
|
|
719
|
+
*/
|
|
720
|
+
interface DiagramDocument {
|
|
721
|
+
nodes: DiagramNode[];
|
|
722
|
+
edges: DiagramEdge[];
|
|
723
|
+
ui?: DiagramUiState;
|
|
724
|
+
metadata?: Record<string, unknown>;
|
|
725
|
+
}
|
|
726
|
+
/**
|
|
727
|
+
* Node kinds used by the document model.
|
|
728
|
+
* @public
|
|
729
|
+
*/
|
|
730
|
+
type DiagramNodeKind = 'rack' | 'equipment' | 'pdu' | 'fiber' | 'tube' | 'cable' | 'multi-tube-cable' | 'splice' | 'coupler' | 'splitter' | 'container' | 'fibre-flow-cable' | 'fibre-flow-closure';
|
|
731
|
+
/**
|
|
732
|
+
* Placement data for document nodes.
|
|
733
|
+
* @public
|
|
734
|
+
*/
|
|
735
|
+
interface DiagramNodePlacement {
|
|
736
|
+
position: {
|
|
737
|
+
x: number;
|
|
738
|
+
y: number;
|
|
739
|
+
};
|
|
740
|
+
parentId?: string;
|
|
741
|
+
extent?: 'parent';
|
|
742
|
+
rack?: {
|
|
743
|
+
uPosition?: number;
|
|
744
|
+
mountMode?: RackMountMode;
|
|
745
|
+
rackLayout?: RackLayoutMode;
|
|
746
|
+
rackWidthPx?: number;
|
|
747
|
+
rackFaceGapPx?: number;
|
|
748
|
+
};
|
|
749
|
+
container?: {
|
|
750
|
+
slotPosition?: number;
|
|
751
|
+
holderPosition?: number;
|
|
752
|
+
};
|
|
753
|
+
}
|
|
754
|
+
/**
|
|
755
|
+
* Endpoint definition for document nodes.
|
|
756
|
+
* @public
|
|
757
|
+
*/
|
|
758
|
+
interface DiagramEndpoint {
|
|
759
|
+
id: string;
|
|
760
|
+
label: string;
|
|
761
|
+
face?: DeviceView | 'internal';
|
|
762
|
+
group?: string;
|
|
763
|
+
role?: 'network' | 'power' | 'fiber' | 'tube' | 'splice' | 'coupler' | 'splitter' | 'cable' | 'generic';
|
|
764
|
+
medium?: 'ethernet' | 'fiber' | 'power' | 'tube' | 'generic';
|
|
765
|
+
type?: PortType;
|
|
766
|
+
cableType?: PortCableType;
|
|
767
|
+
connector?: string;
|
|
768
|
+
compatibility?: string[];
|
|
769
|
+
layout?: PortPosition;
|
|
770
|
+
}
|
|
771
|
+
/**
|
|
772
|
+
* Render-focused node data for the document model.
|
|
773
|
+
* @public
|
|
774
|
+
*/
|
|
775
|
+
interface DiagramNodeRender {
|
|
776
|
+
status?: DeviceStatus | string;
|
|
777
|
+
view?: DeviceView;
|
|
778
|
+
face?: DeviceView;
|
|
779
|
+
width?: Width | number;
|
|
780
|
+
widthPx?: number;
|
|
781
|
+
height?: number;
|
|
782
|
+
header?: string;
|
|
783
|
+
color?: string;
|
|
784
|
+
colorMode?: 'light' | 'dark' | 'system';
|
|
785
|
+
rackWidthPx?: number;
|
|
786
|
+
rackFaceGapPx?: number;
|
|
787
|
+
images?: DeviceImageOptions;
|
|
788
|
+
dimensions?: Record<string, number | undefined>;
|
|
789
|
+
showUMarkers?: boolean;
|
|
790
|
+
customHeaderText?: string;
|
|
791
|
+
powerSide?: PowerSide;
|
|
792
|
+
rotation?: number;
|
|
793
|
+
}
|
|
794
|
+
/**
|
|
795
|
+
* External reference attached to a document node.
|
|
796
|
+
* @public
|
|
797
|
+
*/
|
|
798
|
+
interface DiagramExternalRef {
|
|
799
|
+
source: 'netbox' | 'inventory' | string;
|
|
800
|
+
id: string | number;
|
|
801
|
+
type?: string;
|
|
802
|
+
metadata?: Record<string, unknown>;
|
|
803
|
+
}
|
|
804
|
+
/**
|
|
805
|
+
* Document node.
|
|
806
|
+
* @public
|
|
807
|
+
*/
|
|
808
|
+
interface DiagramNode {
|
|
809
|
+
id: string;
|
|
810
|
+
kind: DiagramNodeKind;
|
|
811
|
+
subtype?: string;
|
|
812
|
+
label: string;
|
|
813
|
+
placement: DiagramNodePlacement;
|
|
814
|
+
endpoints?: DiagramEndpoint[];
|
|
815
|
+
render?: DiagramNodeRender;
|
|
816
|
+
config?: Record<string, unknown>;
|
|
817
|
+
externalRefs?: DiagramExternalRef[];
|
|
818
|
+
metadata?: Record<string, unknown>;
|
|
819
|
+
}
|
|
820
|
+
/**
|
|
821
|
+
* Endpoint reference used by document edges.
|
|
822
|
+
* @public
|
|
823
|
+
*/
|
|
824
|
+
interface DiagramEdgeEndpoint {
|
|
825
|
+
nodeId: string;
|
|
826
|
+
endpointId?: string | null;
|
|
827
|
+
}
|
|
828
|
+
/**
|
|
829
|
+
* Document edge.
|
|
830
|
+
* @public
|
|
831
|
+
*/
|
|
832
|
+
interface DiagramEdge {
|
|
833
|
+
id: string;
|
|
834
|
+
source: DiagramEdgeEndpoint;
|
|
835
|
+
target: DiagramEdgeEndpoint;
|
|
836
|
+
type?: NetworkEdgeType;
|
|
837
|
+
hidden?: boolean;
|
|
838
|
+
data?: NetworkEdgeData;
|
|
839
|
+
metadata?: Record<string, unknown>;
|
|
840
|
+
}
|
|
841
|
+
/**
|
|
842
|
+
* Non-topology UI state stored alongside a document.
|
|
843
|
+
* @public
|
|
844
|
+
*/
|
|
845
|
+
interface DiagramUiState {
|
|
846
|
+
nodeState?: Record<string, {
|
|
847
|
+
view?: DeviceView;
|
|
848
|
+
face?: DeviceView;
|
|
849
|
+
handleSideMap?: Record<string, DeviceView>;
|
|
850
|
+
}>;
|
|
851
|
+
metadata?: Record<string, unknown>;
|
|
852
|
+
}
|
|
707
853
|
/**
|
|
708
854
|
* Rack device types
|
|
709
855
|
* @public
|
|
@@ -759,13 +905,13 @@ interface RackDevice extends DeviceImageOptions {
|
|
|
759
905
|
mountMode?: RackMountMode;
|
|
760
906
|
/** Device role in network */
|
|
761
907
|
role?: string;
|
|
762
|
-
/**
|
|
908
|
+
/** Recommended simple port input. Use `portGroups` / `rearPortGroups` for explicit grouped control. */
|
|
763
909
|
ports?: DevicePort[];
|
|
764
910
|
/** Current status of the device */
|
|
765
911
|
status?: DeviceStatus | string;
|
|
766
|
-
/**
|
|
912
|
+
/** Advanced grouped front port input */
|
|
767
913
|
portGroups?: PortBlock[];
|
|
768
|
-
/**
|
|
914
|
+
/** Advanced grouped rear port input */
|
|
769
915
|
rearPortGroups?: PortBlock[];
|
|
770
916
|
/** Power port side for rear view */
|
|
771
917
|
powerSide?: PowerSide;
|
|
@@ -973,6 +1119,12 @@ interface NetworkDiagramStoreApi {
|
|
|
973
1119
|
* @public
|
|
974
1120
|
*/
|
|
975
1121
|
interface NetworkDiagramProps {
|
|
1122
|
+
/** Controlled document model. When provided, it takes precedence over nodes/edges props. */
|
|
1123
|
+
document?: DiagramDocument;
|
|
1124
|
+
/** Initial document for uncontrolled document mode. */
|
|
1125
|
+
initialDocument?: DiagramDocument;
|
|
1126
|
+
/** Callback when the document changes in document mode. */
|
|
1127
|
+
onDocumentChange?: (document: DiagramDocument) => void;
|
|
976
1128
|
/** Controlled nodes array */
|
|
977
1129
|
nodes?: NetworkNode[];
|
|
978
1130
|
/** Controlled edges array */
|
|
@@ -1051,30 +1203,6 @@ interface NetworkDiagramProps {
|
|
|
1051
1203
|
fitViewOptions?: FitViewOptions;
|
|
1052
1204
|
}
|
|
1053
1205
|
|
|
1054
|
-
/**
|
|
1055
|
-
* Main component for rendering interactive network diagrams.
|
|
1056
|
-
*
|
|
1057
|
-
* The NetworkDiagram component provides a complete solution for visualizing
|
|
1058
|
-
* network infrastructure including racks, devices, fiber connections, and power distribution.
|
|
1059
|
-
*
|
|
1060
|
-
* @example
|
|
1061
|
-
* ```tsx
|
|
1062
|
-
* import { NetworkDiagram, NetworkNode, NetworkEdge } from '@mp70/react-networks';
|
|
1063
|
-
*
|
|
1064
|
-
* const nodes: NetworkNode[] = [
|
|
1065
|
-
* {
|
|
1066
|
-
* id: 'rack-1',
|
|
1067
|
-
* type: 'rack',
|
|
1068
|
-
* position: { x: 100, y: 100 },
|
|
1069
|
-
* data: { label: 'Main Rack', uHeight: 42 }
|
|
1070
|
-
* }
|
|
1071
|
-
* ];
|
|
1072
|
-
*
|
|
1073
|
-
* <NetworkDiagram nodes={nodes} edges={[]} />
|
|
1074
|
-
* ```
|
|
1075
|
-
*
|
|
1076
|
-
* @public
|
|
1077
|
-
*/
|
|
1078
1206
|
declare const NetworkDiagram: React$1.FC<NetworkDiagramProps>;
|
|
1079
1207
|
|
|
1080
1208
|
interface DiagramErrorBoundaryProps {
|
|
@@ -1194,12 +1322,9 @@ declare const PowerEdge: React$1.FC<EdgeProps>;
|
|
|
1194
1322
|
* label: 'Web Server',
|
|
1195
1323
|
* deviceType: 'server',
|
|
1196
1324
|
* uPosition: 1,
|
|
1197
|
-
* ports: [
|
|
1198
|
-
*
|
|
1199
|
-
*
|
|
1200
|
-
* { label: 'eth0', connected: true, type: 'ethernet' }
|
|
1201
|
-
* ]
|
|
1202
|
-
* }]
|
|
1325
|
+
* ports: [
|
|
1326
|
+
* { id: 'eth0', label: 'eth0', group: 'Network Ports', connected: true, type: 'ethernet' }
|
|
1327
|
+
* ]
|
|
1203
1328
|
* }
|
|
1204
1329
|
* }
|
|
1205
1330
|
* ```
|
|
@@ -1976,6 +2101,30 @@ declare function hasFrontPorts(data: PortFaceData | undefined): boolean;
|
|
|
1976
2101
|
declare function hasRearPorts(data: PortFaceData | undefined): boolean;
|
|
1977
2102
|
declare function getDefaultDeviceView(data: PortFaceData | undefined): DeviceView;
|
|
1978
2103
|
|
|
2104
|
+
interface NetworkGraphSnapshot {
|
|
2105
|
+
nodes: NetworkNode[];
|
|
2106
|
+
edges: NetworkEdge[];
|
|
2107
|
+
}
|
|
2108
|
+
declare function networkGraphToDiagramDocument(snapshot: NetworkGraphSnapshot, previousDocument?: DiagramDocument): DiagramDocument;
|
|
2109
|
+
declare function diagramDocumentToNetworkGraph(document: DiagramDocument): NetworkGraphSnapshot;
|
|
2110
|
+
|
|
2111
|
+
type EndpointConnectionKind = 'power' | 'network' | 'unknown';
|
|
2112
|
+
interface EndpointMetadata {
|
|
2113
|
+
normalizedHandle: string;
|
|
2114
|
+
face?: DeviceView;
|
|
2115
|
+
kind: EndpointConnectionKind;
|
|
2116
|
+
compatibility: string[];
|
|
2117
|
+
}
|
|
2118
|
+
declare function resolveEndpointCompatibilityKeys(input: {
|
|
2119
|
+
compatibility?: string[];
|
|
2120
|
+
kind?: EndpointConnectionKind;
|
|
2121
|
+
type?: string;
|
|
2122
|
+
cableType?: string;
|
|
2123
|
+
connectorType?: string;
|
|
2124
|
+
handleId?: string;
|
|
2125
|
+
}): string[];
|
|
2126
|
+
declare function getEndpointMetadata(node?: NetworkNode, handle?: string | null): EndpointMetadata;
|
|
2127
|
+
|
|
1979
2128
|
/**
|
|
1980
2129
|
* Power connector utilities for consistent styling across devices and PDUs
|
|
1981
2130
|
*/
|
|
@@ -2307,6 +2456,10 @@ interface TemplateParseResult {
|
|
|
2307
2456
|
*
|
|
2308
2457
|
* **Port position semantics**: Positions use `xPercent` / `yPercent` (0-100)
|
|
2309
2458
|
* to express where the port CENTER should be relative to the device face.
|
|
2459
|
+
* Raw imports may also use semantic edge strings like `top-left` or
|
|
2460
|
+
* `right-middle`; those are normalized into side/offset placements during
|
|
2461
|
+
* import. `xPercent` / `yPercent` remain the manual override path for
|
|
2462
|
+
* detailed templates.
|
|
2310
2463
|
* The renderer (`DeviceNode`) converts these to pixel coordinates and clamps
|
|
2311
2464
|
* them so the port stays fully inside the device bounds. Clamp bounds are
|
|
2312
2465
|
* computed from the **actual** rendered port dimensions (which vary by port
|
|
@@ -2328,7 +2481,7 @@ interface RawTemplatePort {
|
|
|
2328
2481
|
type?: string;
|
|
2329
2482
|
connectorType?: string;
|
|
2330
2483
|
connector_type?: string;
|
|
2331
|
-
position?: {
|
|
2484
|
+
position?: string | {
|
|
2332
2485
|
side?: string;
|
|
2333
2486
|
offsetPercent?: number;
|
|
2334
2487
|
offset_percent?: number;
|
|
@@ -2447,4 +2600,4 @@ declare function useNetworkDiagram(store: NetworkDiagramStore): NetworkDiagramSt
|
|
|
2447
2600
|
declare function useNodes(store: NetworkDiagramStore): NetworkNode[];
|
|
2448
2601
|
declare function useEdges(store: NetworkDiagramStore): NetworkEdge[];
|
|
2449
2602
|
|
|
2450
|
-
export { COUPLERS_PER_PANEL, COUPLER_SLOT_HEIGHT_PX, COUPLER_WIDTH_PX, CableNode, ClosureNode, CouplerNode, type DeviceImageFit, type DeviceImageOptions, type DeviceImageRepeat, DeviceNode, DevicePlacementError, type DevicePlacementValidation, type DevicePort, type DeviceTemplateV2, DiagramErrorBoundary, type DiagramErrorBoundaryProps, FIBER_COLORS_12, type FiberCable, type FiberColorId, FiberEdge, FiberNode, FibreCableWithTubesExpanded, type FibreFlowCable, type FibreFlowCableKind, type FibreFlowCableNodeData, type FibreFlowCircuit, type FibreFlowClosure, type FibreFlowClosureNodeData, type FibreFlowEndpoint, FibreFlowMap, type FibreFlowMapProps, type FibreFlowSplice, FibreSplitNode, HANDLE_EXTENSION_PX, type MountClass, MultiTubeCableNode, NetworkDiagram, type NetworkDiagramFitViewOptions, type NetworkDiagramFlowMethods, type NetworkDiagramFlowObject, type NetworkDiagramOptions, type NetworkDiagramProps, type NetworkDiagramStoreApi, type NetworkDiagramToImageOptions, type NetworkEdge, type NetworkEdgeData, type NetworkNode, type NetworkNodeData, type NetworkNodeDataBase, type NetworkNodeDataByType, PANEL_BORDER_WIDTH, PANEL_HEADER_HEIGHT, PANEL_HEIGHT_PX, PANEL_PADDING, PANEL_TUBE_TRAY_SPACING, PANEL_WIDTH_PX, POWER_CONNECTORS, PatchPanelNode, type Port, type PortBlock, type PortCableType, type PortType, PowerEdge, RACK_HEADER_HEIGHT, RACK_WIDTH_PX, type RackConfig, type RackDevice, type RackLayoutMode, type RackMountMode, RackNode, type RackSchemaOptions, type RawNetboxTemplate, type RawTemplatePort, type RawTemplatePortBlock, type ReplaceEdgeOptions, type SpliceConfig, SpliceNode, SplicePlacementError, type SplicePlacementValidation, type SpliceSchemaOptions, type SpliceTrayConfig, SpliceTrayNode, TEMPLATE_SCHEMA_VERSION, type TemplateFaceData, type TemplateFrontRearPortLink, type TemplateParseResult, type TemplatePort, type TemplatePortBlock, type TemplateSource, type TemplateValidationIssue, type TemplateValidationReport, type TemplateWidth, TubeNode, U_HEIGHT_PX, type ValidateConnectionParams, type ValidationResult, VerticalPDU, Width, addDeviceToRack, addSpliceToTray, baseColorFor, buildNodesFromRackConfig, buildNodesFromSpliceConfig, buildPortBlocksFromPorts, calculateClosureDimensions, calculateCouplerRightX, calculateCouplerSlotSpacing, calculateCouplerSpacing, calculateDevicePositionFromU, calculatePanelDimensions, calculateSlotPositionFromY, calculateSplicePositionFromNumber, calculateUPositions, calculateYFromSlotPosition, countTemplateFacePorts, createNetworkDiagramStore, createRackConfigFromNodes, createSpliceConfigFromNodes, fiberSolidOrStriped, findNearestRack, findNextAvailableHolderPosition, findNextAvailableUPosition, generateLayout, getConnectorConfig, getCouplerDimensions, getDefaultDeviceView, getDeviceConnectorType, getFiberColor, getFrontPortBlocks, getInnerContentWidth, getPDUPortType, getPanelHeight, getPanelWidth, getPowerPortStyle, getRackBounds, getRearPortBlocks, getResolvedPortBlocks, getStatusColor, getTrayDimensions, getTubeDimensions, hasFrontPorts, hasRearPorts, inventoryCableToNetworkEdge, inventoryDeviceToNetworkNode, inventoryRackToNetworkNode, inventoryToNetworkDiagram, isHighPowerConnector, isPointInRack, isStriped, isUPositionAvailable, netboxCableToNetworkEdge, netboxDeviceToNetworkNode, netboxRackToNetworkNode, netboxToNetworkDiagram, parseNetboxTemplate, removeDeviceFromRack, removeSpliceFromTray, replaceEdge, snapToCouplerPosition, snapToSplicePosition, snapToUPosition, updateDeviceUPosition$1 as updateDeviceUPosition, updateDeviceUPosition as updateDeviceUPositionInSchema, updateSpliceHolderPosition, useEdges as useDiagramEdges, useNodes as useDiagramNodes, useNetworkDiagram, validateAndSnapDevice, validateRackDevicePlacements, validateRenderFidelity, validateSplicePlacements };
|
|
2603
|
+
export { COUPLERS_PER_PANEL, COUPLER_SLOT_HEIGHT_PX, COUPLER_WIDTH_PX, CableNode, ClosureNode, CouplerNode, type DeviceImageFit, type DeviceImageOptions, type DeviceImageRepeat, DeviceNode, DevicePlacementError, type DevicePlacementValidation, type DevicePort, type DeviceStatus, type DeviceTemplateV2, type DeviceView, type DiagramDocument, type DiagramEdge, type DiagramEdgeEndpoint, type DiagramEndpoint, DiagramErrorBoundary, type DiagramErrorBoundaryProps, type DiagramExternalRef, type DiagramNode, type DiagramNodeKind, type DiagramNodePlacement, type DiagramNodeRender, type DiagramUiState, FIBER_COLORS_12, type FiberCable, type FiberCableType, type FiberColorId, FiberEdge, FiberNode, FibreCableWithTubesExpanded, type FibreFlowCable, type FibreFlowCableKind, type FibreFlowCableNodeData, type FibreFlowCircuit, type FibreFlowClosure, type FibreFlowClosureNodeData, type FibreFlowEndpoint, FibreFlowMap, type FibreFlowMapProps, type FibreFlowSplice, FibreSplitNode, HANDLE_EXTENSION_PX, type MountClass, MultiTubeCableNode, NetworkDiagram, type NetworkDiagramFitViewOptions, type NetworkDiagramFlowMethods, type NetworkDiagramFlowObject, type NetworkDiagramOptions, type NetworkDiagramProps, type NetworkDiagramStoreApi, type NetworkDiagramToImageOptions, type NetworkEdge, type NetworkEdgeData, type NetworkGraphSnapshot, type NetworkNode, type NetworkNodeData, type NetworkNodeDataBase, type NetworkNodeDataByType, PANEL_BORDER_WIDTH, PANEL_HEADER_HEIGHT, PANEL_HEIGHT_PX, PANEL_PADDING, PANEL_TUBE_TRAY_SPACING, PANEL_WIDTH_PX, POWER_CONNECTORS, PatchPanelNode, type Port, type PortBlock, type PortCableType, type PortPosition, type PortType, PowerEdge, type PowerSide, RACK_HEADER_HEIGHT, RACK_WIDTH_PX, type RackConfig, type RackDevice, type RackDeviceType, type RackLayoutMode, type RackMountMode, RackNode, type RackSchemaOptions, type RawNetboxTemplate, type RawTemplatePort, type RawTemplatePortBlock, type ReplaceEdgeOptions, type SpliceConfig, SpliceNode, SplicePlacementError, type SplicePlacementValidation, type SpliceSchemaOptions, type SpliceTrayConfig, SpliceTrayNode, TEMPLATE_SCHEMA_VERSION, type TemplateFaceData, type TemplateFrontRearPortLink, type TemplateParseResult, type TemplatePort, type TemplatePortBlock, type TemplateSource, type TemplateValidationIssue, type TemplateValidationReport, type TemplateWidth, TubeNode, type UNumberingDirection, U_HEIGHT_PX, type ValidateConnectionParams, type ValidationResult, VerticalPDU, Width, addDeviceToRack, addSpliceToTray, baseColorFor, buildNodesFromRackConfig, buildNodesFromSpliceConfig, buildPortBlocksFromPorts, calculateClosureDimensions, calculateCouplerRightX, calculateCouplerSlotSpacing, calculateCouplerSpacing, calculateDevicePositionFromU, calculatePanelDimensions, calculateSlotPositionFromY, calculateSplicePositionFromNumber, calculateUPositions, calculateYFromSlotPosition, countTemplateFacePorts, createNetworkDiagramStore, createRackConfigFromNodes, createSpliceConfigFromNodes, diagramDocumentToNetworkGraph, fiberSolidOrStriped, findNearestRack, findNextAvailableHolderPosition, findNextAvailableUPosition, generateLayout, getConnectorConfig, getCouplerDimensions, getDefaultDeviceView, getDeviceConnectorType, getEndpointMetadata, getFiberColor, getFrontPortBlocks, getInnerContentWidth, getPDUPortType, getPanelHeight, getPanelWidth, getPowerPortStyle, getRackBounds, getRearPortBlocks, getResolvedPortBlocks, getStatusColor, getTrayDimensions, getTubeDimensions, hasFrontPorts, hasRearPorts, inventoryCableToNetworkEdge, inventoryDeviceToNetworkNode, inventoryRackToNetworkNode, inventoryToNetworkDiagram, isHighPowerConnector, isPointInRack, isStriped, isUPositionAvailable, netboxCableToNetworkEdge, netboxDeviceToNetworkNode, netboxRackToNetworkNode, netboxToNetworkDiagram, networkGraphToDiagramDocument, parseNetboxTemplate, removeDeviceFromRack, removeSpliceFromTray, replaceEdge, resolveEndpointCompatibilityKeys, snapToCouplerPosition, snapToSplicePosition, snapToUPosition, updateDeviceUPosition$1 as updateDeviceUPosition, updateDeviceUPosition as updateDeviceUPositionInSchema, updateSpliceHolderPosition, useEdges as useDiagramEdges, useNodes as useDiagramNodes, useNetworkDiagram, validateAndSnapDevice, validateRackDevicePlacements, validateRenderFidelity, validateSplicePlacements };
|