@principal-ai/subsystems-react 0.21.0 → 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 (201) hide show
  1. package/package.json +1 -1
  2. package/dist/components/ConfigurationSelector.d.ts +0 -35
  3. package/dist/components/ConfigurationSelector.d.ts.map +0 -1
  4. package/dist/components/ConfigurationSelector.js +0 -63
  5. package/dist/components/ConfigurationSelector.js.map +0 -1
  6. package/dist/components/GraphRenderer.d.ts +0 -295
  7. package/dist/components/GraphRenderer.d.ts.map +0 -1
  8. package/dist/components/GraphRenderer.js +0 -2008
  9. package/dist/components/GraphRenderer.js.map +0 -1
  10. package/dist/components/MultiCanvasRenderer.d.ts +0 -75
  11. package/dist/components/MultiCanvasRenderer.d.ts.map +0 -1
  12. package/dist/components/MultiCanvasRenderer.js +0 -203
  13. package/dist/components/MultiCanvasRenderer.js.map +0 -1
  14. package/dist/components/NodeTooltip.d.ts +0 -24
  15. package/dist/components/NodeTooltip.d.ts.map +0 -1
  16. package/dist/components/NodeTooltip.js +0 -160
  17. package/dist/components/NodeTooltip.js.map +0 -1
  18. package/dist/components/SelectionSidebar.d.ts +0 -18
  19. package/dist/components/SelectionSidebar.d.ts.map +0 -1
  20. package/dist/components/SelectionSidebar.js +0 -190
  21. package/dist/components/SelectionSidebar.js.map +0 -1
  22. package/dist/components/SequenceDiagramRenderer.d.ts +0 -77
  23. package/dist/components/SequenceDiagramRenderer.d.ts.map +0 -1
  24. package/dist/components/SequenceDiagramRenderer.js +0 -604
  25. package/dist/components/SequenceDiagramRenderer.js.map +0 -1
  26. package/dist/components/WorkflowSequenceDiagram.d.ts +0 -63
  27. package/dist/components/WorkflowSequenceDiagram.d.ts.map +0 -1
  28. package/dist/components/WorkflowSequenceDiagram.js +0 -147
  29. package/dist/components/WorkflowSequenceDiagram.js.map +0 -1
  30. package/dist/components/dashboard/DashboardRenderer.d.ts +0 -10
  31. package/dist/components/dashboard/DashboardRenderer.d.ts.map +0 -1
  32. package/dist/components/dashboard/DashboardRenderer.js +0 -179
  33. package/dist/components/dashboard/DashboardRenderer.js.map +0 -1
  34. package/dist/components/dashboard/MetricPanel.d.ts +0 -10
  35. package/dist/components/dashboard/MetricPanel.d.ts.map +0 -1
  36. package/dist/components/dashboard/MetricPanel.js +0 -103
  37. package/dist/components/dashboard/MetricPanel.js.map +0 -1
  38. package/dist/components/dashboard/MockDataProvider.d.ts +0 -30
  39. package/dist/components/dashboard/MockDataProvider.d.ts.map +0 -1
  40. package/dist/components/dashboard/MockDataProvider.js +0 -270
  41. package/dist/components/dashboard/MockDataProvider.js.map +0 -1
  42. package/dist/components/dashboard/components/BarChart.d.ts +0 -10
  43. package/dist/components/dashboard/components/BarChart.d.ts.map +0 -1
  44. package/dist/components/dashboard/components/BarChart.js +0 -167
  45. package/dist/components/dashboard/components/BarChart.js.map +0 -1
  46. package/dist/components/dashboard/components/LineChart.d.ts +0 -10
  47. package/dist/components/dashboard/components/LineChart.d.ts.map +0 -1
  48. package/dist/components/dashboard/components/LineChart.js +0 -141
  49. package/dist/components/dashboard/components/LineChart.js.map +0 -1
  50. package/dist/components/dashboard/components/MetricCard.d.ts +0 -9
  51. package/dist/components/dashboard/components/MetricCard.d.ts.map +0 -1
  52. package/dist/components/dashboard/components/MetricCard.js +0 -163
  53. package/dist/components/dashboard/components/MetricCard.js.map +0 -1
  54. package/dist/components/dashboard/components/SourceLink.d.ts +0 -9
  55. package/dist/components/dashboard/components/SourceLink.d.ts.map +0 -1
  56. package/dist/components/dashboard/components/SourceLink.js +0 -39
  57. package/dist/components/dashboard/components/SourceLink.js.map +0 -1
  58. package/dist/components/dashboard/components/TimeRangeSelector.d.ts +0 -9
  59. package/dist/components/dashboard/components/TimeRangeSelector.d.ts.map +0 -1
  60. package/dist/components/dashboard/components/TimeRangeSelector.js +0 -167
  61. package/dist/components/dashboard/components/TimeRangeSelector.js.map +0 -1
  62. package/dist/components/dashboard/components/index.d.ts +0 -6
  63. package/dist/components/dashboard/components/index.d.ts.map +0 -1
  64. package/dist/components/dashboard/components/index.js +0 -6
  65. package/dist/components/dashboard/components/index.js.map +0 -1
  66. package/dist/components/dashboard/index.d.ts +0 -6
  67. package/dist/components/dashboard/index.d.ts.map +0 -1
  68. package/dist/components/dashboard/index.js +0 -8
  69. package/dist/components/dashboard/index.js.map +0 -1
  70. package/dist/components/dashboard/types.d.ts +0 -74
  71. package/dist/components/dashboard/types.d.ts.map +0 -1
  72. package/dist/components/dashboard/types.js +0 -8
  73. package/dist/components/dashboard/types.js.map +0 -1
  74. package/dist/components/state-view/PipelineView.d.ts +0 -14
  75. package/dist/components/state-view/PipelineView.d.ts.map +0 -1
  76. package/dist/components/state-view/PipelineView.js +0 -195
  77. package/dist/components/state-view/PipelineView.js.map +0 -1
  78. package/dist/components/state-view/index.d.ts +0 -14
  79. package/dist/components/state-view/index.d.ts.map +0 -1
  80. package/dist/components/state-view/index.js +0 -12
  81. package/dist/components/state-view/index.js.map +0 -1
  82. package/dist/components/state-view/types.d.ts +0 -188
  83. package/dist/components/state-view/types.d.ts.map +0 -1
  84. package/dist/components/state-view/types.js +0 -10
  85. package/dist/components/state-view/types.js.map +0 -1
  86. package/dist/components/state-view/useStateView.d.ts +0 -32
  87. package/dist/components/state-view/useStateView.d.ts.map +0 -1
  88. package/dist/components/state-view/useStateView.js +0 -129
  89. package/dist/components/state-view/useStateView.js.map +0 -1
  90. package/dist/contexts/GraphEditContext.d.ts +0 -20
  91. package/dist/contexts/GraphEditContext.d.ts.map +0 -1
  92. package/dist/contexts/GraphEditContext.js +0 -8
  93. package/dist/contexts/GraphEditContext.js.map +0 -1
  94. package/dist/contexts/TooltipPortalContext.d.ts +0 -8
  95. package/dist/contexts/TooltipPortalContext.d.ts.map +0 -1
  96. package/dist/contexts/TooltipPortalContext.js +0 -8
  97. package/dist/contexts/TooltipPortalContext.js.map +0 -1
  98. package/dist/edges/CustomEdge.d.ts +0 -24
  99. package/dist/edges/CustomEdge.d.ts.map +0 -1
  100. package/dist/edges/CustomEdge.js +0 -222
  101. package/dist/edges/CustomEdge.js.map +0 -1
  102. package/dist/edges/GenericEdge.d.ts +0 -18
  103. package/dist/edges/GenericEdge.d.ts.map +0 -1
  104. package/dist/edges/GenericEdge.js +0 -10
  105. package/dist/edges/GenericEdge.js.map +0 -1
  106. package/dist/graphify/kind.d.ts +0 -23
  107. package/dist/graphify/kind.d.ts.map +0 -1
  108. package/dist/graphify/kind.js +0 -77
  109. package/dist/graphify/kind.js.map +0 -1
  110. package/dist/hooks/usePathBasedEvents.d.ts +0 -42
  111. package/dist/hooks/usePathBasedEvents.d.ts.map +0 -1
  112. package/dist/hooks/usePathBasedEvents.js +0 -119
  113. package/dist/hooks/usePathBasedEvents.js.map +0 -1
  114. package/dist/hooks/useSequenceLayout.d.ts +0 -186
  115. package/dist/hooks/useSequenceLayout.d.ts.map +0 -1
  116. package/dist/hooks/useSequenceLayout.js +0 -327
  117. package/dist/hooks/useSequenceLayout.js.map +0 -1
  118. package/dist/hooks/useUndoRedo.d.ts +0 -80
  119. package/dist/hooks/useUndoRedo.d.ts.map +0 -1
  120. package/dist/hooks/useUndoRedo.js +0 -70
  121. package/dist/hooks/useUndoRedo.js.map +0 -1
  122. package/dist/nodes/CustomNode.d.ts +0 -28
  123. package/dist/nodes/CustomNode.d.ts.map +0 -1
  124. package/dist/nodes/CustomNode.js +0 -820
  125. package/dist/nodes/CustomNode.js.map +0 -1
  126. package/dist/nodes/GenericNode.d.ts +0 -20
  127. package/dist/nodes/GenericNode.d.ts.map +0 -1
  128. package/dist/nodes/GenericNode.js +0 -20
  129. package/dist/nodes/GenericNode.js.map +0 -1
  130. package/dist/nodes/otel/OtelBoundaryNode.d.ts +0 -55
  131. package/dist/nodes/otel/OtelBoundaryNode.d.ts.map +0 -1
  132. package/dist/nodes/otel/OtelBoundaryNode.js +0 -81
  133. package/dist/nodes/otel/OtelBoundaryNode.js.map +0 -1
  134. package/dist/nodes/otel/OtelEventNode.d.ts +0 -59
  135. package/dist/nodes/otel/OtelEventNode.d.ts.map +0 -1
  136. package/dist/nodes/otel/OtelEventNode.js +0 -82
  137. package/dist/nodes/otel/OtelEventNode.js.map +0 -1
  138. package/dist/nodes/otel/OtelResourceNode.d.ts +0 -53
  139. package/dist/nodes/otel/OtelResourceNode.d.ts.map +0 -1
  140. package/dist/nodes/otel/OtelResourceNode.js +0 -105
  141. package/dist/nodes/otel/OtelResourceNode.js.map +0 -1
  142. package/dist/nodes/otel/OtelScopeNode.d.ts +0 -53
  143. package/dist/nodes/otel/OtelScopeNode.d.ts.map +0 -1
  144. package/dist/nodes/otel/OtelScopeNode.js +0 -81
  145. package/dist/nodes/otel/OtelScopeNode.js.map +0 -1
  146. package/dist/nodes/otel/OtelSpanConventionNode.d.ts +0 -61
  147. package/dist/nodes/otel/OtelSpanConventionNode.d.ts.map +0 -1
  148. package/dist/nodes/otel/OtelSpanConventionNode.js +0 -131
  149. package/dist/nodes/otel/OtelSpanConventionNode.js.map +0 -1
  150. package/dist/nodes/otel/index.d.ts +0 -17
  151. package/dist/nodes/otel/index.d.ts.map +0 -1
  152. package/dist/nodes/otel/index.js +0 -13
  153. package/dist/nodes/otel/index.js.map +0 -1
  154. package/dist/nodes/otel/shared/NodeBadges.d.ts +0 -10
  155. package/dist/nodes/otel/shared/NodeBadges.d.ts.map +0 -1
  156. package/dist/nodes/otel/shared/NodeBadges.js +0 -178
  157. package/dist/nodes/otel/shared/NodeBadges.js.map +0 -1
  158. package/dist/nodes/otel/shared/NodeContent.d.ts +0 -10
  159. package/dist/nodes/otel/shared/NodeContent.d.ts.map +0 -1
  160. package/dist/nodes/otel/shared/NodeContent.js +0 -96
  161. package/dist/nodes/otel/shared/NodeContent.js.map +0 -1
  162. package/dist/nodes/otel/shared/index.d.ts +0 -8
  163. package/dist/nodes/otel/shared/index.d.ts.map +0 -1
  164. package/dist/nodes/otel/shared/index.js +0 -8
  165. package/dist/nodes/otel/shared/index.js.map +0 -1
  166. package/dist/nodes/otel/shared/types.d.ts +0 -129
  167. package/dist/nodes/otel/shared/types.d.ts.map +0 -1
  168. package/dist/nodes/otel/shared/types.js +0 -5
  169. package/dist/nodes/otel/shared/types.js.map +0 -1
  170. package/dist/nodes/otel/shared/useNodeBehavior.d.ts +0 -42
  171. package/dist/nodes/otel/shared/useNodeBehavior.d.ts.map +0 -1
  172. package/dist/nodes/otel/shared/useNodeBehavior.js +0 -61
  173. package/dist/nodes/otel/shared/useNodeBehavior.js.map +0 -1
  174. package/dist/pierre/PierreThroughlineCodeView.d.ts +0 -22
  175. package/dist/pierre/PierreThroughlineCodeView.d.ts.map +0 -1
  176. package/dist/pierre/PierreThroughlineCodeView.js +0 -206
  177. package/dist/pierre/PierreThroughlineCodeView.js.map +0 -1
  178. package/dist/subsystem/SubsystemCarousel.d.ts +0 -36
  179. package/dist/subsystem/SubsystemCarousel.d.ts.map +0 -1
  180. package/dist/subsystem/SubsystemCarousel.js +0 -163
  181. package/dist/subsystem/SubsystemCarousel.js.map +0 -1
  182. package/dist/utils/animationMapping.d.ts +0 -53
  183. package/dist/utils/animationMapping.d.ts.map +0 -1
  184. package/dist/utils/animationMapping.js +0 -126
  185. package/dist/utils/animationMapping.js.map +0 -1
  186. package/dist/utils/canvasBounds.d.ts +0 -50
  187. package/dist/utils/canvasBounds.d.ts.map +0 -1
  188. package/dist/utils/canvasBounds.js +0 -88
  189. package/dist/utils/canvasBounds.js.map +0 -1
  190. package/dist/utils/graphConverter.d.ts +0 -18
  191. package/dist/utils/graphConverter.d.ts.map +0 -1
  192. package/dist/utils/graphConverter.js +0 -114
  193. package/dist/utils/graphConverter.js.map +0 -1
  194. package/dist/utils/iconResolver.d.ts +0 -29
  195. package/dist/utils/iconResolver.d.ts.map +0 -1
  196. package/dist/utils/iconResolver.js +0 -30
  197. package/dist/utils/iconResolver.js.map +0 -1
  198. package/dist/utils/orientationUtils.d.ts +0 -19
  199. package/dist/utils/orientationUtils.d.ts.map +0 -1
  200. package/dist/utils/orientationUtils.js +0 -62
  201. package/dist/utils/orientationUtils.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@principal-ai/subsystems-react",
3
- "version": "0.21.0",
3
+ "version": "0.21.1",
4
4
  "description": "React UI for Subsystem Models — graph, Pierre code views, and session-event feeds",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,35 +0,0 @@
1
- import React from 'react';
2
- import type { ConfigurationFile } from '@principal-ai/subsystems-core';
3
- export interface ConfigurationSelectorProps {
4
- /** Available configurations */
5
- configurations: ConfigurationFile[];
6
- /** Currently selected configuration name */
7
- selectedConfig: string;
8
- /** Callback when configuration changes */
9
- onConfigChange: (configName: string) => void;
10
- /** Optional custom className */
11
- className?: string;
12
- /** Optional custom styles */
13
- style?: React.CSSProperties;
14
- /** Whether to show description */
15
- showDescription?: boolean;
16
- /** Label text for the selector */
17
- label?: string;
18
- }
19
- /**
20
- * Configuration selector component for switching between multiple graph configurations
21
- *
22
- * @example
23
- * ```tsx
24
- * const [selectedConfig, setSelectedConfig] = useState('simple-service');
25
- *
26
- * <ConfigurationSelector
27
- * configurations={loadedConfigs}
28
- * selectedConfig={selectedConfig}
29
- * onConfigChange={setSelectedConfig}
30
- * showDescription
31
- * />
32
- * ```
33
- */
34
- export declare const ConfigurationSelector: React.FC<ConfigurationSelectorProps>;
35
- //# sourceMappingURL=ConfigurationSelector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ConfigurationSelector.d.ts","sourceRoot":"","sources":["../../src/components/ConfigurationSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,MAAM,WAAW,0BAA0B;IACzC,+BAA+B;IAC/B,cAAc,EAAE,iBAAiB,EAAE,CAAC;IAEpC,4CAA4C;IAC5C,cAAc,EAAE,MAAM,CAAC;IAEvB,0CAA0C;IAC1C,cAAc,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7C,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,6BAA6B;IAC7B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAE5B,kCAAkC;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CA2FtE,CAAC"}
@@ -1,63 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * Configuration selector component for switching between multiple graph configurations
4
- *
5
- * @example
6
- * ```tsx
7
- * const [selectedConfig, setSelectedConfig] = useState('simple-service');
8
- *
9
- * <ConfigurationSelector
10
- * configurations={loadedConfigs}
11
- * selectedConfig={selectedConfig}
12
- * onConfigChange={setSelectedConfig}
13
- * showDescription
14
- * />
15
- * ```
16
- */
17
- export const ConfigurationSelector = ({ configurations, selectedConfig, onConfigChange, className, style, showDescription = false, label = 'Graph Configuration', }) => {
18
- const handleChange = (event) => {
19
- onConfigChange(event.target.value);
20
- };
21
- const selectedConfigData = configurations.find((c) => c.name === selectedConfig);
22
- const defaultStyle = {
23
- backgroundColor: 'white',
24
- padding: '12px 16px',
25
- borderRadius: '8px',
26
- boxShadow: '0 2px 8px rgba(0,0,0,0.1)',
27
- fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
28
- ...style,
29
- };
30
- const labelStyle = {
31
- display: 'block',
32
- fontSize: '14px',
33
- fontWeight: 600,
34
- marginBottom: '8px',
35
- color: '#333',
36
- };
37
- const selectStyle = {
38
- width: '100%',
39
- padding: '8px 12px',
40
- fontSize: '14px',
41
- border: '1px solid #ddd',
42
- borderRadius: '4px',
43
- backgroundColor: 'white',
44
- cursor: 'pointer',
45
- outline: 'none',
46
- transition: 'border-color 0.2s',
47
- };
48
- const infoStyle = {
49
- marginTop: '8px',
50
- fontSize: '12px',
51
- color: '#666',
52
- lineHeight: '1.5',
53
- };
54
- if (configurations.length === 0) {
55
- return (_jsx("div", { className: className, style: defaultStyle, children: _jsx("div", { style: { ...labelStyle, color: '#999' }, children: "No configurations available" }) }));
56
- }
57
- return (_jsxs("div", { className: className, style: defaultStyle, children: [_jsx("label", { style: labelStyle, htmlFor: "config-selector", children: label }), _jsx("select", { id: "config-selector", value: selectedConfig, onChange: handleChange, style: selectStyle, onMouseEnter: (e) => {
58
- e.currentTarget.style.borderColor = '#4A90E2';
59
- }, onMouseLeave: (e) => {
60
- e.currentTarget.style.borderColor = '#ddd';
61
- }, children: configurations.map((config) => (_jsx("option", { value: config.name, children: config.config.metadata.name }, config.name))) }), selectedConfigData && showDescription && selectedConfigData.config.metadata.description && (_jsx("div", { style: infoStyle, children: _jsx("div", { children: selectedConfigData.config.metadata.description }) }))] }));
62
- };
63
- //# sourceMappingURL=ConfigurationSelector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ConfigurationSelector.js","sourceRoot":"","sources":["../../src/components/ConfigurationSelector.tsx"],"names":[],"mappings":";AA0BA;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAyC,CAAC,EAC1E,cAAc,EACd,cAAc,EACd,cAAc,EACd,SAAS,EACT,KAAK,EACL,eAAe,GAAG,KAAK,EACvB,KAAK,GAAG,qBAAqB,GAC9B,EAAE,EAAE;IACH,MAAM,YAAY,GAAG,CAAC,KAA2C,EAAE,EAAE;QACnE,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;IAEjF,MAAM,YAAY,GAAwB;QACxC,eAAe,EAAE,OAAO;QACxB,OAAO,EAAE,WAAW;QACpB,YAAY,EAAE,KAAK;QACnB,SAAS,EAAE,2BAA2B;QACtC,UAAU,EAAE,mEAAmE;QAC/E,GAAG,KAAK;KACT,CAAC;IAEF,MAAM,UAAU,GAAwB;QACtC,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,MAAM;QAChB,UAAU,EAAE,GAAG;QACf,YAAY,EAAE,KAAK;QACnB,KAAK,EAAE,MAAM;KACd,CAAC;IAEF,MAAM,WAAW,GAAwB;QACvC,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,UAAU;QACnB,QAAQ,EAAE,MAAM;QAChB,MAAM,EAAE,gBAAgB;QACxB,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,OAAO;QACxB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,mBAAmB;KAChC,CAAC;IAEF,MAAM,SAAS,GAAwB;QACrC,SAAS,EAAE,KAAK;QAChB,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,MAAM;QACb,UAAU,EAAE,KAAK;KAClB,CAAC;IAEF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;QAC/B,OAAO,CACL,cAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,YAC5C,cAAK,KAAK,EAAE,EAAE,GAAG,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,4CAAmC,GAC3E,CACP,CAAC;KACH;IAED,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,aAC5C,gBAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAC,iBAAiB,YAChD,KAAK,GACA,EAER,iBACE,EAAE,EAAC,iBAAiB,EACpB,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,WAAW,EAClB,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;oBAClB,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC;gBAChD,CAAC,EACD,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;oBAClB,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;gBAC7C,CAAC,YAEA,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAC9B,iBAA0B,KAAK,EAAE,MAAM,CAAC,IAAI,YACzC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IADjB,MAAM,CAAC,IAAI,CAEf,CACV,CAAC,GACK,EAER,kBAAkB,IAAI,eAAe,IAAI,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,IAAI,CAC1F,cAAK,KAAK,EAAE,SAAS,YACnB,wBAAM,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,GAAO,GACvD,CACP,IACG,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -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":"AAAA,OAAO,KASN,MAAM,OAAO,CAAC;AAsBf,OAAO,KAAK,EAIV,SAAS,EACT,UAAU,EAIV,cAAc,EACd,gBAAgB,EACjB,MAAM,+BAA+B,CAAC;AA2BvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAGxE,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC,wDAAwD;AACxD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACpC;AAED,wDAAwD;AACxD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/C;AAED,uDAAuD;AACvD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,4CAA4C;AAC5C,MAAM,WAAW,cAAc;IAC7B,4BAA4B;IAC5B,eAAe,EAAE,kBAAkB,EAAE,CAAC;IACtC,6CAA6C;IAC7C,gBAAgB,EAAE,mBAAmB,EAAE,CAAC;IACxC,4CAA4C;IAC5C,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,wCAAwC;IACxC,WAAW,EAAE,KAAK,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;KAC5D,CAAC,CAAC;IACH,uBAAuB;IACvB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,0EAA0E;IAC1E,YAAY,EAAE,KAAK,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;IACH,mEAAmE;IACnE,YAAY,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChE,oCAAoC;IACpC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,wCAAwC;AACxC,MAAM,WAAW,mBAAmB;IAClC,8BAA8B;IAC9B,iBAAiB,EAAE,MAAM,cAAc,CAAC;IACxC,8CAA8C;IAC9C,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,yCAAyC;IACzC,iBAAiB,EAAE,MAAM,OAAO,CAAC;IACjC,mDAAmD;IACnD,OAAO,EAAE,MAAM,OAAO,CAAC;IACvB,mDAAmD;IACnD,OAAO,EAAE,MAAM,OAAO,CAAC;IACvB,2BAA2B;IAC3B,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,kCAAkC;IAClC,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,4CAA4C;AAC5C,UAAU,sBAAsB;IAC9B,uCAAuC;IACvC,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IAEzB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAElC;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEhC,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,0BAA0B;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAExB,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzB,8BAA8B;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,+BAA+B;IAC/B,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,iCAAiC;IACjC,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IAE/C;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B,sDAAsD;IACtD,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;IAEtB,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAE/C;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAEvD;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAEhE;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEnC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAE/B;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAE9E;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAE7C;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,SAAS,CAAC,EAAE;QACV;;;WAGG;QACH,OAAO,EAAE,OAAO,CAAC;QACjB;;;;;WAKG;QACH,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,GAAG,UAAU,CAAC;QACrD;;;WAGG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB;;;WAGG;QACH,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IAEF;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;IAEH;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAE9B;AAED,+CAA+C;AAC/C,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IAChE,+BAA+B;IAC/B,MAAM,EAAE,cAAc,CAAC;IAEvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAE3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC;IAE7B;;;;OAIG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC;IAE9B;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAm/ED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,aAAa,gGAmQxB,CAAC"}