@angflow/angular 0.0.12 → 0.0.14
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 +14 -4
- package/dist/base.css +417 -411
- package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.d.ts +4 -0
- package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.d.ts.map +1 -1
- package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.js +24 -20
- package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.js.map +1 -1
- package/dist/esm/lib/components/attribution/attribution.component.d.ts +4 -0
- package/dist/esm/lib/components/attribution/attribution.component.d.ts.map +1 -1
- package/dist/esm/lib/components/attribution/attribution.component.js +22 -18
- package/dist/esm/lib/components/attribution/attribution.component.js.map +1 -1
- package/dist/esm/lib/components/background/background.component.d.ts +20 -0
- package/dist/esm/lib/components/background/background.component.d.ts.map +1 -1
- package/dist/esm/lib/components/background/background.component.js +159 -140
- package/dist/esm/lib/components/background/background.component.js.map +1 -1
- package/dist/esm/lib/components/connection-line/connection-line.component.d.ts +7 -0
- package/dist/esm/lib/components/connection-line/connection-line.component.d.ts.map +1 -1
- package/dist/esm/lib/components/connection-line/connection-line.component.js +7 -0
- package/dist/esm/lib/components/connection-line/connection-line.component.js.map +1 -1
- package/dist/esm/lib/components/controls/controls.component.d.ts +21 -0
- package/dist/esm/lib/components/controls/controls.component.d.ts.map +1 -1
- package/dist/esm/lib/components/controls/controls.component.js +21 -1
- package/dist/esm/lib/components/controls/controls.component.js.map +1 -1
- package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.d.ts +4 -0
- package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.d.ts.map +1 -1
- package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.js +4 -0
- package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.js.map +1 -1
- package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts +12 -0
- package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts.map +1 -1
- package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.js +12 -0
- package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.js.map +1 -1
- package/dist/esm/lib/components/edges/base-edge.component.d.ts +23 -0
- package/dist/esm/lib/components/edges/base-edge.component.d.ts.map +1 -1
- package/dist/esm/lib/components/edges/base-edge.component.js +63 -40
- package/dist/esm/lib/components/edges/base-edge.component.js.map +1 -1
- package/dist/esm/lib/components/edges/bezier-edge.component.d.ts +4 -0
- package/dist/esm/lib/components/edges/bezier-edge.component.d.ts.map +1 -1
- package/dist/esm/lib/components/edges/bezier-edge.component.js +4 -0
- package/dist/esm/lib/components/edges/bezier-edge.component.js.map +1 -1
- package/dist/esm/lib/components/edges/edge-text.component.d.ts +4 -0
- package/dist/esm/lib/components/edges/edge-text.component.d.ts.map +1 -1
- package/dist/esm/lib/components/edges/edge-text.component.js +30 -26
- package/dist/esm/lib/components/edges/edge-text.component.js.map +1 -1
- package/dist/esm/lib/components/edges/simple-bezier-edge.component.d.ts +4 -0
- package/dist/esm/lib/components/edges/simple-bezier-edge.component.d.ts.map +1 -1
- package/dist/esm/lib/components/edges/simple-bezier-edge.component.js +4 -0
- package/dist/esm/lib/components/edges/simple-bezier-edge.component.js.map +1 -1
- package/dist/esm/lib/components/edges/smooth-step-edge.component.d.ts +1 -0
- package/dist/esm/lib/components/edges/smooth-step-edge.component.d.ts.map +1 -1
- package/dist/esm/lib/components/edges/smooth-step-edge.component.js +1 -0
- package/dist/esm/lib/components/edges/smooth-step-edge.component.js.map +1 -1
- package/dist/esm/lib/components/edges/step-edge.component.d.ts +1 -0
- package/dist/esm/lib/components/edges/step-edge.component.d.ts.map +1 -1
- package/dist/esm/lib/components/edges/step-edge.component.js +1 -0
- package/dist/esm/lib/components/edges/step-edge.component.js.map +1 -1
- package/dist/esm/lib/components/edges/straight-edge.component.d.ts +1 -0
- package/dist/esm/lib/components/edges/straight-edge.component.d.ts.map +1 -1
- package/dist/esm/lib/components/edges/straight-edge.component.js +1 -0
- package/dist/esm/lib/components/edges/straight-edge.component.js.map +1 -1
- package/dist/esm/lib/components/handle/handle.component.d.ts +20 -1
- package/dist/esm/lib/components/handle/handle.component.d.ts.map +1 -1
- package/dist/esm/lib/components/handle/handle.component.js +25 -2
- package/dist/esm/lib/components/handle/handle.component.js.map +1 -1
- package/dist/esm/lib/components/minimap/minimap.component.d.ts +34 -0
- package/dist/esm/lib/components/minimap/minimap.component.d.ts.map +1 -1
- package/dist/esm/lib/components/minimap/minimap.component.js +30 -4
- package/dist/esm/lib/components/minimap/minimap.component.js.map +1 -1
- package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.d.ts +14 -0
- package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.d.ts.map +1 -1
- package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.js +14 -0
- package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.js.map +1 -1
- package/dist/esm/lib/components/node-resizer/node-resizer.component.d.ts +29 -0
- package/dist/esm/lib/components/node-resizer/node-resizer.component.d.ts.map +1 -1
- package/dist/esm/lib/components/node-resizer/node-resizer.component.js +153 -124
- package/dist/esm/lib/components/node-resizer/node-resizer.component.js.map +1 -1
- package/dist/esm/lib/components/node-toolbar/node-toolbar.component.d.ts +21 -1
- package/dist/esm/lib/components/node-toolbar/node-toolbar.component.d.ts.map +1 -1
- package/dist/esm/lib/components/node-toolbar/node-toolbar.component.js +21 -1
- package/dist/esm/lib/components/node-toolbar/node-toolbar.component.js.map +1 -1
- package/dist/esm/lib/components/nodes/default-node.component.d.ts +4 -0
- package/dist/esm/lib/components/nodes/default-node.component.d.ts.map +1 -1
- package/dist/esm/lib/components/nodes/default-node.component.js +13 -9
- package/dist/esm/lib/components/nodes/default-node.component.js.map +1 -1
- package/dist/esm/lib/components/nodes/group-node.component.d.ts +5 -0
- package/dist/esm/lib/components/nodes/group-node.component.d.ts.map +1 -1
- package/dist/esm/lib/components/nodes/group-node.component.js +5 -0
- package/dist/esm/lib/components/nodes/group-node.component.js.map +1 -1
- package/dist/esm/lib/components/nodes/input-node.component.d.ts +4 -0
- package/dist/esm/lib/components/nodes/input-node.component.d.ts.map +1 -1
- package/dist/esm/lib/components/nodes/input-node.component.js +11 -7
- package/dist/esm/lib/components/nodes/input-node.component.js.map +1 -1
- package/dist/esm/lib/components/nodes/output-node.component.d.ts +4 -0
- package/dist/esm/lib/components/nodes/output-node.component.d.ts.map +1 -1
- package/dist/esm/lib/components/nodes/output-node.component.js +11 -7
- package/dist/esm/lib/components/nodes/output-node.component.js.map +1 -1
- package/dist/esm/lib/components/panel/panel.component.d.ts +12 -0
- package/dist/esm/lib/components/panel/panel.component.d.ts.map +1 -1
- package/dist/esm/lib/components/panel/panel.component.js +12 -0
- package/dist/esm/lib/components/panel/panel.component.js.map +1 -1
- package/dist/esm/lib/components/viewport-portal/viewport-portal.component.d.ts +5 -0
- package/dist/esm/lib/components/viewport-portal/viewport-portal.component.d.ts.map +1 -1
- package/dist/esm/lib/components/viewport-portal/viewport-portal.component.js +5 -0
- package/dist/esm/lib/components/viewport-portal/viewport-portal.component.js.map +1 -1
- package/dist/esm/lib/container/edge-renderer/edge-renderer.component.d.ts.map +1 -1
- package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js +35 -3
- package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js.map +1 -1
- package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts +154 -1
- package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts.map +1 -1
- package/dist/esm/lib/container/ng-flow/ng-flow.component.js +162 -23
- package/dist/esm/lib/container/ng-flow/ng-flow.component.js.map +1 -1
- package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts +3 -1
- package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts.map +1 -1
- package/dist/esm/lib/container/node-renderer/node-renderer.component.js +50 -8
- package/dist/esm/lib/container/node-renderer/node-renderer.component.js.map +1 -1
- package/dist/esm/lib/container/pane/pane.component.d.ts +0 -1
- package/dist/esm/lib/container/pane/pane.component.d.ts.map +1 -1
- package/dist/esm/lib/container/pane/pane.component.js +18 -25
- package/dist/esm/lib/container/pane/pane.component.js.map +1 -1
- package/dist/esm/lib/container/viewport/viewport.component.d.ts +4 -0
- package/dist/esm/lib/container/viewport/viewport.component.d.ts.map +1 -1
- package/dist/esm/lib/container/viewport/viewport.component.js +4 -0
- package/dist/esm/lib/container/viewport/viewport.component.js.map +1 -1
- package/dist/esm/lib/directives/drag.directive.d.ts +17 -0
- package/dist/esm/lib/directives/drag.directive.d.ts.map +1 -1
- package/dist/esm/lib/directives/drag.directive.js +17 -0
- package/dist/esm/lib/directives/drag.directive.js.map +1 -1
- package/dist/esm/lib/directives/key-handler.directive.d.ts +13 -0
- package/dist/esm/lib/directives/key-handler.directive.d.ts.map +1 -1
- package/dist/esm/lib/directives/key-handler.directive.js +13 -0
- package/dist/esm/lib/directives/key-handler.directive.js.map +1 -1
- package/dist/esm/lib/public-api.d.ts +1 -0
- package/dist/esm/lib/public-api.d.ts.map +1 -1
- package/dist/esm/lib/public-api.js +2 -0
- package/dist/esm/lib/public-api.js.map +1 -1
- package/dist/esm/lib/services/flow-store.service.d.ts +3 -0
- package/dist/esm/lib/services/flow-store.service.d.ts.map +1 -1
- package/dist/esm/lib/services/flow-store.service.js +3 -0
- package/dist/esm/lib/services/flow-store.service.js.map +1 -1
- package/dist/esm/lib/services/ng-flow.service.d.ts +82 -0
- package/dist/esm/lib/services/ng-flow.service.d.ts.map +1 -1
- package/dist/esm/lib/services/ng-flow.service.js +82 -0
- package/dist/esm/lib/services/ng-flow.service.js.map +1 -1
- package/dist/esm/lib/services/tokens.d.ts +23 -0
- package/dist/esm/lib/services/tokens.d.ts.map +1 -1
- package/dist/esm/lib/services/tokens.js +22 -0
- package/dist/esm/lib/services/tokens.js.map +1 -1
- package/dist/esm/lib/types/nodes.d.ts +36 -2
- package/dist/esm/lib/types/nodes.d.ts.map +1 -1
- package/dist/esm/lib/utils/changes.d.ts +20 -0
- package/dist/esm/lib/utils/changes.d.ts.map +1 -1
- package/dist/esm/lib/utils/changes.js +20 -0
- package/dist/esm/lib/utils/changes.js.map +1 -1
- package/dist/esm/lib/utils/index.d.ts +1 -0
- package/dist/esm/lib/utils/index.d.ts.map +1 -1
- package/dist/esm/lib/utils/index.js +1 -0
- package/dist/esm/lib/utils/index.js.map +1 -1
- package/dist/esm/lib/utils/inject-ng-flow-node.d.ts +20 -0
- package/dist/esm/lib/utils/inject-ng-flow-node.d.ts.map +1 -0
- package/dist/esm/lib/utils/inject-ng-flow-node.js +28 -0
- package/dist/esm/lib/utils/inject-ng-flow-node.js.map +1 -0
- package/dist/style.css +417 -411
- package/package.json +6 -6
|
@@ -1,14 +1,30 @@
|
|
|
1
1
|
import { AfterViewInit, OnDestroy } from '@angular/core';
|
|
2
2
|
import { type OnResizeStart, type OnResize, type OnResizeEnd, type ShouldResize, type XYResizerChange, type XYResizerChildChange, type ResizeDragEvent, type ResizeParams } from '@angflow/system';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Adds draggable resize handles and edges to a node. Place inside a node
|
|
6
|
+
* template — the resizer auto-discovers the host node id — or pass `[nodeId]`
|
|
7
|
+
* explicitly to target a different node.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```html
|
|
11
|
+
* <ng-flow-node-resizer [minWidth]="80" [minHeight]="40" [keepAspectRatio]="true" />
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
4
14
|
export declare class NodeResizerComponent implements AfterViewInit, OnDestroy {
|
|
5
15
|
private store;
|
|
6
16
|
private el;
|
|
17
|
+
/** Node to resize. Defaults to the host node when placed inside a node template. Aliased as `nodeId`. */
|
|
7
18
|
readonly nodeIdInput: import("@angular/core").InputSignal<string | undefined>;
|
|
19
|
+
/** Minimum allowed width in pixels. */
|
|
8
20
|
readonly minWidth: import("@angular/core").InputSignal<number>;
|
|
21
|
+
/** Minimum allowed height in pixels. */
|
|
9
22
|
readonly minHeight: import("@angular/core").InputSignal<number>;
|
|
23
|
+
/** Maximum allowed width in pixels. */
|
|
10
24
|
readonly maxWidth: import("@angular/core").InputSignal<number>;
|
|
25
|
+
/** Maximum allowed height in pixels. */
|
|
11
26
|
readonly maxHeight: import("@angular/core").InputSignal<number>;
|
|
27
|
+
/** Constrain resize so width/height stay proportional. */
|
|
12
28
|
readonly keepAspectRatio: import("@angular/core").InputSignal<boolean>;
|
|
13
29
|
/**
|
|
14
30
|
* Controls handle visibility.
|
|
@@ -17,24 +33,37 @@ export declare class NodeResizerComponent implements AfterViewInit, OnDestroy {
|
|
|
17
33
|
* - `false`: always hidden.
|
|
18
34
|
*/
|
|
19
35
|
readonly isVisible: import("@angular/core").InputSignal<boolean | undefined>;
|
|
36
|
+
/** Fill color for corner handles and edge border color for lines. */
|
|
20
37
|
readonly color: import("@angular/core").InputSignal<string | undefined>;
|
|
38
|
+
/** Extra CSS class applied to each corner handle. */
|
|
21
39
|
readonly handleClassName: import("@angular/core").InputSignal<string>;
|
|
40
|
+
/** Inline styles applied to each corner handle. */
|
|
22
41
|
readonly handleStyle: import("@angular/core").InputSignal<Partial<CSSStyleDeclaration> | undefined>;
|
|
42
|
+
/** Extra CSS class applied to each edge line. */
|
|
23
43
|
readonly lineClassName: import("@angular/core").InputSignal<string>;
|
|
44
|
+
/** Inline styles applied to each edge line. */
|
|
24
45
|
readonly lineStyle: import("@angular/core").InputSignal<Partial<CSSStyleDeclaration> | undefined>;
|
|
46
|
+
/** Scale handle size inversely with zoom so they stay visually constant. */
|
|
25
47
|
readonly autoScale: import("@angular/core").InputSignal<boolean>;
|
|
48
|
+
/** Callback that returns `false` to veto a proposed resize step. */
|
|
26
49
|
readonly shouldResize: import("@angular/core").InputSignal<ShouldResize | undefined>;
|
|
50
|
+
/** Alternative to `(resizeStart)` — function form. Aliased as `onResizeStart`. */
|
|
27
51
|
readonly onResizeStartCb: import("@angular/core").InputSignal<OnResizeStart | undefined>;
|
|
52
|
+
/** Alternative to `(resize)` — function form. Aliased as `onResize`. */
|
|
28
53
|
readonly onResizeCb: import("@angular/core").InputSignal<OnResize | undefined>;
|
|
54
|
+
/** Alternative to `(resizeEnd)` — function form. Aliased as `onResizeEnd`. */
|
|
29
55
|
readonly onResizeEndCb: import("@angular/core").InputSignal<OnResizeEnd | undefined>;
|
|
56
|
+
/** Fires when a resize gesture starts. */
|
|
30
57
|
readonly resizeStart: import("@angular/core").OutputEmitterRef<{
|
|
31
58
|
event: ResizeDragEvent;
|
|
32
59
|
} & ResizeParams>;
|
|
60
|
+
/** Fires per frame while resizing, with the current dimension/position change. */
|
|
33
61
|
readonly resize: import("@angular/core").OutputEmitterRef<{
|
|
34
62
|
event?: ResizeDragEvent;
|
|
35
63
|
changes?: XYResizerChange;
|
|
36
64
|
childChanges?: XYResizerChildChange[];
|
|
37
65
|
} & Partial<ResizeParams>>;
|
|
66
|
+
/** Fires when the resize gesture ends, with the final dimensions. */
|
|
38
67
|
readonly resizeEnd: import("@angular/core").OutputEmitterRef<{
|
|
39
68
|
event?: ResizeDragEvent;
|
|
40
69
|
changes?: Required<XYResizerChange>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-resizer.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/node-resizer/node-resizer.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,aAAa,EACb,SAAS,EAGV,MAAM,eAAe,CAAC;AACvB,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,YAAY,EAKlB,MAAM,iBAAiB,CAAC;;AAIzB,qBAyEa,oBAAqB,YAAW,aAAa,EAAE,SAAS;IACnE,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,EAAE,CAAmC;IAE7C,QAAQ,CAAC,WAAW,0DAA6D;IACjF,QAAQ,CAAC,QAAQ,8CAAa;IAC9B,QAAQ,CAAC,SAAS,8CAAa;IAC/B,QAAQ,CAAC,QAAQ,8CAAmB;IACpC,QAAQ,CAAC,SAAS,8CAAmB;IACrC,QAAQ,CAAC,eAAe,+CAAgB;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,2DAAyC;IAC3D,QAAQ,CAAC,KAAK,0DAAmB;IACjC,QAAQ,CAAC,eAAe,8CAAqB;IAC7C,QAAQ,CAAC,WAAW,gFAAyC;IAC7D,QAAQ,CAAC,aAAa,8CAAqB;IAC3C,QAAQ,CAAC,SAAS,gFAAyC;IAC3D,QAAQ,CAAC,SAAS,+CAAe;IACjC,QAAQ,CAAC,YAAY,gEAAyB;IAC9C,QAAQ,CAAC,eAAe,iEAA2E;IACnG,QAAQ,CAAC,UAAU,4DAAiE;IACpF,QAAQ,CAAC,aAAa,+DAAuE;IAE7F,QAAQ,CAAC,WAAW;eAAmB,eAAe;sBAAqB;IAC3E,QAAQ,CAAC,MAAM;gBAAoB,eAAe;kBAAY,eAAe;uBAAiB,oBAAoB,EAAE;+BAA8B;IAClJ,QAAQ,CAAC,SAAS;gBAAoB,eAAe;kBAAY,QAAQ,CAAC,eAAe,CAAC;+BAA8B;IAExH,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,gBAAgB,CAAsC;IAE9D;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,0CASxB;gBAEsC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI9D,eAAe,IAAI,IAAI;IAiGvB,WAAW,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"node-resizer.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/node-resizer/node-resizer.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,aAAa,EACb,SAAS,EAGV,MAAM,eAAe,CAAC;AACvB,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,YAAY,EAKlB,MAAM,iBAAiB,CAAC;;AAIzB;;;;;;;;;GASG;AACH,qBAyEa,oBAAqB,YAAW,aAAa,EAAE,SAAS;IACnE,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,EAAE,CAAmC;IAE7C,yGAAyG;IACzG,QAAQ,CAAC,WAAW,0DAA6D;IACjF,uCAAuC;IACvC,QAAQ,CAAC,QAAQ,8CAAa;IAC9B,wCAAwC;IACxC,QAAQ,CAAC,SAAS,8CAAa;IAC/B,uCAAuC;IACvC,QAAQ,CAAC,QAAQ,8CAAmB;IACpC,wCAAwC;IACxC,QAAQ,CAAC,SAAS,8CAAmB;IACrC,0DAA0D;IAC1D,QAAQ,CAAC,eAAe,+CAAgB;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,2DAAyC;IAC3D,qEAAqE;IACrE,QAAQ,CAAC,KAAK,0DAAmB;IACjC,qDAAqD;IACrD,QAAQ,CAAC,eAAe,8CAAqB;IAC7C,mDAAmD;IACnD,QAAQ,CAAC,WAAW,gFAAyC;IAC7D,iDAAiD;IACjD,QAAQ,CAAC,aAAa,8CAAqB;IAC3C,+CAA+C;IAC/C,QAAQ,CAAC,SAAS,gFAAyC;IAC3D,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,+CAAe;IACjC,oEAAoE;IACpE,QAAQ,CAAC,YAAY,gEAAyB;IAC9C,kFAAkF;IAClF,QAAQ,CAAC,eAAe,iEAA2E;IACnG,wEAAwE;IACxE,QAAQ,CAAC,UAAU,4DAAiE;IACpF,8EAA8E;IAC9E,QAAQ,CAAC,aAAa,+DAAuE;IAE7F,0CAA0C;IAC1C,QAAQ,CAAC,WAAW;eAAmB,eAAe;sBAAqB;IAC3E,kFAAkF;IAClF,QAAQ,CAAC,MAAM;gBAAoB,eAAe;kBAAY,eAAe;uBAAiB,oBAAoB,EAAE;+BAA8B;IAClJ,qEAAqE;IACrE,QAAQ,CAAC,SAAS;gBAAoB,eAAe;kBAAY,QAAQ,CAAC,eAAe,CAAC;+BAA8B;IAExH,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,gBAAgB,CAAsC;IAE9D;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,0CASxB;gBAEsC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI9D,eAAe,IAAI,IAAI;IAiGvB,WAAW,IAAI,IAAI;yCA1KR,oBAAoB;2CAApB,oBAAoB;CA6KhC"}
|
|
@@ -3,15 +3,31 @@ import { XYResizer, } from '@angflow/system';
|
|
|
3
3
|
import { FlowStore } from '../../services/flow-store.service';
|
|
4
4
|
import { NODE_ID } from '../../services/tokens';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* Adds draggable resize handles and edges to a node. Place inside a node
|
|
8
|
+
* template — the resizer auto-discovers the host node id — or pass `[nodeId]`
|
|
9
|
+
* explicitly to target a different node.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```html
|
|
13
|
+
* <ng-flow-node-resizer [minWidth]="80" [minHeight]="40" [keepAspectRatio]="true" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
6
16
|
export class NodeResizerComponent {
|
|
7
17
|
constructor(nodeId) {
|
|
8
18
|
this.store = inject(FlowStore);
|
|
9
19
|
this.el = inject((ElementRef));
|
|
20
|
+
/** Node to resize. Defaults to the host node when placed inside a node template. Aliased as `nodeId`. */
|
|
10
21
|
this.nodeIdInput = input(undefined, { ...(ngDevMode ? { debugName: "nodeIdInput" } : /* istanbul ignore next */ {}), alias: 'nodeId' });
|
|
22
|
+
/** Minimum allowed width in pixels. */
|
|
11
23
|
this.minWidth = input(10, ...(ngDevMode ? [{ debugName: "minWidth" }] : /* istanbul ignore next */ []));
|
|
24
|
+
/** Minimum allowed height in pixels. */
|
|
12
25
|
this.minHeight = input(10, ...(ngDevMode ? [{ debugName: "minHeight" }] : /* istanbul ignore next */ []));
|
|
26
|
+
/** Maximum allowed width in pixels. */
|
|
13
27
|
this.maxWidth = input(Infinity, ...(ngDevMode ? [{ debugName: "maxWidth" }] : /* istanbul ignore next */ []));
|
|
28
|
+
/** Maximum allowed height in pixels. */
|
|
14
29
|
this.maxHeight = input(Infinity, ...(ngDevMode ? [{ debugName: "maxHeight" }] : /* istanbul ignore next */ []));
|
|
30
|
+
/** Constrain resize so width/height stay proportional. */
|
|
15
31
|
this.keepAspectRatio = input(false, ...(ngDevMode ? [{ debugName: "keepAspectRatio" }] : /* istanbul ignore next */ []));
|
|
16
32
|
/**
|
|
17
33
|
* Controls handle visibility.
|
|
@@ -20,18 +36,31 @@ export class NodeResizerComponent {
|
|
|
20
36
|
* - `false`: always hidden.
|
|
21
37
|
*/
|
|
22
38
|
this.isVisible = input(undefined, ...(ngDevMode ? [{ debugName: "isVisible" }] : /* istanbul ignore next */ []));
|
|
39
|
+
/** Fill color for corner handles and edge border color for lines. */
|
|
23
40
|
this.color = input(...(ngDevMode ? [undefined, { debugName: "color" }] : /* istanbul ignore next */ []));
|
|
41
|
+
/** Extra CSS class applied to each corner handle. */
|
|
24
42
|
this.handleClassName = input('', ...(ngDevMode ? [{ debugName: "handleClassName" }] : /* istanbul ignore next */ []));
|
|
43
|
+
/** Inline styles applied to each corner handle. */
|
|
25
44
|
this.handleStyle = input(...(ngDevMode ? [undefined, { debugName: "handleStyle" }] : /* istanbul ignore next */ []));
|
|
45
|
+
/** Extra CSS class applied to each edge line. */
|
|
26
46
|
this.lineClassName = input('', ...(ngDevMode ? [{ debugName: "lineClassName" }] : /* istanbul ignore next */ []));
|
|
47
|
+
/** Inline styles applied to each edge line. */
|
|
27
48
|
this.lineStyle = input(...(ngDevMode ? [undefined, { debugName: "lineStyle" }] : /* istanbul ignore next */ []));
|
|
49
|
+
/** Scale handle size inversely with zoom so they stay visually constant. */
|
|
28
50
|
this.autoScale = input(true, ...(ngDevMode ? [{ debugName: "autoScale" }] : /* istanbul ignore next */ []));
|
|
51
|
+
/** Callback that returns `false` to veto a proposed resize step. */
|
|
29
52
|
this.shouldResize = input(...(ngDevMode ? [undefined, { debugName: "shouldResize" }] : /* istanbul ignore next */ []));
|
|
53
|
+
/** Alternative to `(resizeStart)` — function form. Aliased as `onResizeStart`. */
|
|
30
54
|
this.onResizeStartCb = input(undefined, { ...(ngDevMode ? { debugName: "onResizeStartCb" } : /* istanbul ignore next */ {}), alias: 'onResizeStart' });
|
|
55
|
+
/** Alternative to `(resize)` — function form. Aliased as `onResize`. */
|
|
31
56
|
this.onResizeCb = input(undefined, { ...(ngDevMode ? { debugName: "onResizeCb" } : /* istanbul ignore next */ {}), alias: 'onResize' });
|
|
57
|
+
/** Alternative to `(resizeEnd)` — function form. Aliased as `onResizeEnd`. */
|
|
32
58
|
this.onResizeEndCb = input(undefined, { ...(ngDevMode ? { debugName: "onResizeEndCb" } : /* istanbul ignore next */ {}), alias: 'onResizeEnd' });
|
|
59
|
+
/** Fires when a resize gesture starts. */
|
|
33
60
|
this.resizeStart = output();
|
|
61
|
+
/** Fires per frame while resizing, with the current dimension/position change. */
|
|
34
62
|
this.resize = output();
|
|
63
|
+
/** Fires when the resize gesture ends, with the final dimensions. */
|
|
35
64
|
this.resizeEnd = output();
|
|
36
65
|
this.nodeId = '';
|
|
37
66
|
this.resizerInstances = [];
|
|
@@ -143,68 +172,68 @@ export class NodeResizerComponent {
|
|
|
143
172
|
this.resizerInstances.forEach((r) => r.destroy());
|
|
144
173
|
}
|
|
145
174
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NodeResizerComponent, deps: [{ token: NODE_ID, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
146
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.6", type: NodeResizerComponent, isStandalone: true, selector: "ng-flow-node-resizer", inputs: { nodeIdInput: { classPropertyName: "nodeIdInput", publicName: "nodeId", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, minHeight: { classPropertyName: "minHeight", publicName: "minHeight", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null }, maxHeight: { classPropertyName: "maxHeight", publicName: "maxHeight", isSignal: true, isRequired: false, transformFunction: null }, keepAspectRatio: { classPropertyName: "keepAspectRatio", publicName: "keepAspectRatio", isSignal: true, isRequired: false, transformFunction: null }, isVisible: { classPropertyName: "isVisible", publicName: "isVisible", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, handleClassName: { classPropertyName: "handleClassName", publicName: "handleClassName", isSignal: true, isRequired: false, transformFunction: null }, handleStyle: { classPropertyName: "handleStyle", publicName: "handleStyle", isSignal: true, isRequired: false, transformFunction: null }, lineClassName: { classPropertyName: "lineClassName", publicName: "lineClassName", isSignal: true, isRequired: false, transformFunction: null }, lineStyle: { classPropertyName: "lineStyle", publicName: "lineStyle", isSignal: true, isRequired: false, transformFunction: null }, autoScale: { classPropertyName: "autoScale", publicName: "autoScale", isSignal: true, isRequired: false, transformFunction: null }, shouldResize: { classPropertyName: "shouldResize", publicName: "shouldResize", isSignal: true, isRequired: false, transformFunction: null }, onResizeStartCb: { classPropertyName: "onResizeStartCb", publicName: "onResizeStart", isSignal: true, isRequired: false, transformFunction: null }, onResizeCb: { classPropertyName: "onResizeCb", publicName: "onResize", isSignal: true, isRequired: false, transformFunction: null }, onResizeEndCb: { classPropertyName: "onResizeEndCb", publicName: "onResizeEnd", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { resizeStart: "resizeStart", resize: "resize", resizeEnd: "resizeEnd" }, host: { properties: { "style.display": "effectivelyVisible() ? null : \"none\"" }, styleAttribute: "position: absolute; inset: 0; pointer-events: none;", classAttribute: "ng-flow__node-resizer xy-flow__resize-control" }, ngImport: i0, template: `
|
|
147
|
-
<div
|
|
148
|
-
class="xy-flow__resize-control nodrag handle handle-top-left top left"
|
|
149
|
-
[class]="handleClassName()"
|
|
150
|
-
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'"
|
|
151
|
-
[style.cursor]="'nw-resize'" [style.pointer-events]="'all'"
|
|
152
|
-
[style.width.px]="10" [style.height.px]="10"
|
|
153
|
-
[style.background-color]="color() ?? null"
|
|
154
|
-
></div>
|
|
155
|
-
<div
|
|
156
|
-
class="xy-flow__resize-control nodrag handle handle-top-right top right"
|
|
157
|
-
[class]="handleClassName()"
|
|
158
|
-
[style.position]="'absolute'" [style.top]="'0'" [style.right]="'0'"
|
|
159
|
-
[style.cursor]="'ne-resize'" [style.pointer-events]="'all'"
|
|
160
|
-
[style.width.px]="10" [style.height.px]="10"
|
|
161
|
-
[style.background-color]="color() ?? null"
|
|
162
|
-
></div>
|
|
163
|
-
<div
|
|
164
|
-
class="xy-flow__resize-control nodrag handle handle-bottom-left bottom left"
|
|
165
|
-
[class]="handleClassName()"
|
|
166
|
-
[style.position]="'absolute'" [style.bottom]="'0'" [style.left]="'0'"
|
|
167
|
-
[style.cursor]="'sw-resize'" [style.pointer-events]="'all'"
|
|
168
|
-
[style.width.px]="10" [style.height.px]="10"
|
|
169
|
-
[style.background-color]="color() ?? null"
|
|
170
|
-
></div>
|
|
171
|
-
<div
|
|
172
|
-
class="xy-flow__resize-control nodrag handle handle-bottom-right bottom right"
|
|
173
|
-
[class]="handleClassName()"
|
|
174
|
-
[style.position]="'absolute'" [style.bottom]="'0'" [style.right]="'0'"
|
|
175
|
-
[style.cursor]="'se-resize'" [style.pointer-events]="'all'"
|
|
176
|
-
[style.width.px]="10" [style.height.px]="10"
|
|
177
|
-
[style.background-color]="color() ?? null"
|
|
178
|
-
></div>
|
|
179
|
-
<!-- Resize lines -->
|
|
180
|
-
<div
|
|
181
|
-
class="xy-flow__resize-control nodrag line line-top top"
|
|
182
|
-
[class]="lineClassName()"
|
|
183
|
-
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'" [style.right]="'0'"
|
|
184
|
-
[style.height.px]="2" [style.cursor]="'n-resize'" [style.pointer-events]="'all'"
|
|
185
|
-
[style.border-color]="color() ?? null"
|
|
186
|
-
></div>
|
|
187
|
-
<div
|
|
188
|
-
class="xy-flow__resize-control nodrag line line-right right"
|
|
189
|
-
[class]="lineClassName()"
|
|
190
|
-
[style.position]="'absolute'" [style.top]="'0'" [style.right]="'0'" [style.bottom]="'0'"
|
|
191
|
-
[style.width.px]="2" [style.cursor]="'e-resize'" [style.pointer-events]="'all'"
|
|
192
|
-
[style.border-color]="color() ?? null"
|
|
193
|
-
></div>
|
|
194
|
-
<div
|
|
195
|
-
class="xy-flow__resize-control nodrag line line-bottom bottom"
|
|
196
|
-
[class]="lineClassName()"
|
|
197
|
-
[style.position]="'absolute'" [style.bottom]="'0'" [style.left]="'0'" [style.right]="'0'"
|
|
198
|
-
[style.height.px]="2" [style.cursor]="'s-resize'" [style.pointer-events]="'all'"
|
|
199
|
-
[style.border-color]="color() ?? null"
|
|
200
|
-
></div>
|
|
201
|
-
<div
|
|
202
|
-
class="xy-flow__resize-control nodrag line line-left left"
|
|
203
|
-
[class]="lineClassName()"
|
|
204
|
-
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'" [style.bottom]="'0'"
|
|
205
|
-
[style.width.px]="2" [style.cursor]="'w-resize'" [style.pointer-events]="'all'"
|
|
206
|
-
[style.border-color]="color() ?? null"
|
|
207
|
-
></div>
|
|
175
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.6", type: NodeResizerComponent, isStandalone: true, selector: "ng-flow-node-resizer", inputs: { nodeIdInput: { classPropertyName: "nodeIdInput", publicName: "nodeId", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, minHeight: { classPropertyName: "minHeight", publicName: "minHeight", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null }, maxHeight: { classPropertyName: "maxHeight", publicName: "maxHeight", isSignal: true, isRequired: false, transformFunction: null }, keepAspectRatio: { classPropertyName: "keepAspectRatio", publicName: "keepAspectRatio", isSignal: true, isRequired: false, transformFunction: null }, isVisible: { classPropertyName: "isVisible", publicName: "isVisible", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, handleClassName: { classPropertyName: "handleClassName", publicName: "handleClassName", isSignal: true, isRequired: false, transformFunction: null }, handleStyle: { classPropertyName: "handleStyle", publicName: "handleStyle", isSignal: true, isRequired: false, transformFunction: null }, lineClassName: { classPropertyName: "lineClassName", publicName: "lineClassName", isSignal: true, isRequired: false, transformFunction: null }, lineStyle: { classPropertyName: "lineStyle", publicName: "lineStyle", isSignal: true, isRequired: false, transformFunction: null }, autoScale: { classPropertyName: "autoScale", publicName: "autoScale", isSignal: true, isRequired: false, transformFunction: null }, shouldResize: { classPropertyName: "shouldResize", publicName: "shouldResize", isSignal: true, isRequired: false, transformFunction: null }, onResizeStartCb: { classPropertyName: "onResizeStartCb", publicName: "onResizeStart", isSignal: true, isRequired: false, transformFunction: null }, onResizeCb: { classPropertyName: "onResizeCb", publicName: "onResize", isSignal: true, isRequired: false, transformFunction: null }, onResizeEndCb: { classPropertyName: "onResizeEndCb", publicName: "onResizeEnd", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { resizeStart: "resizeStart", resize: "resize", resizeEnd: "resizeEnd" }, host: { properties: { "style.display": "effectivelyVisible() ? null : \"none\"" }, styleAttribute: "position: absolute; inset: 0; pointer-events: none;", classAttribute: "ng-flow__node-resizer xy-flow__resize-control" }, ngImport: i0, template: `
|
|
176
|
+
<div
|
|
177
|
+
class="xy-flow__resize-control nodrag handle handle-top-left top left"
|
|
178
|
+
[class]="handleClassName()"
|
|
179
|
+
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'"
|
|
180
|
+
[style.cursor]="'nw-resize'" [style.pointer-events]="'all'"
|
|
181
|
+
[style.width.px]="10" [style.height.px]="10"
|
|
182
|
+
[style.background-color]="color() ?? null"
|
|
183
|
+
></div>
|
|
184
|
+
<div
|
|
185
|
+
class="xy-flow__resize-control nodrag handle handle-top-right top right"
|
|
186
|
+
[class]="handleClassName()"
|
|
187
|
+
[style.position]="'absolute'" [style.top]="'0'" [style.right]="'0'"
|
|
188
|
+
[style.cursor]="'ne-resize'" [style.pointer-events]="'all'"
|
|
189
|
+
[style.width.px]="10" [style.height.px]="10"
|
|
190
|
+
[style.background-color]="color() ?? null"
|
|
191
|
+
></div>
|
|
192
|
+
<div
|
|
193
|
+
class="xy-flow__resize-control nodrag handle handle-bottom-left bottom left"
|
|
194
|
+
[class]="handleClassName()"
|
|
195
|
+
[style.position]="'absolute'" [style.bottom]="'0'" [style.left]="'0'"
|
|
196
|
+
[style.cursor]="'sw-resize'" [style.pointer-events]="'all'"
|
|
197
|
+
[style.width.px]="10" [style.height.px]="10"
|
|
198
|
+
[style.background-color]="color() ?? null"
|
|
199
|
+
></div>
|
|
200
|
+
<div
|
|
201
|
+
class="xy-flow__resize-control nodrag handle handle-bottom-right bottom right"
|
|
202
|
+
[class]="handleClassName()"
|
|
203
|
+
[style.position]="'absolute'" [style.bottom]="'0'" [style.right]="'0'"
|
|
204
|
+
[style.cursor]="'se-resize'" [style.pointer-events]="'all'"
|
|
205
|
+
[style.width.px]="10" [style.height.px]="10"
|
|
206
|
+
[style.background-color]="color() ?? null"
|
|
207
|
+
></div>
|
|
208
|
+
<!-- Resize lines -->
|
|
209
|
+
<div
|
|
210
|
+
class="xy-flow__resize-control nodrag line line-top top"
|
|
211
|
+
[class]="lineClassName()"
|
|
212
|
+
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'" [style.right]="'0'"
|
|
213
|
+
[style.height.px]="2" [style.cursor]="'n-resize'" [style.pointer-events]="'all'"
|
|
214
|
+
[style.border-color]="color() ?? null"
|
|
215
|
+
></div>
|
|
216
|
+
<div
|
|
217
|
+
class="xy-flow__resize-control nodrag line line-right right"
|
|
218
|
+
[class]="lineClassName()"
|
|
219
|
+
[style.position]="'absolute'" [style.top]="'0'" [style.right]="'0'" [style.bottom]="'0'"
|
|
220
|
+
[style.width.px]="2" [style.cursor]="'e-resize'" [style.pointer-events]="'all'"
|
|
221
|
+
[style.border-color]="color() ?? null"
|
|
222
|
+
></div>
|
|
223
|
+
<div
|
|
224
|
+
class="xy-flow__resize-control nodrag line line-bottom bottom"
|
|
225
|
+
[class]="lineClassName()"
|
|
226
|
+
[style.position]="'absolute'" [style.bottom]="'0'" [style.left]="'0'" [style.right]="'0'"
|
|
227
|
+
[style.height.px]="2" [style.cursor]="'s-resize'" [style.pointer-events]="'all'"
|
|
228
|
+
[style.border-color]="color() ?? null"
|
|
229
|
+
></div>
|
|
230
|
+
<div
|
|
231
|
+
class="xy-flow__resize-control nodrag line line-left left"
|
|
232
|
+
[class]="lineClassName()"
|
|
233
|
+
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'" [style.bottom]="'0'"
|
|
234
|
+
[style.width.px]="2" [style.cursor]="'w-resize'" [style.pointer-events]="'all'"
|
|
235
|
+
[style.border-color]="color() ?? null"
|
|
236
|
+
></div>
|
|
208
237
|
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
209
238
|
}
|
|
210
239
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NodeResizerComponent, decorators: [{
|
|
@@ -218,68 +247,68 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImpor
|
|
|
218
247
|
'style': 'position: absolute; inset: 0; pointer-events: none;',
|
|
219
248
|
'[style.display]': 'effectivelyVisible() ? null : "none"',
|
|
220
249
|
},
|
|
221
|
-
template: `
|
|
222
|
-
<div
|
|
223
|
-
class="xy-flow__resize-control nodrag handle handle-top-left top left"
|
|
224
|
-
[class]="handleClassName()"
|
|
225
|
-
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'"
|
|
226
|
-
[style.cursor]="'nw-resize'" [style.pointer-events]="'all'"
|
|
227
|
-
[style.width.px]="10" [style.height.px]="10"
|
|
228
|
-
[style.background-color]="color() ?? null"
|
|
229
|
-
></div>
|
|
230
|
-
<div
|
|
231
|
-
class="xy-flow__resize-control nodrag handle handle-top-right top right"
|
|
232
|
-
[class]="handleClassName()"
|
|
233
|
-
[style.position]="'absolute'" [style.top]="'0'" [style.right]="'0'"
|
|
234
|
-
[style.cursor]="'ne-resize'" [style.pointer-events]="'all'"
|
|
235
|
-
[style.width.px]="10" [style.height.px]="10"
|
|
236
|
-
[style.background-color]="color() ?? null"
|
|
237
|
-
></div>
|
|
238
|
-
<div
|
|
239
|
-
class="xy-flow__resize-control nodrag handle handle-bottom-left bottom left"
|
|
240
|
-
[class]="handleClassName()"
|
|
241
|
-
[style.position]="'absolute'" [style.bottom]="'0'" [style.left]="'0'"
|
|
242
|
-
[style.cursor]="'sw-resize'" [style.pointer-events]="'all'"
|
|
243
|
-
[style.width.px]="10" [style.height.px]="10"
|
|
244
|
-
[style.background-color]="color() ?? null"
|
|
245
|
-
></div>
|
|
246
|
-
<div
|
|
247
|
-
class="xy-flow__resize-control nodrag handle handle-bottom-right bottom right"
|
|
248
|
-
[class]="handleClassName()"
|
|
249
|
-
[style.position]="'absolute'" [style.bottom]="'0'" [style.right]="'0'"
|
|
250
|
-
[style.cursor]="'se-resize'" [style.pointer-events]="'all'"
|
|
251
|
-
[style.width.px]="10" [style.height.px]="10"
|
|
252
|
-
[style.background-color]="color() ?? null"
|
|
253
|
-
></div>
|
|
254
|
-
<!-- Resize lines -->
|
|
255
|
-
<div
|
|
256
|
-
class="xy-flow__resize-control nodrag line line-top top"
|
|
257
|
-
[class]="lineClassName()"
|
|
258
|
-
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'" [style.right]="'0'"
|
|
259
|
-
[style.height.px]="2" [style.cursor]="'n-resize'" [style.pointer-events]="'all'"
|
|
260
|
-
[style.border-color]="color() ?? null"
|
|
261
|
-
></div>
|
|
262
|
-
<div
|
|
263
|
-
class="xy-flow__resize-control nodrag line line-right right"
|
|
264
|
-
[class]="lineClassName()"
|
|
265
|
-
[style.position]="'absolute'" [style.top]="'0'" [style.right]="'0'" [style.bottom]="'0'"
|
|
266
|
-
[style.width.px]="2" [style.cursor]="'e-resize'" [style.pointer-events]="'all'"
|
|
267
|
-
[style.border-color]="color() ?? null"
|
|
268
|
-
></div>
|
|
269
|
-
<div
|
|
270
|
-
class="xy-flow__resize-control nodrag line line-bottom bottom"
|
|
271
|
-
[class]="lineClassName()"
|
|
272
|
-
[style.position]="'absolute'" [style.bottom]="'0'" [style.left]="'0'" [style.right]="'0'"
|
|
273
|
-
[style.height.px]="2" [style.cursor]="'s-resize'" [style.pointer-events]="'all'"
|
|
274
|
-
[style.border-color]="color() ?? null"
|
|
275
|
-
></div>
|
|
276
|
-
<div
|
|
277
|
-
class="xy-flow__resize-control nodrag line line-left left"
|
|
278
|
-
[class]="lineClassName()"
|
|
279
|
-
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'" [style.bottom]="'0'"
|
|
280
|
-
[style.width.px]="2" [style.cursor]="'w-resize'" [style.pointer-events]="'all'"
|
|
281
|
-
[style.border-color]="color() ?? null"
|
|
282
|
-
></div>
|
|
250
|
+
template: `
|
|
251
|
+
<div
|
|
252
|
+
class="xy-flow__resize-control nodrag handle handle-top-left top left"
|
|
253
|
+
[class]="handleClassName()"
|
|
254
|
+
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'"
|
|
255
|
+
[style.cursor]="'nw-resize'" [style.pointer-events]="'all'"
|
|
256
|
+
[style.width.px]="10" [style.height.px]="10"
|
|
257
|
+
[style.background-color]="color() ?? null"
|
|
258
|
+
></div>
|
|
259
|
+
<div
|
|
260
|
+
class="xy-flow__resize-control nodrag handle handle-top-right top right"
|
|
261
|
+
[class]="handleClassName()"
|
|
262
|
+
[style.position]="'absolute'" [style.top]="'0'" [style.right]="'0'"
|
|
263
|
+
[style.cursor]="'ne-resize'" [style.pointer-events]="'all'"
|
|
264
|
+
[style.width.px]="10" [style.height.px]="10"
|
|
265
|
+
[style.background-color]="color() ?? null"
|
|
266
|
+
></div>
|
|
267
|
+
<div
|
|
268
|
+
class="xy-flow__resize-control nodrag handle handle-bottom-left bottom left"
|
|
269
|
+
[class]="handleClassName()"
|
|
270
|
+
[style.position]="'absolute'" [style.bottom]="'0'" [style.left]="'0'"
|
|
271
|
+
[style.cursor]="'sw-resize'" [style.pointer-events]="'all'"
|
|
272
|
+
[style.width.px]="10" [style.height.px]="10"
|
|
273
|
+
[style.background-color]="color() ?? null"
|
|
274
|
+
></div>
|
|
275
|
+
<div
|
|
276
|
+
class="xy-flow__resize-control nodrag handle handle-bottom-right bottom right"
|
|
277
|
+
[class]="handleClassName()"
|
|
278
|
+
[style.position]="'absolute'" [style.bottom]="'0'" [style.right]="'0'"
|
|
279
|
+
[style.cursor]="'se-resize'" [style.pointer-events]="'all'"
|
|
280
|
+
[style.width.px]="10" [style.height.px]="10"
|
|
281
|
+
[style.background-color]="color() ?? null"
|
|
282
|
+
></div>
|
|
283
|
+
<!-- Resize lines -->
|
|
284
|
+
<div
|
|
285
|
+
class="xy-flow__resize-control nodrag line line-top top"
|
|
286
|
+
[class]="lineClassName()"
|
|
287
|
+
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'" [style.right]="'0'"
|
|
288
|
+
[style.height.px]="2" [style.cursor]="'n-resize'" [style.pointer-events]="'all'"
|
|
289
|
+
[style.border-color]="color() ?? null"
|
|
290
|
+
></div>
|
|
291
|
+
<div
|
|
292
|
+
class="xy-flow__resize-control nodrag line line-right right"
|
|
293
|
+
[class]="lineClassName()"
|
|
294
|
+
[style.position]="'absolute'" [style.top]="'0'" [style.right]="'0'" [style.bottom]="'0'"
|
|
295
|
+
[style.width.px]="2" [style.cursor]="'e-resize'" [style.pointer-events]="'all'"
|
|
296
|
+
[style.border-color]="color() ?? null"
|
|
297
|
+
></div>
|
|
298
|
+
<div
|
|
299
|
+
class="xy-flow__resize-control nodrag line line-bottom bottom"
|
|
300
|
+
[class]="lineClassName()"
|
|
301
|
+
[style.position]="'absolute'" [style.bottom]="'0'" [style.left]="'0'" [style.right]="'0'"
|
|
302
|
+
[style.height.px]="2" [style.cursor]="'s-resize'" [style.pointer-events]="'all'"
|
|
303
|
+
[style.border-color]="color() ?? null"
|
|
304
|
+
></div>
|
|
305
|
+
<div
|
|
306
|
+
class="xy-flow__resize-control nodrag line line-left left"
|
|
307
|
+
[class]="lineClassName()"
|
|
308
|
+
[style.position]="'absolute'" [style.top]="'0'" [style.left]="'0'" [style.bottom]="'0'"
|
|
309
|
+
[style.width.px]="2" [style.cursor]="'w-resize'" [style.pointer-events]="'all'"
|
|
310
|
+
[style.border-color]="color() ?? null"
|
|
311
|
+
></div>
|
|
283
312
|
`,
|
|
284
313
|
}]
|
|
285
314
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-resizer.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/node-resizer/node-resizer.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,uBAAuB,EACvB,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAQ,EACR,UAAU,EAGV,QAAQ,EACR,MAAM,GACP,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,SAAS,GAcV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;;
|
|
1
|
+
{"version":3,"file":"node-resizer.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/node-resizer/node-resizer.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,uBAAuB,EACvB,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAQ,EACR,UAAU,EAGV,QAAQ,EACR,MAAM,GACP,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,SAAS,GAcV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;;AAEhD;;;;;;;;;GASG;AA0EH,MAAM,OAAO,oBAAoB;IAqE/B,YAAyC,MAAqB;QApEtD,UAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1B,OAAE,GAAG,MAAM,CAAC,CAAA,UAAuB,CAAA,CAAC,CAAC;QAE7C,yGAAyG;QAChG,gBAAW,GAAG,KAAK,CAAqB,SAAS,mFAAI,KAAK,EAAE,QAAQ,GAAG,CAAC;QACjF,uCAAuC;QAC9B,aAAQ,GAAG,KAAK,CAAC,EAAE,+EAAC,CAAC;QAC9B,wCAAwC;QAC/B,cAAS,GAAG,KAAK,CAAC,EAAE,gFAAC,CAAC;QAC/B,uCAAuC;QAC9B,aAAQ,GAAG,KAAK,CAAC,QAAQ,+EAAC,CAAC;QACpC,wCAAwC;QAC/B,cAAS,GAAG,KAAK,CAAC,QAAQ,gFAAC,CAAC;QACrC,0DAA0D;QACjD,oBAAe,GAAG,KAAK,CAAC,KAAK,sFAAC,CAAC;QACxC;;;;;WAKG;QACM,cAAS,GAAG,KAAK,CAAsB,SAAS,gFAAC,CAAC;QAC3D,qEAAqE;QAC5D,UAAK,GAAG,KAAK,sFAAU,CAAC;QACjC,qDAAqD;QAC5C,oBAAe,GAAG,KAAK,CAAS,EAAE,sFAAC,CAAC;QAC7C,mDAAmD;QAC1C,gBAAW,GAAG,KAAK,4FAAgC,CAAC;QAC7D,iDAAiD;QACxC,kBAAa,GAAG,KAAK,CAAS,EAAE,oFAAC,CAAC;QAC3C,+CAA+C;QACtC,cAAS,GAAG,KAAK,0FAAgC,CAAC;QAC3D,4EAA4E;QACnE,cAAS,GAAG,KAAK,CAAC,IAAI,gFAAC,CAAC;QACjC,oEAAoE;QAC3D,iBAAY,GAAG,KAAK,6FAAgB,CAAC;QAC9C,kFAAkF;QACzE,oBAAe,GAAG,KAAK,CAA4B,SAAS,uFAAI,KAAK,EAAE,eAAe,GAAG,CAAC;QACnG,wEAAwE;QAC/D,eAAU,GAAG,KAAK,CAAuB,SAAS,kFAAI,KAAK,EAAE,UAAU,GAAG,CAAC;QACpF,8EAA8E;QACrE,kBAAa,GAAG,KAAK,CAA0B,SAAS,qFAAI,KAAK,EAAE,aAAa,GAAG,CAAC;QAE7F,0CAA0C;QACjC,gBAAW,GAAG,MAAM,EAA6C,CAAC;QAC3E,kFAAkF;QACzE,WAAM,GAAG,MAAM,EAAyH,CAAC;QAClJ,qEAAqE;QAC5D,cAAS,GAAG,MAAM,EAA4F,CAAC;QAEhH,WAAM,GAAW,EAAE,CAAC;QACpB,qBAAgB,GAAmC,EAAE,CAAC;QAE9D;;;WAGG;QACM,uBAAkB,GAAG,QAAQ,CAAC,GAAG,EAAE;YAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAClC,IAAI,QAAQ,KAAK,SAAS;gBAAE,OAAO,QAAQ,CAAC;YAC5C,4EAA4E;YAC5E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC;YAC7C,IAAI,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAC;YACrB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5C,OAAO,IAAI,EAAE,QAAQ,IAAI,KAAK,CAAC;QACjC,CAAC,yFAAC,CAAC;QAGD,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;IAC7B,CAAC;IAED,eAAe;QACb,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC;QACzD,yEAAyE;QACzE,MAAM,OAAO,GAAqB,KAAK,CAAC,IAAI,CACzC,IAAI,CAAC,EAAE,CAAC,aAA6B,CAAC,gBAAgB,CAAC,mCAAmC,CAAC,CACzE,CAAC;QACtB,MAAM,SAAS,GAAsB;YACnC,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc;YACtD,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM;SACjC,CAAC;QAEF,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,OAAO,GAAG,SAAS,CAAC;gBACxB,OAAO,EAAE,MAAwB;gBACjC,MAAM,EAAE,cAAc;gBACtB,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;oBACpB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU;oBACjC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;oBACjC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;oBACrE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;oBACnC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;oBACnC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;iBAClC,CAAC;gBACF,QAAQ,EAAE,CAAC,MAAuB,EAAE,YAAoC,EAAE,EAAE;oBAC1E,MAAM,WAAW,GAAiB,EAAE,CAAC;oBACrC,MAAM,YAAY,GAAwB,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;oBAEvE,IAAI,YAAY,CAAC,CAAC,KAAK,SAAS,IAAI,YAAY,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;wBACjE,WAAW,CAAC,IAAI,CAAC;4BACf,EAAE,EAAE,cAAc;4BAClB,IAAI,EAAE,UAAU;4BAChB,QAAQ,EAAE,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE;yBAC7B,CAAC,CAAC;oBAC3B,CAAC;oBAED,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC9D,WAAW,CAAC,IAAI,CAAC;4BACf,EAAE,EAAE,cAAc;4BAClB,IAAI,EAAE,YAAY;4BAClB,QAAQ,EAAE,IAAI;4BACd,aAAa,EAAE,IAAI;4BACnB,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;yBACpC,CAAC,CAAC;oBAC5B,CAAC;oBAED,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;wBACvC,WAAW,CAAC,IAAI,CAAC;4BACf,EAAE,EAAE,WAAW,CAAC,EAAE;4BAClB,IAAI,EAAE,UAAU;4BAChB,QAAQ,EAAE,WAAW,CAAC,QAAQ;yBACT,CAAC,CAAC;oBAC3B,CAAC;oBAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;oBAC7C,CAAC;oBAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;gBACtD,CAAC;gBACD,KAAK,EAAE,CAAC,MAAiC,EAAE,EAAE;oBAC3C,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;wBAC5B;4BACE,EAAE,EAAE,cAAc;4BAClB,IAAI,EAAE,YAAY;4BAClB,QAAQ,EAAE,KAAK;4BACf,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;yBACpC;qBACzB,CAAC,CAAC;oBACH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC3C,CAAC;aACF,CAAC,CAAC;YAEH,OAAO,CAAC,MAAM,CAAC;gBACb,eAAe,EAAE,SAAS,CAAC,KAAK,CAAC;gBACjC,UAAU,EAAE;oBACV,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;oBACzB,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;oBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;oBACzB,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;iBAC5B;gBACD,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE;gBACvC,aAAa,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,KAAsB,EAAE,MAAoB,EAAE,EAAE;oBACzF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;gBAC9C,CAAC,CAAC;gBACF,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,KAAsB,EAAE,MAAoB,EAAE,EAAE;oBAC/E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;gBACzC,CAAC,CAAC;gBACF,WAAW,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,KAAsB,EAAE,MAAoB,EAAE,EAAE;oBACrF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;gBAC5C,CAAC,CAAC;gBACF,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE;aAClC,CAAC,CAAC;YAEH,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,WAAW;QACT,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IACpD,CAAC;8GA5KU,oBAAoB,kBAqEC,OAAO;kGArE5B,oBAAoB,ypFAhErB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DT;;2FAEU,oBAAoB;kBAzEhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE;wBACJ,OAAO,EAAE,+CAA+C;wBACxD,OAAO,EAAE,qDAAqD;wBAC9D,iBAAiB,EAAE,sCAAsC;qBAC1D;oBACD,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DT;iBACF;;0BAsEc,QAAQ;;0BAAI,MAAM;2BAAC,OAAO"}
|
|
@@ -1,12 +1,32 @@
|
|
|
1
1
|
import { Position } from '@angflow/system';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Floating toolbar anchored to a node. By default it appears only while the
|
|
5
|
+
* owning node is selected. Use inside a node template, or pass `[nodeId]` to
|
|
6
|
+
* render it anywhere in the flow.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```html
|
|
10
|
+
* <ng-flow-node-toolbar [position]="Position.Top">
|
|
11
|
+
* <button (click)="delete()">Delete</button>
|
|
12
|
+
* </ng-flow-node-toolbar>
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
3
15
|
export declare class NodeToolbarComponent {
|
|
4
16
|
private store;
|
|
5
|
-
/**
|
|
17
|
+
/**
|
|
18
|
+
* Node id(s) this toolbar is anchored to. If omitted and the toolbar is
|
|
19
|
+
* rendered inside a node template, the host node is used automatically.
|
|
20
|
+
* Aliased as `nodeId`.
|
|
21
|
+
*/
|
|
6
22
|
readonly nodeIdInput: import("@angular/core").InputSignal<string | string[] | undefined>;
|
|
23
|
+
/** Which side of the node the toolbar appears on. */
|
|
7
24
|
readonly position: import("@angular/core").InputSignal<Position>;
|
|
25
|
+
/** Override visibility. When unset, the toolbar shows only while the node is selected. */
|
|
8
26
|
readonly isVisible: import("@angular/core").InputSignal<boolean | undefined>;
|
|
27
|
+
/** Gap in pixels between the toolbar and the node edge. */
|
|
9
28
|
readonly offset: import("@angular/core").InputSignal<number>;
|
|
29
|
+
/** Alignment of the toolbar along the node edge. */
|
|
10
30
|
readonly align: import("@angular/core").InputSignal<"center" | "start" | "end">;
|
|
11
31
|
private contextNodeId;
|
|
12
32
|
constructor(nodeId: string | null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-toolbar.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/node-toolbar/node-toolbar.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;;AAI3C,qBAiBa,oBAAoB;IAC/B,OAAO,CAAC,KAAK,CAAqB;IAElC
|
|
1
|
+
{"version":3,"file":"node-toolbar.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/node-toolbar/node-toolbar.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;;AAI3C;;;;;;;;;;;GAWG;AACH,qBAiBa,oBAAoB;IAC/B,OAAO,CAAC,KAAK,CAAqB;IAElC;;;;OAIG;IACH,QAAQ,CAAC,WAAW,qEAAwE;IAC5F,qDAAqD;IACrD,QAAQ,CAAC,QAAQ,gDAAiC;IAClD,0FAA0F;IAC1F,QAAQ,CAAC,SAAS,2DAAoB;IACtC,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,8CAAa;IAC5B,oDAAoD;IACpD,QAAQ,CAAC,KAAK,kEAA+C;IAE7D,OAAO,CAAC,aAAa,CAAc;gBAEM,MAAM,EAAE,MAAM,GAAG,IAAI;IAI9D,QAAQ,CAAC,eAAe,2CAMrB;IAEH,QAAQ,CAAC,UAAU,0CAQhB;IAEH,QAAQ,CAAC,gBAAgB,yCAqCtB;yCA/EQ,oBAAoB;2CAApB,oBAAoB;CAgFhC"}
|
|
@@ -3,14 +3,34 @@ import { Position } from '@angflow/system';
|
|
|
3
3
|
import { FlowStore } from '../../services/flow-store.service';
|
|
4
4
|
import { NODE_ID } from '../../services/tokens';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* Floating toolbar anchored to a node. By default it appears only while the
|
|
8
|
+
* owning node is selected. Use inside a node template, or pass `[nodeId]` to
|
|
9
|
+
* render it anywhere in the flow.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```html
|
|
13
|
+
* <ng-flow-node-toolbar [position]="Position.Top">
|
|
14
|
+
* <button (click)="delete()">Delete</button>
|
|
15
|
+
* </ng-flow-node-toolbar>
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
6
18
|
export class NodeToolbarComponent {
|
|
7
19
|
constructor(nodeId) {
|
|
8
20
|
this.store = inject(FlowStore);
|
|
9
|
-
/**
|
|
21
|
+
/**
|
|
22
|
+
* Node id(s) this toolbar is anchored to. If omitted and the toolbar is
|
|
23
|
+
* rendered inside a node template, the host node is used automatically.
|
|
24
|
+
* Aliased as `nodeId`.
|
|
25
|
+
*/
|
|
10
26
|
this.nodeIdInput = input(undefined, { ...(ngDevMode ? { debugName: "nodeIdInput" } : /* istanbul ignore next */ {}), alias: 'nodeId' });
|
|
27
|
+
/** Which side of the node the toolbar appears on. */
|
|
11
28
|
this.position = input(Position.Top, ...(ngDevMode ? [{ debugName: "position" }] : /* istanbul ignore next */ []));
|
|
29
|
+
/** Override visibility. When unset, the toolbar shows only while the node is selected. */
|
|
12
30
|
this.isVisible = input(...(ngDevMode ? [undefined, { debugName: "isVisible" }] : /* istanbul ignore next */ []));
|
|
31
|
+
/** Gap in pixels between the toolbar and the node edge. */
|
|
13
32
|
this.offset = input(10, ...(ngDevMode ? [{ debugName: "offset" }] : /* istanbul ignore next */ []));
|
|
33
|
+
/** Alignment of the toolbar along the node edge. */
|
|
14
34
|
this.align = input('center', ...(ngDevMode ? [{ debugName: "align" }] : /* istanbul ignore next */ []));
|
|
15
35
|
this.contextNodeId = '';
|
|
16
36
|
this.resolvedNodeIds = computed(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-toolbar.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/node-toolbar/node-toolbar.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC9G,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;;
|
|
1
|
+
{"version":3,"file":"node-toolbar.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/node-toolbar/node-toolbar.component.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { Position } from '@angflow/system';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Built-in node renderer with a target handle on top and a source handle on
|
|
5
|
+
* bottom. Used when a node has no `type` or `type: 'default'`.
|
|
6
|
+
*/
|
|
3
7
|
export declare class DefaultNodeComponent {
|
|
4
8
|
readonly Position: typeof Position;
|
|
5
9
|
readonly id: import("@angular/core").InputSignal<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-node.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/nodes/default-node.component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;;AAE3C,qBAWa,oBAAoB;IAC/B,QAAQ,CAAC,QAAQ,kBAAY;IAC7B,QAAQ,CAAC,EAAE,8CAA4B;IACvC,QAAQ,CAAC,IAAI,2CAAgB;IAC7B,QAAQ,CAAC,IAAI,0DAAmB;IAChC,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,MAAM,8CAAY;IAC3B,QAAQ,CAAC,aAAa,+CAAe;IACrC,QAAQ,CAAC,iBAAiB,8CAAY;IACtC,QAAQ,CAAC,iBAAiB,8CAAY;IACtC,QAAQ,CAAC,cAAc,4DAAqB;IAC5C,QAAQ,CAAC,cAAc,4DAAqB;IAC5C,QAAQ,CAAC,UAAU,0DAAmB;yCAb3B,oBAAoB;2CAApB,oBAAoB;CAchC"}
|
|
1
|
+
{"version":3,"file":"default-node.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/nodes/default-node.component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;;AAE3C;;;GAGG;AACH,qBAWa,oBAAoB;IAC/B,QAAQ,CAAC,QAAQ,kBAAY;IAC7B,QAAQ,CAAC,EAAE,8CAA4B;IACvC,QAAQ,CAAC,IAAI,2CAAgB;IAC7B,QAAQ,CAAC,IAAI,0DAAmB;IAChC,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,MAAM,8CAAY;IAC3B,QAAQ,CAAC,aAAa,+CAAe;IACrC,QAAQ,CAAC,iBAAiB,8CAAY;IACtC,QAAQ,CAAC,iBAAiB,8CAAY;IACtC,QAAQ,CAAC,cAAc,4DAAqB;IAC5C,QAAQ,CAAC,cAAc,4DAAqB;IAC5C,QAAQ,CAAC,UAAU,0DAAmB;yCAb3B,oBAAoB;2CAApB,oBAAoB;CAchC"}
|