@memberjunction/ng-task-graph-editor 6.1.0-edge.1 → 6.1.0-edge.3

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 (59) hide show
  1. package/LICENSE +180 -4
  2. package/README.md +197 -0
  3. package/dist/lib/debug-variables.d.ts +27 -0
  4. package/dist/lib/debug-variables.d.ts.map +1 -0
  5. package/dist/lib/debug-variables.js +96 -0
  6. package/dist/lib/debug-variables.js.map +1 -0
  7. package/dist/lib/pane-split.d.ts +11 -0
  8. package/dist/lib/pane-split.d.ts.map +1 -0
  9. package/dist/lib/pane-split.js +36 -0
  10. package/dist/lib/pane-split.js.map +1 -0
  11. package/dist/lib/task-graph-canvas-adapter.d.ts +142 -7
  12. package/dist/lib/task-graph-canvas-adapter.d.ts.map +1 -1
  13. package/dist/lib/task-graph-canvas-adapter.js +319 -44
  14. package/dist/lib/task-graph-canvas-adapter.js.map +1 -1
  15. package/dist/lib/task-graph-debug-toolbar.component.d.ts +27 -0
  16. package/dist/lib/task-graph-debug-toolbar.component.d.ts.map +1 -0
  17. package/dist/lib/task-graph-debug-toolbar.component.js +153 -0
  18. package/dist/lib/task-graph-debug-toolbar.component.js.map +1 -0
  19. package/dist/lib/task-graph-debugger.component.d.ts +96 -0
  20. package/dist/lib/task-graph-debugger.component.d.ts.map +1 -0
  21. package/dist/lib/task-graph-debugger.component.js +371 -0
  22. package/dist/lib/task-graph-debugger.component.js.map +1 -0
  23. package/dist/lib/task-graph-editor.component.d.ts +144 -5
  24. package/dist/lib/task-graph-editor.component.d.ts.map +1 -1
  25. package/dist/lib/task-graph-editor.component.js +321 -26
  26. package/dist/lib/task-graph-editor.component.js.map +1 -1
  27. package/dist/lib/task-graph-editor.module.d.ts +10 -5
  28. package/dist/lib/task-graph-editor.module.d.ts.map +1 -1
  29. package/dist/lib/task-graph-editor.module.js +53 -5
  30. package/dist/lib/task-graph-editor.module.js.map +1 -1
  31. package/dist/lib/task-graph-properties-panel.component.d.ts +34 -8
  32. package/dist/lib/task-graph-properties-panel.component.d.ts.map +1 -1
  33. package/dist/lib/task-graph-properties-panel.component.js +164 -45
  34. package/dist/lib/task-graph-properties-panel.component.js.map +1 -1
  35. package/dist/lib/task-graph-run-prefs.d.ts +34 -0
  36. package/dist/lib/task-graph-run-prefs.d.ts.map +1 -0
  37. package/dist/lib/task-graph-run-prefs.js +67 -0
  38. package/dist/lib/task-graph-run-prefs.js.map +1 -0
  39. package/dist/lib/task-graph-run-view.component.d.ts +290 -0
  40. package/dist/lib/task-graph-run-view.component.d.ts.map +1 -0
  41. package/dist/lib/task-graph-run-view.component.js +826 -0
  42. package/dist/lib/task-graph-run-view.component.js.map +1 -0
  43. package/dist/lib/task-graph-runtime-source.d.ts +7 -1
  44. package/dist/lib/task-graph-runtime-source.d.ts.map +1 -1
  45. package/dist/lib/task-graph-runtime-source.js +14 -2
  46. package/dist/lib/task-graph-runtime-source.js.map +1 -1
  47. package/dist/lib/task-graph-variables.component.d.ts +23 -0
  48. package/dist/lib/task-graph-variables.component.d.ts.map +1 -0
  49. package/dist/lib/task-graph-variables.component.js +192 -0
  50. package/dist/lib/task-graph-variables.component.js.map +1 -0
  51. package/dist/lib/workflow-debug-host.d.ts +23 -0
  52. package/dist/lib/workflow-debug-host.d.ts.map +1 -0
  53. package/dist/lib/workflow-debug-host.js +101 -0
  54. package/dist/lib/workflow-debug-host.js.map +1 -0
  55. package/dist/public-api.d.ts +8 -0
  56. package/dist/public-api.d.ts.map +1 -1
  57. package/dist/public-api.js +8 -0
  58. package/dist/public-api.js.map +1 -1
  59. package/package.json +11 -9
@@ -24,14 +24,16 @@
24
24
  *
25
25
  * @module @memberjunction/ng-task-graph-editor
26
26
  */
27
- import { EventEmitter } from '@angular/core';
27
+ import { EventEmitter, OnDestroy } from '@angular/core';
28
28
  import { BaseAngularComponent } from '@memberjunction/ng-base-types';
29
29
  import { type TaskGraphSpec, type TaskGraphSpecNode, type TaskGraphValidationError } from '@memberjunction/ai-core-plus';
30
- import type { FlowConnection, FlowConnectionCreatedEvent, FlowLayoutDirection, FlowNode, FlowNodeTypeConfig } from '@memberjunction/ng-flow-editor';
31
- import { type TaskGraphRuntimeStatus } from './task-graph-canvas-adapter';
30
+ import { FlowEditorComponent } from '@memberjunction/ng-flow-editor';
31
+ import type { FlowAfterContextMenuActionEventArgs, FlowBeforeContextMenuEventArgs, FlowConnection, FlowConnectionCreatedEvent, FlowLayoutDirection, FlowNode, FlowNodeAddedEvent, FlowNodeMovedEvent, FlowNodeTypeConfig, FlowPosition, FlowToolbarAlign, FlowToolbarVisibility } from '@memberjunction/ng-flow-editor';
32
+ import { type TaskGraphDebugOverlay, type TaskGraphRuntimeStatus } from './task-graph-canvas-adapter';
33
+ import type { DependencyConditionChangeRequestedEventArgs, TaskPropertyChangeRequestedEventArgs } from './task-graph-properties-panel.component';
32
34
  import { AfterDependencyAddedEventArgs, AfterDependencyRemovedEventArgs, AfterTaskAddedEventArgs, AfterTaskRemovedEventArgs, AfterTaskUpdatedEventArgs, AgentOpenRequestedEventArgs, BeforeDependencyAddedEventArgs, BeforeDependencyRemovedEventArgs, BeforeTaskAddedEventArgs, BeforeTaskRemovedEventArgs, BeforeTaskUpdatedEventArgs, RecordOpenRequestedEventArgs, TaskGraphSelectionChangedEventArgs, TaskGraphSpecChangedEventArgs, TaskGraphValidationChangedEventArgs } from './task-graph-editor-events';
33
35
  import * as i0 from "@angular/core";
34
- export declare class TaskGraphEditorComponent extends BaseAngularComponent {
36
+ export declare class TaskGraphEditorComponent extends BaseAngularComponent implements OnDestroy {
35
37
  /**
36
38
  * The graph to show. Setter-based rather than `ngOnChanges` (repo convention): the reaction is
37
39
  * explicit, runs only when this property changes, and costs nothing on other change-detection
@@ -46,15 +48,65 @@ export declare class TaskGraphEditorComponent extends BaseAngularComponent {
46
48
  */
47
49
  set RuntimeStatus(value: TaskGraphRuntimeStatus | null);
48
50
  get RuntimeStatus(): TaskGraphRuntimeStatus | null;
51
+ /**
52
+ * Geometry for the nodes, keyed by `tempId`. Supplying it places the graph instead of laying it
53
+ * out.
54
+ *
55
+ * **Why a host must be able to supply this.** The spec has no layout field, so without it every
56
+ * node projects to the origin — all of them, stacked in one place — and the canvas is left to
57
+ * rescue the situation with a deferred Dagre pass. That pass is fine in the editor, where the
58
+ * author is present and can rearrange. It was not fine in the RUN views, which held the real
59
+ * geometry (a workflow's authored positions, or a computed layout) and had no way to hand it
60
+ * over: every run rendered its steps piled on the origin, and the zoom-to-fit that followed
61
+ * fitted a bounding box one node wide and blew the viewport up past 250%.
62
+ *
63
+ * Applied as the starting geometry only. Once the canvas reports positions of its own — a drag,
64
+ * an arrange — those win, because the person moving a node is the authority on where it goes.
65
+ */
66
+ set NodePositions(value: ReadonlyMap<string, FlowPosition> | null);
49
67
  /** Read-only mode. The same component is the viewer — there is no second, weaker renderer. */
50
68
  ReadOnly: boolean;
51
69
  ShowToolbar: boolean;
70
+ /** Full bar / chip / recover tab. Run views default this to minimized. */
71
+ ToolbarVisibility: FlowToolbarVisibility;
72
+ ToolbarAlign: FlowToolbarAlign;
52
73
  ShowPalette: boolean;
53
74
  ShowMinimap: boolean;
75
+ /**
76
+ * Whether the legend rides on the canvas.
77
+ *
78
+ * On for authoring, off for a run — and the difference is what the legend is FOR. It explains the
79
+ * authoring vocabulary (what a conditional edge means, what a duplicate default looks like),
80
+ * which is what someone drawing a graph needs. A run view is answering a different question —
81
+ * what happened — and the legend answers none of it while occluding a third of the canvas.
82
+ */
83
+ ShowLegend: boolean;
54
84
  ShowStatusBar: boolean;
55
85
  AutoLayoutDirection: FlowLayoutDirection;
86
+ /**
87
+ * Whether the properties panel rides alongside the canvas.
88
+ *
89
+ * On by default, because without it a step added from the palette can never be named or
90
+ * assigned — the canvas draws structure, the panel supplies content, and one without the other
91
+ * is a graph the author can build but not finish. Hosts embedding the read-only viewer in a chat
92
+ * card turn it off.
93
+ */
94
+ ShowProperties: boolean;
95
+ /**
96
+ * Agent names offered when assigning a step. Supplied by the host, which owns data access —
97
+ * this is a widgets-layer component and does not query.
98
+ */
99
+ AvailableAgentNames: readonly string[];
100
+ /** Action names offered when assigning a step. Same ownership rule as `AvailableAgentNames`. */
101
+ AvailableActionNames: readonly string[];
56
102
  /** Shown when there is nothing to draw yet. */
57
103
  EmptyStateMessage: string;
104
+ /**
105
+ * Debug overlay for a run. Empty by default so an embed (agent-run timeline, test harness)
106
+ * never grows breakpoint badges or override styling it did not ask for.
107
+ */
108
+ set DebugOverlay(value: TaskGraphDebugOverlay | null);
109
+ get DebugOverlay(): TaskGraphDebugOverlay | null;
58
110
  BeforeTaskAdded: EventEmitter<BeforeTaskAddedEventArgs>;
59
111
  AfterTaskAdded: EventEmitter<AfterTaskAddedEventArgs>;
60
112
  BeforeTaskRemoved: EventEmitter<BeforeTaskRemovedEventArgs>;
@@ -66,20 +118,35 @@ export declare class TaskGraphEditorComponent extends BaseAngularComponent {
66
118
  BeforeDependencyRemoved: EventEmitter<BeforeDependencyRemovedEventArgs>;
67
119
  AfterDependencyRemoved: EventEmitter<AfterDependencyRemovedEventArgs>;
68
120
  /** Informational — no `Before` pair, because these report what already happened. */
121
+ /**
122
+ * The legend was shown or hidden from the canvas toolbar.
123
+ *
124
+ * Forwarded so a host can PERSIST the choice. Without it the toolbar's toggle mutates the
125
+ * canvas's own flag and nothing else, so the preference dies with the view — and a host that
126
+ * wanted it remembered would have to add a second control beside the one that already exists,
127
+ * which is how a surface ends up with two buttons doing the same thing and disagreeing.
128
+ */
129
+ LegendToggled: EventEmitter<boolean>;
69
130
  SpecChanged: EventEmitter<TaskGraphSpecChangedEventArgs>;
70
131
  SelectionChanged: EventEmitter<TaskGraphSelectionChangedEventArgs>;
71
132
  ValidationChanged: EventEmitter<TaskGraphValidationChangedEventArgs>;
72
133
  /** Intent-only — the host navigates; this widget has no Router and must not acquire one. */
73
134
  AgentOpenRequested: EventEmitter<AgentOpenRequestedEventArgs>;
74
135
  RecordOpenRequested: EventEmitter<RecordOpenRequestedEventArgs>;
136
+ /** A connection was clicked. Payload is the canvas connection, or null when cleared. */
137
+ ConnectionSelected: EventEmitter<FlowConnection | null>;
138
+ BeforeContextMenu: EventEmitter<FlowBeforeContextMenuEventArgs>;
139
+ AfterContextMenuAction: EventEmitter<FlowAfterContextMenuActionEventArgs>;
75
140
  Nodes: FlowNode[];
76
141
  Connections: FlowConnection[];
77
142
  NodeTypes: FlowNodeTypeConfig[];
78
143
  SelectedTask: TaskGraphSpecNode | null;
79
144
  ValidationErrors: readonly TaskGraphValidationError[];
80
145
  IsValid: boolean;
146
+ protected canvas: FlowEditorComponent | undefined;
81
147
  private currentSpec;
82
148
  private currentRuntime;
149
+ private debugOverlay;
83
150
  get IsEmpty(): boolean;
84
151
  /** Re-runs validation and emits the result. Idempotent. */
85
152
  Validate(): TaskGraphValidationChangedEventArgs;
@@ -113,6 +180,25 @@ export declare class TaskGraphEditorComponent extends BaseAngularComponent {
113
180
  /** Asks the host to open a record the graph references. */
114
181
  RequestRecordOpen(entityName: string, recordID: string): void;
115
182
  OnNodeSelected(node: FlowNode | null): void;
183
+ /**
184
+ * A palette entry was clicked or dragged onto the canvas.
185
+ *
186
+ * **This binding is the bug.** The canvas has always emitted `NodeAdded` for a palette drop, and
187
+ * this component simply never listened — so the node the canvas announced was thrown away, the
188
+ * spec never gained a task, and the author was told "a task graph must contain at least one
189
+ * task" no matter how many times they tried to add one. The canvas does not mutate its own
190
+ * `Nodes` on purpose (the host owns the model); an unheard event is therefore a silent no-op
191
+ * rather than a visible failure, which is why it survived.
192
+ *
193
+ * The new step is selected immediately: it lands unnamed and, for an agent or action step with
194
+ * nothing available to default to, unassigned — so the properties panel is where the author has
195
+ * to go next, and putting them there beats making them find it.
196
+ */
197
+ OnNodeAdded(event: FlowNodeAddedEvent): void;
198
+ /** Applies a properties-panel edit through the same vetoable path a canvas edit takes. */
199
+ OnTaskPropertyChangeRequested(args: TaskPropertyChangeRequestedEventArgs): void;
200
+ /** Applies a properties-panel edge-condition edit. */
201
+ OnDependencyConditionChangeRequested(args: DependencyConditionChangeRequestedEventArgs): void;
116
202
  OnConnectionCreated(event: FlowConnectionCreatedEvent): void;
117
203
  OnConnectionRemoved(connection: FlowConnection): void;
118
204
  OnNodeRemoved(node: FlowNode): void;
@@ -122,7 +208,60 @@ export declare class TaskGraphEditorComponent extends BaseAngularComponent {
122
208
  private commit;
123
209
  /** Re-derives the canvas from the spec. Validation rides along so the two never disagree. */
124
210
  private project;
211
+ /**
212
+ * Lays the graph out ONCE — when it arrives with no geometry of its own.
213
+ *
214
+ * A `TaskGraphSpec` carries no positions, so a spec opened for the first time projects with
215
+ * every node at the origin and needs Dagre to make it readable. After that the author's layout
216
+ * is the layout: `knownPositions` carries it across re-projections, and re-arranging again would
217
+ * throw away the arrangement they just made.
218
+ *
219
+ * It must also not run on every edit, because `AutoArrange` ends in `ZoomToFit` — so arranging
220
+ * per change meant the viewport snapped to fit after every added step and every drawn
221
+ * connection, which on a one-node graph zooms to maximum. That is the behaviour being fixed
222
+ * here; the rule mirrors the Flow Agent editor's (`flow-agent-editor.component.ts`), which has
223
+ * always arranged only when every node sits at the origin.
224
+ */
225
+ private arrangeIfNeverLaidOut;
226
+ /**
227
+ * Fits the viewport to the graph, once the canvas has drawn it.
228
+ *
229
+ * Deferred for the same reason the layout pass is: `fitToScreen` measures the rendered nodes, so
230
+ * calling it in the same turn as the projection fits whatever was on screen a moment ago. With
231
+ * every node still at the origin that bounding box is a single node wide, and "fit" means zoom
232
+ * to ~265% — the symptom that made a four-step workflow look like one enormous box.
233
+ */
234
+ private zoomToFitSoon;
235
+ /**
236
+ * The canvas is the authority on geometry, so remember what it reports.
237
+ *
238
+ * Without this the spec — which has no geometry field — is the only survivor of a re-projection,
239
+ * and every edit silently moved every node back to the origin. That is what forced a re-arrange
240
+ * (and therefore a re-zoom) on each change.
241
+ */
242
+ OnNodesChanged(nodes: FlowNode[]): void;
243
+ /** The canvas toolbar showed or hid the legend; tell whoever is remembering that choice. */
244
+ OnLegendToggled(show: boolean): void;
245
+ OnConnectionSelected(connection: FlowConnection | null): void;
246
+ /** A single node was dragged. Same authority, narrower event. */
247
+ OnNodeMoved(event: FlowNodeMovedEvent): void;
248
+ ngOnDestroy(): void;
249
+ /** The topology the current layout was computed for; '' when nothing has been laid out. */
250
+ /**
251
+ * Node geometry, which the spec cannot hold.
252
+ *
253
+ * `TaskGraphSpec` is an execution contract with no layout field, so a re-projection would
254
+ * otherwise return every node to the origin. Keyed by `tempId`; written from the canvas
255
+ * (`NodesChanged` / `NodeMoved`) and from the drop position of a newly added node, and read back
256
+ * by `SpecToNodes` on every projection.
257
+ */
258
+ private readonly knownPositions;
259
+ /** Whether the one-time Dagre pass has run (or been made unnecessary by a hand-placed node). */
260
+ private hasLaidOut;
261
+ /** Task-id set we last fitted. Same ids + a new Map must not re-fit. */
262
+ private fittedGeometryKey;
263
+ private pendingLayout;
125
264
  static ɵfac: i0.ɵɵFactoryDeclaration<TaskGraphEditorComponent, never>;
126
- static ɵcmp: i0.ɵɵComponentDeclaration<TaskGraphEditorComponent, "mj-task-graph-editor", never, { "Spec": { "alias": "Spec"; "required": false; }; "RuntimeStatus": { "alias": "RuntimeStatus"; "required": false; }; "ReadOnly": { "alias": "ReadOnly"; "required": false; }; "ShowToolbar": { "alias": "ShowToolbar"; "required": false; }; "ShowPalette": { "alias": "ShowPalette"; "required": false; }; "ShowMinimap": { "alias": "ShowMinimap"; "required": false; }; "ShowStatusBar": { "alias": "ShowStatusBar"; "required": false; }; "AutoLayoutDirection": { "alias": "AutoLayoutDirection"; "required": false; }; "EmptyStateMessage": { "alias": "EmptyStateMessage"; "required": false; }; }, { "BeforeTaskAdded": "BeforeTaskAdded"; "AfterTaskAdded": "AfterTaskAdded"; "BeforeTaskRemoved": "BeforeTaskRemoved"; "AfterTaskRemoved": "AfterTaskRemoved"; "BeforeTaskUpdated": "BeforeTaskUpdated"; "AfterTaskUpdated": "AfterTaskUpdated"; "BeforeDependencyAdded": "BeforeDependencyAdded"; "AfterDependencyAdded": "AfterDependencyAdded"; "BeforeDependencyRemoved": "BeforeDependencyRemoved"; "AfterDependencyRemoved": "AfterDependencyRemoved"; "SpecChanged": "SpecChanged"; "SelectionChanged": "SelectionChanged"; "ValidationChanged": "ValidationChanged"; "AgentOpenRequested": "AgentOpenRequested"; "RecordOpenRequested": "RecordOpenRequested"; }, never, never, false, never>;
265
+ static ɵcmp: i0.ɵɵComponentDeclaration<TaskGraphEditorComponent, "mj-task-graph-editor", never, { "Spec": { "alias": "Spec"; "required": false; }; "RuntimeStatus": { "alias": "RuntimeStatus"; "required": false; }; "NodePositions": { "alias": "NodePositions"; "required": false; }; "ReadOnly": { "alias": "ReadOnly"; "required": false; }; "ShowToolbar": { "alias": "ShowToolbar"; "required": false; }; "ToolbarVisibility": { "alias": "ToolbarVisibility"; "required": false; }; "ToolbarAlign": { "alias": "ToolbarAlign"; "required": false; }; "ShowPalette": { "alias": "ShowPalette"; "required": false; }; "ShowMinimap": { "alias": "ShowMinimap"; "required": false; }; "ShowLegend": { "alias": "ShowLegend"; "required": false; }; "ShowStatusBar": { "alias": "ShowStatusBar"; "required": false; }; "AutoLayoutDirection": { "alias": "AutoLayoutDirection"; "required": false; }; "ShowProperties": { "alias": "ShowProperties"; "required": false; }; "AvailableAgentNames": { "alias": "AvailableAgentNames"; "required": false; }; "AvailableActionNames": { "alias": "AvailableActionNames"; "required": false; }; "EmptyStateMessage": { "alias": "EmptyStateMessage"; "required": false; }; "DebugOverlay": { "alias": "DebugOverlay"; "required": false; }; }, { "BeforeTaskAdded": "BeforeTaskAdded"; "AfterTaskAdded": "AfterTaskAdded"; "BeforeTaskRemoved": "BeforeTaskRemoved"; "AfterTaskRemoved": "AfterTaskRemoved"; "BeforeTaskUpdated": "BeforeTaskUpdated"; "AfterTaskUpdated": "AfterTaskUpdated"; "BeforeDependencyAdded": "BeforeDependencyAdded"; "AfterDependencyAdded": "AfterDependencyAdded"; "BeforeDependencyRemoved": "BeforeDependencyRemoved"; "AfterDependencyRemoved": "AfterDependencyRemoved"; "LegendToggled": "LegendToggled"; "SpecChanged": "SpecChanged"; "SelectionChanged": "SelectionChanged"; "ValidationChanged": "ValidationChanged"; "AgentOpenRequested": "AgentOpenRequested"; "RecordOpenRequested": "RecordOpenRequested"; "ConnectionSelected": "ConnectionSelected"; "BeforeContextMenu": "BeforeContextMenu"; "AfterContextMenuAction": "AfterContextMenuAction"; }, never, never, false, never>;
127
266
  }
128
267
  //# sourceMappingURL=task-graph-editor.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"task-graph-editor.component.d.ts","sourceRoot":"","sources":["../../src/lib/task-graph-editor.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-graph-editor.component.d.ts","sourceRoot":"","sources":["../../src/lib/task-graph-editor.component.ts"],"names":[],"mappings":"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"}