@mp70/react-networks 0.3.0-alpha.3 → 0.3.1-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/dist/index.d.mts CHANGED
@@ -61,7 +61,7 @@ interface NetBoxMappedPort {
61
61
  position?: NetBoxPortPosition;
62
62
  }
63
63
  interface NetBoxDeviceTransformOptions {
64
- /** Include interface arrays as `ports`/`rearPorts` in generated nodes */
64
+ /** Include interface arrays as flat `ports` in generated nodes */
65
65
  includeInterfacePorts?: boolean;
66
66
  /** Include per-port position metadata when provided */
67
67
  includePortPositions?: boolean;
@@ -297,6 +297,37 @@ interface PortPosition {
297
297
  /** Absolute Y position as percentage (0-100) */
298
298
  yPercent?: number;
299
299
  }
300
+ /**
301
+ * Simplified flat port input for device and PDU rendering.
302
+ * `react-networks` groups these into front/rear `PortBlock[]` internally.
303
+ * @public
304
+ */
305
+ interface DevicePort {
306
+ /** Stable handle identifier override (defaults to `group + label`, or `label` for power) */
307
+ id?: string;
308
+ /** Display label for the port */
309
+ label: string;
310
+ /** Front/rear device face. `back` is accepted as an alias for `rear`. */
311
+ face?: DeviceView | 'back';
312
+ /** Optional block/group name (for example `Network Ports`, `QSFP28`, `Power Ports`) */
313
+ group?: string;
314
+ /** Whether the port is currently connected */
315
+ connected?: boolean;
316
+ /** Type of port for styling and validation */
317
+ type?: PortType;
318
+ /** Cable type for connection validation */
319
+ cableType?: PortCableType;
320
+ /** Optional power connector type for rendering (mainly for PDU ports) */
321
+ connectorType?: 'C13' | 'C14' | 'C19' | 'C20';
322
+ /** Optional sort order within a face/group bucket */
323
+ order?: number;
324
+ /**
325
+ * Optional placement hint.
326
+ * Use `side` with `offsetPercent`/`offsetPx` for edge-anchored placement,
327
+ * or `xPercent`/`yPercent` for exact coordinates.
328
+ */
329
+ position?: PortPosition;
330
+ }
300
331
  interface Port {
301
332
  /** Stable handle identifier override (defaults to `label`) */
302
333
  id?: string;
@@ -368,10 +399,12 @@ interface NetworkNodeDataBase extends DeviceImageOptions {
368
399
  label: string;
369
400
  /** Current status of the node/device */
370
401
  status?: DeviceStatus | string;
371
- /** Port configurations for device-like nodes */
372
- ports?: PortBlock[] | number;
373
- /** Rear port configurations */
374
- rearPorts?: PortBlock[];
402
+ /** Flat port input that is normalized into grouped front/rear blocks internally */
403
+ ports?: DevicePort[] | number;
404
+ /** Lower-level grouped front port input */
405
+ portGroups?: PortBlock[];
406
+ /** Lower-level grouped rear port input */
407
+ rearPortGroups?: PortBlock[];
375
408
  /** List of connected node IDs */
376
409
  connections?: string[];
377
410
  /** NetBox integration ID */
@@ -521,14 +554,14 @@ interface NetworkNodeDataBase extends DeviceImageOptions {
521
554
  * @public
522
555
  */
523
556
  interface RackNodeData extends NetworkNodeDataBase {
524
- ports?: number | PortBlock[];
557
+ ports?: number;
525
558
  }
526
559
  /**
527
560
  * Device-like node data (servers/switches/routers/generic device).
528
561
  * @public
529
562
  */
530
563
  interface DeviceNodeData extends NetworkNodeDataBase {
531
- ports?: PortBlock[] | number;
564
+ ports?: DevicePort[] | number;
532
565
  }
533
566
  /**
534
567
  * Fibre flow cable node data.
@@ -726,12 +759,14 @@ interface RackDevice extends DeviceImageOptions {
726
759
  mountMode?: RackMountMode;
727
760
  /** Device role in network */
728
761
  role?: string;
762
+ /** Flat port input normalized by the renderer */
763
+ ports?: DevicePort[];
729
764
  /** Current status of the device */
730
765
  status?: DeviceStatus | string;
731
- /** Front port configurations */
732
- ports?: PortBlock[];
733
- /** Rear port configurations */
734
- rearPorts?: PortBlock[];
766
+ /** Lower-level grouped front port input */
767
+ portGroups?: PortBlock[];
768
+ /** Lower-level grouped rear port input */
769
+ rearPortGroups?: PortBlock[];
735
770
  /** Power port side for rear view */
736
771
  powerSide?: PowerSide;
737
772
  /** Connected device IDs */
@@ -1928,6 +1963,19 @@ declare function addSpliceToTray(trays: SpliceTrayConfig[], trayId: string, spli
1928
1963
  */
1929
1964
  declare function removeSpliceFromTray(trays: SpliceTrayConfig[], trayId: string, spliceId: string): SpliceTrayConfig[];
1930
1965
 
1966
+ type PortFaces = {
1967
+ ports: PortBlock[];
1968
+ rearPorts: PortBlock[];
1969
+ };
1970
+ type PortFaceData = Pick<NetworkNode['data'], 'ports' | 'portGroups' | 'rearPortGroups'>;
1971
+ declare function buildPortBlocksFromPorts(devicePorts: DevicePort[]): PortFaces;
1972
+ declare function getResolvedPortBlocks(data: PortFaceData | undefined): PortFaces;
1973
+ declare function getFrontPortBlocks(data: PortFaceData | undefined): PortBlock[];
1974
+ declare function getRearPortBlocks(data: PortFaceData | undefined): PortBlock[];
1975
+ declare function hasFrontPorts(data: PortFaceData | undefined): boolean;
1976
+ declare function hasRearPorts(data: PortFaceData | undefined): boolean;
1977
+ declare function getDefaultDeviceView(data: PortFaceData | undefined): DeviceView;
1978
+
1931
1979
  /**
1932
1980
  * Power connector utilities for consistent styling across devices and PDUs
1933
1981
  */
@@ -2399,4 +2447,4 @@ declare function useNetworkDiagram(store: NetworkDiagramStore): NetworkDiagramSt
2399
2447
  declare function useNodes(store: NetworkDiagramStore): NetworkNode[];
2400
2448
  declare function useEdges(store: NetworkDiagramStore): NetworkEdge[];
2401
2449
 
2402
- 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 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, calculateClosureDimensions, calculateCouplerRightX, calculateCouplerSlotSpacing, calculateCouplerSpacing, calculateDevicePositionFromU, calculatePanelDimensions, calculateSlotPositionFromY, calculateSplicePositionFromNumber, calculateUPositions, calculateYFromSlotPosition, countTemplateFacePorts, createNetworkDiagramStore, createRackConfigFromNodes, createSpliceConfigFromNodes, fiberSolidOrStriped, findNearestRack, findNextAvailableHolderPosition, findNextAvailableUPosition, generateLayout, getConnectorConfig, getCouplerDimensions, getDeviceConnectorType, getFiberColor, getInnerContentWidth, getPDUPortType, getPanelHeight, getPanelWidth, getPowerPortStyle, getRackBounds, getStatusColor, getTrayDimensions, getTubeDimensions, 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 };
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 };
package/dist/index.d.ts CHANGED
@@ -61,7 +61,7 @@ interface NetBoxMappedPort {
61
61
  position?: NetBoxPortPosition;
62
62
  }
63
63
  interface NetBoxDeviceTransformOptions {
64
- /** Include interface arrays as `ports`/`rearPorts` in generated nodes */
64
+ /** Include interface arrays as flat `ports` in generated nodes */
65
65
  includeInterfacePorts?: boolean;
66
66
  /** Include per-port position metadata when provided */
67
67
  includePortPositions?: boolean;
@@ -297,6 +297,37 @@ interface PortPosition {
297
297
  /** Absolute Y position as percentage (0-100) */
298
298
  yPercent?: number;
299
299
  }
300
+ /**
301
+ * Simplified flat port input for device and PDU rendering.
302
+ * `react-networks` groups these into front/rear `PortBlock[]` internally.
303
+ * @public
304
+ */
305
+ interface DevicePort {
306
+ /** Stable handle identifier override (defaults to `group + label`, or `label` for power) */
307
+ id?: string;
308
+ /** Display label for the port */
309
+ label: string;
310
+ /** Front/rear device face. `back` is accepted as an alias for `rear`. */
311
+ face?: DeviceView | 'back';
312
+ /** Optional block/group name (for example `Network Ports`, `QSFP28`, `Power Ports`) */
313
+ group?: string;
314
+ /** Whether the port is currently connected */
315
+ connected?: boolean;
316
+ /** Type of port for styling and validation */
317
+ type?: PortType;
318
+ /** Cable type for connection validation */
319
+ cableType?: PortCableType;
320
+ /** Optional power connector type for rendering (mainly for PDU ports) */
321
+ connectorType?: 'C13' | 'C14' | 'C19' | 'C20';
322
+ /** Optional sort order within a face/group bucket */
323
+ order?: number;
324
+ /**
325
+ * Optional placement hint.
326
+ * Use `side` with `offsetPercent`/`offsetPx` for edge-anchored placement,
327
+ * or `xPercent`/`yPercent` for exact coordinates.
328
+ */
329
+ position?: PortPosition;
330
+ }
300
331
  interface Port {
301
332
  /** Stable handle identifier override (defaults to `label`) */
302
333
  id?: string;
@@ -368,10 +399,12 @@ interface NetworkNodeDataBase extends DeviceImageOptions {
368
399
  label: string;
369
400
  /** Current status of the node/device */
370
401
  status?: DeviceStatus | string;
371
- /** Port configurations for device-like nodes */
372
- ports?: PortBlock[] | number;
373
- /** Rear port configurations */
374
- rearPorts?: PortBlock[];
402
+ /** Flat port input that is normalized into grouped front/rear blocks internally */
403
+ ports?: DevicePort[] | number;
404
+ /** Lower-level grouped front port input */
405
+ portGroups?: PortBlock[];
406
+ /** Lower-level grouped rear port input */
407
+ rearPortGroups?: PortBlock[];
375
408
  /** List of connected node IDs */
376
409
  connections?: string[];
377
410
  /** NetBox integration ID */
@@ -521,14 +554,14 @@ interface NetworkNodeDataBase extends DeviceImageOptions {
521
554
  * @public
522
555
  */
523
556
  interface RackNodeData extends NetworkNodeDataBase {
524
- ports?: number | PortBlock[];
557
+ ports?: number;
525
558
  }
526
559
  /**
527
560
  * Device-like node data (servers/switches/routers/generic device).
528
561
  * @public
529
562
  */
530
563
  interface DeviceNodeData extends NetworkNodeDataBase {
531
- ports?: PortBlock[] | number;
564
+ ports?: DevicePort[] | number;
532
565
  }
533
566
  /**
534
567
  * Fibre flow cable node data.
@@ -726,12 +759,14 @@ interface RackDevice extends DeviceImageOptions {
726
759
  mountMode?: RackMountMode;
727
760
  /** Device role in network */
728
761
  role?: string;
762
+ /** Flat port input normalized by the renderer */
763
+ ports?: DevicePort[];
729
764
  /** Current status of the device */
730
765
  status?: DeviceStatus | string;
731
- /** Front port configurations */
732
- ports?: PortBlock[];
733
- /** Rear port configurations */
734
- rearPorts?: PortBlock[];
766
+ /** Lower-level grouped front port input */
767
+ portGroups?: PortBlock[];
768
+ /** Lower-level grouped rear port input */
769
+ rearPortGroups?: PortBlock[];
735
770
  /** Power port side for rear view */
736
771
  powerSide?: PowerSide;
737
772
  /** Connected device IDs */
@@ -1928,6 +1963,19 @@ declare function addSpliceToTray(trays: SpliceTrayConfig[], trayId: string, spli
1928
1963
  */
1929
1964
  declare function removeSpliceFromTray(trays: SpliceTrayConfig[], trayId: string, spliceId: string): SpliceTrayConfig[];
1930
1965
 
1966
+ type PortFaces = {
1967
+ ports: PortBlock[];
1968
+ rearPorts: PortBlock[];
1969
+ };
1970
+ type PortFaceData = Pick<NetworkNode['data'], 'ports' | 'portGroups' | 'rearPortGroups'>;
1971
+ declare function buildPortBlocksFromPorts(devicePorts: DevicePort[]): PortFaces;
1972
+ declare function getResolvedPortBlocks(data: PortFaceData | undefined): PortFaces;
1973
+ declare function getFrontPortBlocks(data: PortFaceData | undefined): PortBlock[];
1974
+ declare function getRearPortBlocks(data: PortFaceData | undefined): PortBlock[];
1975
+ declare function hasFrontPorts(data: PortFaceData | undefined): boolean;
1976
+ declare function hasRearPorts(data: PortFaceData | undefined): boolean;
1977
+ declare function getDefaultDeviceView(data: PortFaceData | undefined): DeviceView;
1978
+
1931
1979
  /**
1932
1980
  * Power connector utilities for consistent styling across devices and PDUs
1933
1981
  */
@@ -2399,4 +2447,4 @@ declare function useNetworkDiagram(store: NetworkDiagramStore): NetworkDiagramSt
2399
2447
  declare function useNodes(store: NetworkDiagramStore): NetworkNode[];
2400
2448
  declare function useEdges(store: NetworkDiagramStore): NetworkEdge[];
2401
2449
 
2402
- 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 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, calculateClosureDimensions, calculateCouplerRightX, calculateCouplerSlotSpacing, calculateCouplerSpacing, calculateDevicePositionFromU, calculatePanelDimensions, calculateSlotPositionFromY, calculateSplicePositionFromNumber, calculateUPositions, calculateYFromSlotPosition, countTemplateFacePorts, createNetworkDiagramStore, createRackConfigFromNodes, createSpliceConfigFromNodes, fiberSolidOrStriped, findNearestRack, findNextAvailableHolderPosition, findNextAvailableUPosition, generateLayout, getConnectorConfig, getCouplerDimensions, getDeviceConnectorType, getFiberColor, getInnerContentWidth, getPDUPortType, getPanelHeight, getPanelWidth, getPowerPortStyle, getRackBounds, getStatusColor, getTrayDimensions, getTubeDimensions, 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 };
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 };