ngx-workflow 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -4
- package/fesm2022/ngx-workflow.mjs +725 -264
- package/fesm2022/ngx-workflow.mjs.map +1 -1
- package/package.json +1 -1
- package/types/ngx-workflow.d.ts +51 -14
- package/types/ngx-workflow.d.ts.map +1 -1
package/README.md
CHANGED
|
@@ -18,12 +18,16 @@ A powerful, highly customizable Angular library for building interactive node-ba
|
|
|
18
18
|
- **History**: Robust Undo/Redo history stack with Ctrl+Z/Ctrl+Shift+Z
|
|
19
19
|
- **Theming**: Explicit `colorMode` and CSS variables for easy styling with dark mode support
|
|
20
20
|
- **Smart Alignment**: Visual alignment guides and drag snapping
|
|
21
|
+
- **True Recursive Sub-flows**: Create nested graph structures with relative positioning and drag-Nest support
|
|
22
|
+
- **Performance Virtualization**: Optimizes rendering for large graphs by culling off-screen nodes
|
|
21
23
|
|
|
22
24
|
### Advanced Features
|
|
23
25
|
- **Snap-to-Grid**: Configurable grid snapping for precise node placement
|
|
24
26
|
- **Space Panning**: Professional canvas panning with Space + Drag
|
|
25
27
|
- **Export Controls**: Built-in UI for PNG, SVG, and clipboard export
|
|
26
28
|
- **Clipboard Operations**: Full copy/paste/cut support with Ctrl+C/V/X and localStorage persistence
|
|
29
|
+
- **Smart Routing**: Use `type: 'smart'` for edges that automatically route around nodes (obstacle avoidance)
|
|
30
|
+
- **Interactive Labels**: Clickable edge labels with pointer events and hover states
|
|
27
31
|
- **Connection Validation**: Prevent invalid connections with custom validators
|
|
28
32
|
- **Collision Detection**: Optional collision prevention to stop nodes from overlapping
|
|
29
33
|
- **Edge Reconnection**: Drag edge endpoints to reconnect them
|
|
@@ -36,7 +40,7 @@ A powerful, highly customizable Angular library for building interactive node-ba
|
|
|
36
40
|
|
|
37
41
|
### Built-in UI Components
|
|
38
42
|
- **Search Bar**: Press `Ctrl+F` to search nodes by label/id.
|
|
39
|
-
- **Properties Panel**: Sidebar for editing node properties (auto-shows on selection).
|
|
43
|
+
- **Properties Panel**: Sidebar for editing node and edge properties (auto-shows on selection/double-click).
|
|
40
44
|
- **Context Menu**: Right-click canvas/nodes/edges for actions.
|
|
41
45
|
- **Layout Alignment**: Auto-align selected nodes (if `showLayoutControls` is true).
|
|
42
46
|
- **Minimap**: Navigable overview of complex flows.
|
|
@@ -242,11 +246,14 @@ interface Edge {
|
|
|
242
246
|
sourceHandle?: string; // ID of source handle (optional)
|
|
243
247
|
targetHandle?: string; // ID of target handle (optional)
|
|
244
248
|
label?: string; // Label text displayed on the edge
|
|
245
|
-
type?: 'bezier' | 'straight' | 'step'; // Path type
|
|
246
|
-
animated?: boolean; // Show animation
|
|
249
|
+
type?: 'bezier' | 'straight' | 'step' | 'smoothstep' | 'smart' | 'dashed'; // Path type
|
|
250
|
+
animated?: boolean; // Show animation?
|
|
251
|
+
animationType?: 'flow' | 'dot' | 'both'; // Type of animation
|
|
252
|
+
animationDuration?: string; // CSS duration (e.g., '2s')
|
|
253
|
+
animationStyle?: object; // Style for animation element (e.g., { fill: 'red' })
|
|
247
254
|
markerStart?: string; // Start marker ID (e.g., 'arrow', 'dot')
|
|
248
255
|
markerEnd?: string; // End marker ID
|
|
249
|
-
style?: object; // SVG styles (stroke, stroke-width, etc.)
|
|
256
|
+
style?: object; // SVG styles (stroke, stroke-width, strokeDasharray, etc.)
|
|
250
257
|
}
|
|
251
258
|
```
|
|
252
259
|
|