@principal-ai/subsystems-react 0.20.6 → 0.21.1

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.
Files changed (270) hide show
  1. package/README.md +1 -1
  2. package/dist/graphify/anchor.d.ts +17 -0
  3. package/dist/graphify/anchor.d.ts.map +1 -1
  4. package/dist/graphify/anchor.js +41 -0
  5. package/dist/graphify/anchor.js.map +1 -1
  6. package/dist/graphify/consolidated.d.ts +40 -1
  7. package/dist/graphify/consolidated.d.ts.map +1 -1
  8. package/dist/index.d.ts +5 -5
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +2 -2
  11. package/dist/index.js.map +1 -1
  12. package/dist/pierre/{PierreThroughlineCodeView.d.ts → PierreWalkthroughCodeView.d.ts} +7 -7
  13. package/dist/pierre/{PierreThroughlineCodeView.d.ts.map → PierreWalkthroughCodeView.d.ts.map} +1 -1
  14. package/dist/pierre/{PierreThroughlineCodeView.js → PierreWalkthroughCodeView.js} +28 -36
  15. package/dist/pierre/PierreWalkthroughCodeView.js.map +1 -0
  16. package/dist/pierre/index.d.ts +2 -2
  17. package/dist/pierre/index.js +1 -1
  18. package/dist/pierre/pierreFileLang.d.ts +1 -1
  19. package/dist/pierre/pierreFileLang.js +1 -1
  20. package/dist/stories/Subsystem/ComponentGraph/fixtures.d.ts +14 -2
  21. package/dist/stories/Subsystem/ComponentGraph/fixtures.d.ts.map +1 -1
  22. package/dist/stories/Subsystem/ComponentGraph/fixtures.js +86 -20
  23. package/dist/stories/Subsystem/ComponentGraph/fixtures.js.map +1 -1
  24. package/dist/subsystem/FileDrawer.d.ts +2 -2
  25. package/dist/subsystem/FileDrawer.js +2 -2
  26. package/dist/subsystem/SubsystemComponentGraph.d.ts +25 -24
  27. package/dist/subsystem/SubsystemComponentGraph.d.ts.map +1 -1
  28. package/dist/subsystem/SubsystemComponentGraph.js +204 -199
  29. package/dist/subsystem/SubsystemComponentGraph.js.map +1 -1
  30. package/dist/subsystem/formatDeclaration.d.ts +2 -1
  31. package/dist/subsystem/formatDeclaration.d.ts.map +1 -1
  32. package/dist/subsystem/formatDeclaration.js +57 -33
  33. package/dist/subsystem/formatDeclaration.js.map +1 -1
  34. package/dist/subsystem/model.d.ts +85 -35
  35. package/dist/subsystem/model.d.ts.map +1 -1
  36. package/dist/subsystem/model.js +85 -6
  37. package/dist/subsystem/model.js.map +1 -1
  38. package/dist/subsystem/nodes.d.ts.map +1 -1
  39. package/dist/subsystem/nodes.js +30 -13
  40. package/dist/subsystem/nodes.js.map +1 -1
  41. package/dist/subsystem/tokenizeComponent.js +2 -2
  42. package/dist/subsystem/tokenizeComponent.js.map +1 -1
  43. package/package.json +3 -3
  44. package/src/graphify/anchor.test.ts +31 -2
  45. package/src/graphify/anchor.ts +46 -0
  46. package/src/graphify/consolidated.ts +43 -1
  47. package/src/index.ts +13 -5
  48. package/src/pierre/{PierreThroughlineCodeView.tsx → PierreWalkthroughCodeView.tsx} +39 -47
  49. package/src/pierre/index.ts +2 -2
  50. package/src/pierre/pierreFileLang.ts +1 -1
  51. package/src/stories/Pierre/CodeView.stories.tsx +3 -3
  52. package/src/stories/Subsystem/ComponentDeclarationAudit.stories.tsx +14 -14
  53. package/src/stories/Subsystem/ComponentGraph/Appearance.stories.tsx +13 -15
  54. package/src/stories/Subsystem/ComponentGraph/Basics.stories.tsx +8 -8
  55. package/src/stories/Subsystem/ComponentGraph/Captures.stories.tsx +14 -14
  56. package/src/stories/Subsystem/ComponentGraph/CustomEntities.stories.tsx +11 -10
  57. package/src/stories/Subsystem/ComponentGraph/DetailPanel.stories.tsx +13 -14
  58. package/src/stories/Subsystem/ComponentGraph/Flows.stories.tsx +31 -66
  59. package/src/stories/Subsystem/ComponentGraph/FrameworkStereotype.stories.tsx +2 -2
  60. package/src/stories/Subsystem/ComponentGraph/GraphTitle.stories.tsx +4 -4
  61. package/src/stories/Subsystem/ComponentGraph/Processes.stories.tsx +3 -3
  62. package/src/stories/Subsystem/ComponentGraph/Proposed.stories.tsx +1 -1
  63. package/src/stories/Subsystem/ComponentGraph/Scenarios.stories.tsx +518 -33
  64. package/src/stories/Subsystem/ComponentGraph/Spotlights.stories.tsx +13 -13
  65. package/src/stories/Subsystem/ComponentGraph/fixtures.ts +105 -21
  66. package/src/subsystem/FileDrawer.tsx +2 -2
  67. package/src/subsystem/SubsystemComponentGraph.tsx +268 -259
  68. package/src/subsystem/formatDeclaration.test.ts +76 -1
  69. package/src/subsystem/formatDeclaration.ts +57 -33
  70. package/src/subsystem/model.test.ts +27 -15
  71. package/src/subsystem/model.ts +175 -45
  72. package/src/subsystem/nodes.tsx +47 -13
  73. package/src/subsystem/tokenizeComponent.ts +2 -2
  74. package/dist/components/ConfigurationSelector.d.ts +0 -35
  75. package/dist/components/ConfigurationSelector.d.ts.map +0 -1
  76. package/dist/components/ConfigurationSelector.js +0 -63
  77. package/dist/components/ConfigurationSelector.js.map +0 -1
  78. package/dist/components/GraphRenderer.d.ts +0 -295
  79. package/dist/components/GraphRenderer.d.ts.map +0 -1
  80. package/dist/components/GraphRenderer.js +0 -2008
  81. package/dist/components/GraphRenderer.js.map +0 -1
  82. package/dist/components/MultiCanvasRenderer.d.ts +0 -75
  83. package/dist/components/MultiCanvasRenderer.d.ts.map +0 -1
  84. package/dist/components/MultiCanvasRenderer.js +0 -203
  85. package/dist/components/MultiCanvasRenderer.js.map +0 -1
  86. package/dist/components/NodeTooltip.d.ts +0 -24
  87. package/dist/components/NodeTooltip.d.ts.map +0 -1
  88. package/dist/components/NodeTooltip.js +0 -160
  89. package/dist/components/NodeTooltip.js.map +0 -1
  90. package/dist/components/SelectionSidebar.d.ts +0 -18
  91. package/dist/components/SelectionSidebar.d.ts.map +0 -1
  92. package/dist/components/SelectionSidebar.js +0 -190
  93. package/dist/components/SelectionSidebar.js.map +0 -1
  94. package/dist/components/SequenceDiagramRenderer.d.ts +0 -77
  95. package/dist/components/SequenceDiagramRenderer.d.ts.map +0 -1
  96. package/dist/components/SequenceDiagramRenderer.js +0 -604
  97. package/dist/components/SequenceDiagramRenderer.js.map +0 -1
  98. package/dist/components/WorkflowSequenceDiagram.d.ts +0 -63
  99. package/dist/components/WorkflowSequenceDiagram.d.ts.map +0 -1
  100. package/dist/components/WorkflowSequenceDiagram.js +0 -147
  101. package/dist/components/WorkflowSequenceDiagram.js.map +0 -1
  102. package/dist/components/dashboard/DashboardRenderer.d.ts +0 -10
  103. package/dist/components/dashboard/DashboardRenderer.d.ts.map +0 -1
  104. package/dist/components/dashboard/DashboardRenderer.js +0 -179
  105. package/dist/components/dashboard/DashboardRenderer.js.map +0 -1
  106. package/dist/components/dashboard/MetricPanel.d.ts +0 -10
  107. package/dist/components/dashboard/MetricPanel.d.ts.map +0 -1
  108. package/dist/components/dashboard/MetricPanel.js +0 -103
  109. package/dist/components/dashboard/MetricPanel.js.map +0 -1
  110. package/dist/components/dashboard/MockDataProvider.d.ts +0 -30
  111. package/dist/components/dashboard/MockDataProvider.d.ts.map +0 -1
  112. package/dist/components/dashboard/MockDataProvider.js +0 -270
  113. package/dist/components/dashboard/MockDataProvider.js.map +0 -1
  114. package/dist/components/dashboard/components/BarChart.d.ts +0 -10
  115. package/dist/components/dashboard/components/BarChart.d.ts.map +0 -1
  116. package/dist/components/dashboard/components/BarChart.js +0 -167
  117. package/dist/components/dashboard/components/BarChart.js.map +0 -1
  118. package/dist/components/dashboard/components/LineChart.d.ts +0 -10
  119. package/dist/components/dashboard/components/LineChart.d.ts.map +0 -1
  120. package/dist/components/dashboard/components/LineChart.js +0 -141
  121. package/dist/components/dashboard/components/LineChart.js.map +0 -1
  122. package/dist/components/dashboard/components/MetricCard.d.ts +0 -9
  123. package/dist/components/dashboard/components/MetricCard.d.ts.map +0 -1
  124. package/dist/components/dashboard/components/MetricCard.js +0 -163
  125. package/dist/components/dashboard/components/MetricCard.js.map +0 -1
  126. package/dist/components/dashboard/components/SourceLink.d.ts +0 -9
  127. package/dist/components/dashboard/components/SourceLink.d.ts.map +0 -1
  128. package/dist/components/dashboard/components/SourceLink.js +0 -39
  129. package/dist/components/dashboard/components/SourceLink.js.map +0 -1
  130. package/dist/components/dashboard/components/TimeRangeSelector.d.ts +0 -9
  131. package/dist/components/dashboard/components/TimeRangeSelector.d.ts.map +0 -1
  132. package/dist/components/dashboard/components/TimeRangeSelector.js +0 -167
  133. package/dist/components/dashboard/components/TimeRangeSelector.js.map +0 -1
  134. package/dist/components/dashboard/components/index.d.ts +0 -6
  135. package/dist/components/dashboard/components/index.d.ts.map +0 -1
  136. package/dist/components/dashboard/components/index.js +0 -6
  137. package/dist/components/dashboard/components/index.js.map +0 -1
  138. package/dist/components/dashboard/index.d.ts +0 -6
  139. package/dist/components/dashboard/index.d.ts.map +0 -1
  140. package/dist/components/dashboard/index.js +0 -8
  141. package/dist/components/dashboard/index.js.map +0 -1
  142. package/dist/components/dashboard/types.d.ts +0 -74
  143. package/dist/components/dashboard/types.d.ts.map +0 -1
  144. package/dist/components/dashboard/types.js +0 -8
  145. package/dist/components/dashboard/types.js.map +0 -1
  146. package/dist/components/state-view/PipelineView.d.ts +0 -14
  147. package/dist/components/state-view/PipelineView.d.ts.map +0 -1
  148. package/dist/components/state-view/PipelineView.js +0 -195
  149. package/dist/components/state-view/PipelineView.js.map +0 -1
  150. package/dist/components/state-view/index.d.ts +0 -14
  151. package/dist/components/state-view/index.d.ts.map +0 -1
  152. package/dist/components/state-view/index.js +0 -12
  153. package/dist/components/state-view/index.js.map +0 -1
  154. package/dist/components/state-view/types.d.ts +0 -188
  155. package/dist/components/state-view/types.d.ts.map +0 -1
  156. package/dist/components/state-view/types.js +0 -10
  157. package/dist/components/state-view/types.js.map +0 -1
  158. package/dist/components/state-view/useStateView.d.ts +0 -32
  159. package/dist/components/state-view/useStateView.d.ts.map +0 -1
  160. package/dist/components/state-view/useStateView.js +0 -129
  161. package/dist/components/state-view/useStateView.js.map +0 -1
  162. package/dist/contexts/GraphEditContext.d.ts +0 -20
  163. package/dist/contexts/GraphEditContext.d.ts.map +0 -1
  164. package/dist/contexts/GraphEditContext.js +0 -8
  165. package/dist/contexts/GraphEditContext.js.map +0 -1
  166. package/dist/contexts/TooltipPortalContext.d.ts +0 -8
  167. package/dist/contexts/TooltipPortalContext.d.ts.map +0 -1
  168. package/dist/contexts/TooltipPortalContext.js +0 -8
  169. package/dist/contexts/TooltipPortalContext.js.map +0 -1
  170. package/dist/edges/CustomEdge.d.ts +0 -24
  171. package/dist/edges/CustomEdge.d.ts.map +0 -1
  172. package/dist/edges/CustomEdge.js +0 -222
  173. package/dist/edges/CustomEdge.js.map +0 -1
  174. package/dist/edges/GenericEdge.d.ts +0 -18
  175. package/dist/edges/GenericEdge.d.ts.map +0 -1
  176. package/dist/edges/GenericEdge.js +0 -10
  177. package/dist/edges/GenericEdge.js.map +0 -1
  178. package/dist/graphify/kind.d.ts +0 -23
  179. package/dist/graphify/kind.d.ts.map +0 -1
  180. package/dist/graphify/kind.js +0 -77
  181. package/dist/graphify/kind.js.map +0 -1
  182. package/dist/hooks/usePathBasedEvents.d.ts +0 -42
  183. package/dist/hooks/usePathBasedEvents.d.ts.map +0 -1
  184. package/dist/hooks/usePathBasedEvents.js +0 -119
  185. package/dist/hooks/usePathBasedEvents.js.map +0 -1
  186. package/dist/hooks/useSequenceLayout.d.ts +0 -186
  187. package/dist/hooks/useSequenceLayout.d.ts.map +0 -1
  188. package/dist/hooks/useSequenceLayout.js +0 -327
  189. package/dist/hooks/useSequenceLayout.js.map +0 -1
  190. package/dist/hooks/useUndoRedo.d.ts +0 -80
  191. package/dist/hooks/useUndoRedo.d.ts.map +0 -1
  192. package/dist/hooks/useUndoRedo.js +0 -70
  193. package/dist/hooks/useUndoRedo.js.map +0 -1
  194. package/dist/nodes/CustomNode.d.ts +0 -28
  195. package/dist/nodes/CustomNode.d.ts.map +0 -1
  196. package/dist/nodes/CustomNode.js +0 -820
  197. package/dist/nodes/CustomNode.js.map +0 -1
  198. package/dist/nodes/GenericNode.d.ts +0 -20
  199. package/dist/nodes/GenericNode.d.ts.map +0 -1
  200. package/dist/nodes/GenericNode.js +0 -20
  201. package/dist/nodes/GenericNode.js.map +0 -1
  202. package/dist/nodes/otel/OtelBoundaryNode.d.ts +0 -55
  203. package/dist/nodes/otel/OtelBoundaryNode.d.ts.map +0 -1
  204. package/dist/nodes/otel/OtelBoundaryNode.js +0 -81
  205. package/dist/nodes/otel/OtelBoundaryNode.js.map +0 -1
  206. package/dist/nodes/otel/OtelEventNode.d.ts +0 -59
  207. package/dist/nodes/otel/OtelEventNode.d.ts.map +0 -1
  208. package/dist/nodes/otel/OtelEventNode.js +0 -82
  209. package/dist/nodes/otel/OtelEventNode.js.map +0 -1
  210. package/dist/nodes/otel/OtelResourceNode.d.ts +0 -53
  211. package/dist/nodes/otel/OtelResourceNode.d.ts.map +0 -1
  212. package/dist/nodes/otel/OtelResourceNode.js +0 -105
  213. package/dist/nodes/otel/OtelResourceNode.js.map +0 -1
  214. package/dist/nodes/otel/OtelScopeNode.d.ts +0 -53
  215. package/dist/nodes/otel/OtelScopeNode.d.ts.map +0 -1
  216. package/dist/nodes/otel/OtelScopeNode.js +0 -81
  217. package/dist/nodes/otel/OtelScopeNode.js.map +0 -1
  218. package/dist/nodes/otel/OtelSpanConventionNode.d.ts +0 -61
  219. package/dist/nodes/otel/OtelSpanConventionNode.d.ts.map +0 -1
  220. package/dist/nodes/otel/OtelSpanConventionNode.js +0 -131
  221. package/dist/nodes/otel/OtelSpanConventionNode.js.map +0 -1
  222. package/dist/nodes/otel/index.d.ts +0 -17
  223. package/dist/nodes/otel/index.d.ts.map +0 -1
  224. package/dist/nodes/otel/index.js +0 -13
  225. package/dist/nodes/otel/index.js.map +0 -1
  226. package/dist/nodes/otel/shared/NodeBadges.d.ts +0 -10
  227. package/dist/nodes/otel/shared/NodeBadges.d.ts.map +0 -1
  228. package/dist/nodes/otel/shared/NodeBadges.js +0 -178
  229. package/dist/nodes/otel/shared/NodeBadges.js.map +0 -1
  230. package/dist/nodes/otel/shared/NodeContent.d.ts +0 -10
  231. package/dist/nodes/otel/shared/NodeContent.d.ts.map +0 -1
  232. package/dist/nodes/otel/shared/NodeContent.js +0 -96
  233. package/dist/nodes/otel/shared/NodeContent.js.map +0 -1
  234. package/dist/nodes/otel/shared/index.d.ts +0 -8
  235. package/dist/nodes/otel/shared/index.d.ts.map +0 -1
  236. package/dist/nodes/otel/shared/index.js +0 -8
  237. package/dist/nodes/otel/shared/index.js.map +0 -1
  238. package/dist/nodes/otel/shared/types.d.ts +0 -129
  239. package/dist/nodes/otel/shared/types.d.ts.map +0 -1
  240. package/dist/nodes/otel/shared/types.js +0 -5
  241. package/dist/nodes/otel/shared/types.js.map +0 -1
  242. package/dist/nodes/otel/shared/useNodeBehavior.d.ts +0 -42
  243. package/dist/nodes/otel/shared/useNodeBehavior.d.ts.map +0 -1
  244. package/dist/nodes/otel/shared/useNodeBehavior.js +0 -61
  245. package/dist/nodes/otel/shared/useNodeBehavior.js.map +0 -1
  246. package/dist/pierre/PierreThroughlineCodeView.js.map +0 -1
  247. package/dist/subsystem/SubsystemCarousel.d.ts +0 -36
  248. package/dist/subsystem/SubsystemCarousel.d.ts.map +0 -1
  249. package/dist/subsystem/SubsystemCarousel.js +0 -163
  250. package/dist/subsystem/SubsystemCarousel.js.map +0 -1
  251. package/dist/utils/animationMapping.d.ts +0 -53
  252. package/dist/utils/animationMapping.d.ts.map +0 -1
  253. package/dist/utils/animationMapping.js +0 -126
  254. package/dist/utils/animationMapping.js.map +0 -1
  255. package/dist/utils/canvasBounds.d.ts +0 -50
  256. package/dist/utils/canvasBounds.d.ts.map +0 -1
  257. package/dist/utils/canvasBounds.js +0 -88
  258. package/dist/utils/canvasBounds.js.map +0 -1
  259. package/dist/utils/graphConverter.d.ts +0 -18
  260. package/dist/utils/graphConverter.d.ts.map +0 -1
  261. package/dist/utils/graphConverter.js +0 -114
  262. package/dist/utils/graphConverter.js.map +0 -1
  263. package/dist/utils/iconResolver.d.ts +0 -29
  264. package/dist/utils/iconResolver.d.ts.map +0 -1
  265. package/dist/utils/iconResolver.js +0 -30
  266. package/dist/utils/iconResolver.js.map +0 -1
  267. package/dist/utils/orientationUtils.d.ts +0 -19
  268. package/dist/utils/orientationUtils.d.ts.map +0 -1
  269. package/dist/utils/orientationUtils.js +0 -62
  270. package/dist/utils/orientationUtils.js.map +0 -1
@@ -1,295 +0,0 @@
1
- import React from 'react';
2
- import type { Violation, GraphEvent, ExtendedCanvas, ComponentLibrary } from '@principal-ai/subsystems-core';
3
- import { TooltipPortalContext } from '../contexts/TooltipPortalContext';
4
- export { TooltipPortalContext };
5
- /** Position change event for tracking node movements */
6
- export interface NodePositionChange {
7
- nodeId: string;
8
- position: {
9
- x: number;
10
- y: number;
11
- };
12
- }
13
- /** Dimension change event for tracking node resizing */
14
- export interface NodeDimensionChange {
15
- nodeId: string;
16
- dimensions: {
17
- width: number;
18
- height: number;
19
- };
20
- }
21
- /** Text change event for tracking inline text edits */
22
- export interface NodeTextChange {
23
- nodeId: string;
24
- text: string;
25
- }
26
- /** All pending changes that can be saved */
27
- export interface PendingChanges {
28
- /** Node position changes */
29
- positionChanges: NodePositionChange[];
30
- /** Node dimension changes (from resizing) */
31
- dimensionChanges: NodeDimensionChange[];
32
- /** Text changes for text and group nodes */
33
- textChanges: NodeTextChange[];
34
- /** Node updates (type, data changes) */
35
- nodeUpdates: Array<{
36
- nodeId: string;
37
- updates: {
38
- type?: string;
39
- data?: Record<string, unknown>;
40
- };
41
- }>;
42
- /** Deleted node IDs */
43
- deletedNodeIds: string[];
44
- /** New edges created (with optional handle info for connection points) */
45
- createdEdges: Array<{
46
- from: string;
47
- to: string;
48
- type: string;
49
- sourceHandle?: string;
50
- targetHandle?: string;
51
- }>;
52
- /** Deleted edges (with full connection info for config removal) */
53
- deletedEdges: Array<{
54
- from: string;
55
- to: string;
56
- type: string;
57
- }>;
58
- /** Whether there are any changes */
59
- hasChanges: boolean;
60
- }
61
- /** Ref handle for imperative actions */
62
- export interface GraphRendererHandle {
63
- /** Get all pending changes */
64
- getPendingChanges: () => PendingChanges;
65
- /** Reset edit state to match current props */
66
- resetEditState: () => void;
67
- /** Check if there are unsaved changes */
68
- hasUnsavedChanges: () => boolean;
69
- /** Whether there are changes that can be undone */
70
- canUndo: () => boolean;
71
- /** Whether there are changes that can be redone */
72
- canRedo: () => boolean;
73
- /** Undo the last change */
74
- undo: () => void;
75
- /** Redo the last undone change */
76
- redo: () => void;
77
- }
78
- /** Base props shared by all render modes */
79
- interface GraphRendererBaseProps {
80
- /** Optional violations to highlight */
81
- violations?: Violation[];
82
- /**
83
- * Duration of the fitView animation in milliseconds.
84
- * Set to 0 for instant positioning (no animation).
85
- * Defaults to 200.
86
- */
87
- fitViewDuration?: number;
88
- /**
89
- * Whether to show tooltips on hover for nodes and edges.
90
- * Defaults to true.
91
- */
92
- showTooltips?: boolean;
93
- /**
94
- * Optional node ID to highlight (e.g., when playing back execution events).
95
- * Highlighted nodes will have a special visual treatment.
96
- */
97
- highlightedNodeId?: string | null;
98
- /**
99
- * Optional list of active node IDs (nodes involved in current execution scenario).
100
- * Nodes NOT in this list will be dimmed (reduced opacity).
101
- * If undefined or empty, all nodes are shown at full opacity.
102
- */
103
- activeNodeIds?: string[] | null;
104
- /** Optional configuration name for identification (used with multi-config setups) */
105
- configName?: string;
106
- /** Optional class name */
107
- className?: string;
108
- /** Optional width */
109
- width?: number | string;
110
- /** Optional height */
111
- height?: number | string;
112
- /** Whether to show minimap */
113
- showMinimap?: boolean;
114
- /** Whether to show controls */
115
- showControls?: boolean;
116
- /** Whether to show background */
117
- showBackground?: boolean;
118
- /**
119
- * Background variant style.
120
- * - 'dots': Small dots pattern
121
- * - 'lines': Grid lines (default)
122
- * - 'cross': Cross pattern
123
- */
124
- backgroundVariant?: 'dots' | 'lines' | 'cross';
125
- /**
126
- * Gap between background pattern elements in pixels.
127
- * Defaults to 50 for lines/cross, 16 for dots.
128
- */
129
- backgroundGap?: number;
130
- /**
131
- * Whether to show a center indicator at the canvas origin (0,0).
132
- * Useful for visualizing where the center point is when items aren't centered.
133
- * Defaults to false.
134
- */
135
- showCenterIndicator?: boolean;
136
- /** Optional event stream for triggering animations */
137
- events?: GraphEvent[];
138
- /** Optional callback when an event is processed */
139
- onEventProcessed?: (event: GraphEvent) => void;
140
- /**
141
- * Whether edit mode is enabled.
142
- * When true, nodes can be dragged, edited, deleted, and edges can be created/deleted.
143
- * All changes are tracked internally and can be retrieved via ref.getPendingChanges()
144
- */
145
- editable?: boolean;
146
- /**
147
- * Callback when pending changes state changes.
148
- * Called with true when there are unsaved changes, false when there are none.
149
- * Use this to enable/disable save buttons in the parent component.
150
- */
151
- onPendingChangesChange?: (hasChanges: boolean) => void;
152
- /**
153
- * Callback when a node is clicked.
154
- * Receives the node ID and the click event. If provided, overrides default node selection behavior.
155
- */
156
- onNodeClick?: (nodeId: string, event: React.MouseEvent) => void;
157
- /**
158
- * When set, fits the viewport to show these specific nodes.
159
- * Useful for focusing on a subset of the graph (e.g., scenario nodes).
160
- * Pass null/undefined/empty array to use default fitView behavior.
161
- */
162
- fitViewToNodeIds?: string[] | null;
163
- /**
164
- * Padding around nodes when fitting view to specific nodes.
165
- * @default 0.2
166
- */
167
- fitViewPadding?: number;
168
- /**
169
- * Set of node IDs that should be draggable even when editable=false.
170
- * Useful for allowing specific nodes (like group containers) to be moved
171
- * while keeping other nodes locked in place.
172
- */
173
- draggableNodeIds?: Set<string>;
174
- /**
175
- * Callback fired when a node drag operation completes.
176
- * Receives the node ID and its new position.
177
- */
178
- onNodeDragStop?: (nodeId: string, position: {
179
- x: number;
180
- y: number;
181
- }) => void;
182
- /**
183
- * Callback fired when user presses Cmd+C (Mac) or Ctrl+C (Windows/Linux)
184
- * with nodes selected. Receives the array of selected node IDs.
185
- * Use this to implement custom copy behavior.
186
- */
187
- onCopy?: (selectedNodeIds: string[]) => void;
188
- /**
189
- * Container width in pixels. When provided along with containerHeight,
190
- * enables calculating the initial viewport synchronously to avoid the
191
- * "zoom in then animate out" effect on initial render.
192
- */
193
- containerWidth?: number;
194
- /**
195
- * Container height in pixels. When provided along with containerWidth,
196
- * enables calculating the initial viewport synchronously to avoid the
197
- * "zoom in then animate out" effect on initial render.
198
- */
199
- containerHeight?: number;
200
- /**
201
- * ELK layout configuration for circuit-board style edge routing.
202
- * When enabled, edges are routed with orthogonal paths that don't overlap.
203
- */
204
- elkLayout?: {
205
- /**
206
- * Whether ELK layout is enabled
207
- * @default false
208
- */
209
- enabled: boolean;
210
- /**
211
- * Edge routing style
212
- * - 'orthogonal': Circuit-board style with 90-degree angles (default)
213
- * - 'splines': Smooth curved edges
214
- * - 'polyline': Straight line segments
215
- */
216
- routingStyle?: 'orthogonal' | 'splines' | 'polyline';
217
- /**
218
- * Minimum spacing between parallel edges in pixels
219
- * @default 15
220
- */
221
- edgeSpacing?: number;
222
- /**
223
- * Spacing between edges and nodes in pixels
224
- * @default 20
225
- */
226
- edgeNodeSpacing?: number;
227
- };
228
- /**
229
- * Scenario-derived edges with sequence information.
230
- * When provided, edges matching these transitions will show sequence numbers.
231
- * Use with deriveEdgesFromSequence() from @principal-ai/core to generate these.
232
- */
233
- scenarioEdges?: Array<{
234
- fromSpan: string;
235
- toSpan: string;
236
- sequenceNumber: number;
237
- }>;
238
- /**
239
- * Whether to show sequence labels on edges when scenarioEdges is provided.
240
- * @default true
241
- */
242
- showSequenceLabels?: boolean;
243
- }
244
- /** GraphRenderer props - canvas format only */
245
- export interface GraphRendererProps extends GraphRendererBaseProps {
246
- /** Extended Canvas document */
247
- canvas: ExtendedCanvas;
248
- /**
249
- * Optional component library containing reusable node and edge type definitions.
250
- * Types from the library are merged with canvas-level types, with canvas types taking precedence.
251
- * This allows sharing type definitions across multiple canvas files via a library.yaml file.
252
- */
253
- library?: ComponentLibrary;
254
- /**
255
- * Optional spans canvas containing span convention definitions.
256
- * Span colors from this canvas are used as fill colors for event nodes.
257
- * When provided with workflowSpanPattern, events will be colored based on their span.
258
- */
259
- spansCanvas?: ExtendedCanvas;
260
- /**
261
- * Optional scopes canvas containing scope definitions with colors.
262
- * Required for scope-based node coloring.
263
- * Replaces library.scopes (which is now deprecated).
264
- */
265
- scopesCanvas?: ExtendedCanvas;
266
- /**
267
- * Optional span pattern for the current workflow context.
268
- * When provided, event nodes will use the span color from spansCanvas as their fill.
269
- * This should match a spanPattern from a workflow.json file.
270
- */
271
- workflowSpanPattern?: string;
272
- }
273
- /**
274
- * Core graph visualization component using xyflow.
275
- *
276
- * Accepts an ExtendedCanvas document for rendering.
277
- *
278
- * When `editable` is true, the component manages its own edit state internally.
279
- * Use the ref to get pending changes when the user wants to save:
280
- *
281
- * ```tsx
282
- * <GraphRenderer canvas={myCanvas} />
283
- *
284
- * // With edit mode
285
- * const graphRef = useRef<GraphRendererHandle>(null);
286
- * <GraphRenderer
287
- * ref={graphRef}
288
- * canvas={myCanvas}
289
- * editable={isEditMode}
290
- * onPendingChangesChange={setHasUnsavedChanges}
291
- * />
292
- * ```
293
- */
294
- export declare const GraphRenderer: React.ForwardRefExoticComponent<GraphRendererProps & React.RefAttributes<GraphRendererHandle>>;
295
- //# sourceMappingURL=GraphRenderer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GraphRenderer.d.ts","sourceRoot":"","sources":["../../src/components/GraphRenderer.tsx"],"names":[],"mappings":"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"}