@foblex/flow 18.2.0 → 18.3.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 -1
- package/domain/f-connection/create-connection-markers/create-connection-markers.d.ts +3 -2
- package/domain/f-connection/redraw-connections/redraw-connections.d.ts +2 -0
- package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.mjs +33 -6
- package/esm2022/domain/f-connection/redraw-connections/redraw-connections.mjs +46 -3
- package/esm2022/f-connection/f-connection/f-connection.component.mjs +6 -6
- package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +6 -7
- package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +6 -7
- package/esm2022/f-connection/providers.mjs +8 -4
- package/esm2022/f-connection-v2/components/connection-gradient/components/index.mjs +2 -0
- package/esm2022/f-connection-v2/components/connection-gradient/components/render/f-connection-gradient-renderer.mjs +17 -0
- package/esm2022/f-connection-v2/components/connection-gradient/components/render/index.mjs +3 -0
- package/esm2022/f-connection-v2/components/connection-gradient/components/render/models/f-connection-gradient-renderer-base.mjs +81 -0
- package/esm2022/f-connection-v2/components/connection-gradient/components/render/models/index.mjs +2 -0
- package/esm2022/f-connection-v2/components/connection-gradient/f-connection-gradient.mjs +14 -46
- package/esm2022/f-connection-v2/components/connection-gradient/index.mjs +2 -1
- package/esm2022/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.mjs +2 -3
- package/esm2022/f-connection-v2/components/connection-path/f-connection-path.mjs +11 -7
- package/esm2022/f-connection-v2/components/f-connection-base.mjs +13 -9
- package/esm2022/f-connection-v2/models/f-connection-components-parent.mjs +1 -1
- package/esm2022/f-connection-v2/utils/create-gradient-dom-identifier.mjs +3 -3
- package/esm2022/f-connection-v2/utils/create-gradient-dom-url.mjs +3 -3
- package/esm2022/f-connection-worker/features/ensure-connection-worker/ensure-connection-worker.mjs +11 -4
- package/esm2022/f-connection-worker/features/is-connection-worker-enabled/is-connection-worker-enabled.mjs +3 -2
- package/esm2022/f-connection-worker/model/f-connection-worker.mjs +5 -1
- package/esm2022/f-connection-worker/worker/connection-worker-runtime.mjs +235 -0
- package/esm2022/f-flow/f-flow.component.mjs +8 -5
- package/esm2022/f-flow.module.mjs +37 -36
- package/esm2022/f-storage/f-components-store.mjs +17 -1
- package/esm2022/f-virtual/f-virtual-for.mjs +33 -3
- package/f-connection/f-connection/f-connection.component.d.ts +1 -1
- package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +1 -1
- package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +1 -1
- package/f-connection/providers.d.ts +3 -3
- package/f-connection-v2/components/connection-gradient/components/index.d.ts +1 -0
- package/f-connection-v2/components/connection-gradient/components/render/f-connection-gradient-renderer.d.ts +8 -0
- package/f-connection-v2/components/connection-gradient/components/render/index.d.ts +2 -0
- package/f-connection-v2/components/connection-gradient/components/render/models/f-connection-gradient-renderer-base.d.ts +25 -0
- package/f-connection-v2/components/connection-gradient/components/render/models/index.d.ts +1 -0
- package/f-connection-v2/components/connection-gradient/f-connection-gradient.d.ts +3 -11
- package/f-connection-v2/components/connection-gradient/index.d.ts +1 -0
- package/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.d.ts +3 -5
- package/f-connection-v2/components/connection-path/f-connection-path.d.ts +3 -2
- package/f-connection-v2/components/f-connection-base.d.ts +7 -4
- package/f-connection-v2/models/f-connection-components-parent.d.ts +0 -2
- package/f-connection-v2/utils/create-gradient-dom-identifier.d.ts +1 -1
- package/f-connection-v2/utils/create-gradient-dom-url.d.ts +1 -1
- package/f-connection-worker/model/f-connection-worker.d.ts +1 -0
- package/f-connection-worker/worker/connection-worker-runtime.d.ts +11 -0
- package/f-flow/f-flow.component.d.ts +1 -0
- package/f-flow.module.d.ts +38 -37
- package/f-storage/f-components-store.d.ts +5 -0
- package/f-virtual/f-virtual-for.d.ts +8 -2
- package/fesm2022/foblex-flow.mjs +509 -75
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -18,43 +18,44 @@ import { F_VIRTUAL_FOR_PROVIDERS } from './f-virtual';
|
|
|
18
18
|
import * as i0 from "@angular/core";
|
|
19
19
|
import * as i1 from "./f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-start";
|
|
20
20
|
import * as i2 from "./f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-end";
|
|
21
|
-
import * as i3 from "./f-connection-v2/components/connection-
|
|
22
|
-
import * as i4 from "./f-connection-v2/components/connection-
|
|
23
|
-
import * as i5 from "./f-connection-v2/components/connection-
|
|
24
|
-
import * as i6 from "./f-connection-
|
|
25
|
-
import * as i7 from "./f-connection/f-connection/f-connection.component";
|
|
26
|
-
import * as i8 from "./f-connection/f-connection
|
|
27
|
-
import * as i9 from "./f-
|
|
28
|
-
import * as i10 from "./f-connectors/f-node-
|
|
29
|
-
import * as i11 from "./f-connectors/f-node-
|
|
30
|
-
import * as i12 from "./f-
|
|
31
|
-
import * as i13 from "./f-
|
|
32
|
-
import * as i14 from "./f-node/f-
|
|
33
|
-
import * as i15 from "./f-node/f-
|
|
34
|
-
import * as i16 from "./f-node/f-
|
|
35
|
-
import * as i17 from "./f-node/f-
|
|
36
|
-
import * as i18 from "./f-
|
|
37
|
-
import * as i19 from "./f-
|
|
38
|
-
import * as i20 from "./f-
|
|
39
|
-
import * as i21 from "./f-backgroud/f-
|
|
40
|
-
import * as i22 from "./f-backgroud/f-
|
|
41
|
-
import * as i23 from "./f-
|
|
42
|
-
import * as i24 from "./f-
|
|
43
|
-
import * as i25 from "./f-
|
|
44
|
-
import * as i26 from "./f-minimap/f-minimap.
|
|
45
|
-
import * as i27 from "./f-minimap/f-minimap-
|
|
46
|
-
import * as i28 from "./f-minimap/f-minimap-
|
|
47
|
-
import * as i29 from "./f-
|
|
48
|
-
import * as i30 from "./f-
|
|
49
|
-
import * as i31 from "./f-magnetic-
|
|
50
|
-
import * as i32 from "./f-
|
|
51
|
-
import * as i33 from "./f-connection-v2/components/connection-
|
|
52
|
-
import * as i34 from "./f-connection-v2/components/connection-
|
|
53
|
-
import * as i35 from "./f-
|
|
21
|
+
import * as i3 from "./f-connection-v2/components/connection-path/f-connection-path";
|
|
22
|
+
import * as i4 from "./f-connection-v2/components/connection-selection/f-connection-selection";
|
|
23
|
+
import * as i5 from "./f-connection-v2/components/connection-marker/f-connection-marker";
|
|
24
|
+
import * as i6 from "./f-connection/f-connection/f-connection.component";
|
|
25
|
+
import * as i7 from "./f-connection/f-connection-for-create/f-connection-for-create.component";
|
|
26
|
+
import * as i8 from "./f-connection/f-snap-connection/f-snap-connection.component";
|
|
27
|
+
import * as i9 from "./f-connectors/f-node-input/f-node-input.directive";
|
|
28
|
+
import * as i10 from "./f-connectors/f-node-outlet/f-node-outlet.directive";
|
|
29
|
+
import * as i11 from "./f-connectors/f-node-output/f-node-output.directive";
|
|
30
|
+
import * as i12 from "./f-line-alignment/f-line-alignment.component";
|
|
31
|
+
import * as i13 from "./f-node/f-group.directive";
|
|
32
|
+
import * as i14 from "./f-node/f-node.directive";
|
|
33
|
+
import * as i15 from "./f-node/f-drag-handle.directive";
|
|
34
|
+
import * as i16 from "./f-node/f-resize-handle/f-resize-handle.directive";
|
|
35
|
+
import * as i17 from "./f-node/f-rotate-handle/f-rotate-handle.directive";
|
|
36
|
+
import * as i18 from "./f-flow/f-flow.component";
|
|
37
|
+
import * as i19 from "./f-canvas/f-canvas.component";
|
|
38
|
+
import * as i20 from "./f-backgroud/f-background.component";
|
|
39
|
+
import * as i21 from "./f-backgroud/f-rect-pattern/f-rect-pattern.component";
|
|
40
|
+
import * as i22 from "./f-backgroud/f-circle-pattern/f-circle-pattern.component";
|
|
41
|
+
import * as i23 from "./f-zoom/f-zoom.directive";
|
|
42
|
+
import * as i24 from "./f-external-item/f-external-item";
|
|
43
|
+
import * as i25 from "./f-minimap/f-minimap.component";
|
|
44
|
+
import * as i26 from "./f-minimap/f-minimap-canvas.directive";
|
|
45
|
+
import * as i27 from "./f-minimap/f-minimap-view.directive";
|
|
46
|
+
import * as i28 from "./f-minimap/f-minimap-flow.directive";
|
|
47
|
+
import * as i29 from "./f-selection-area/f-selection-area";
|
|
48
|
+
import * as i30 from "./f-magnetic-lines/f-magnetic-lines";
|
|
49
|
+
import * as i31 from "./f-magnetic-rects/f-magnetic-rects";
|
|
50
|
+
import * as i32 from "./f-connection-v2/components/connection-content/f-connection-content";
|
|
51
|
+
import * as i33 from "./f-connection-v2/components/connection-gradient/f-connection-gradient";
|
|
52
|
+
import * as i34 from "./f-connection-v2/components/connection-gradient/components/render/f-connection-gradient-renderer";
|
|
53
|
+
import * as i35 from "./f-connection-v2/components/connection-waypoints/f-connection-waypoints";
|
|
54
|
+
import * as i36 from "./f-virtual/f-virtual-for";
|
|
54
55
|
export class FFlowModule {
|
|
55
56
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FFlowModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
56
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: FFlowModule, declarations: [i1.FConnectionDragHandleStart, i2.FConnectionDragHandleEnd, i3.
|
|
57
|
-
FDraggableDirective], imports: [
|
|
57
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: FFlowModule, declarations: [i1.FConnectionDragHandleStart, i2.FConnectionDragHandleEnd, i3.FConnectionPath, i4.FConnectionSelection, i5.FConnectionMarker, i6.FConnectionComponent, i7.FConnectionForCreateComponent, i8.FSnapConnectionComponent, i9.FNodeInputDirective, i10.FNodeOutletDirective, i11.FNodeOutputDirective, i12.FLineAlignmentComponent, i13.FGroupDirective, i14.FNodeDirective, i15.FDragHandleDirective, i16.FResizeHandleDirective, i17.FRotateHandleDirective, FDragBlockerDirective,
|
|
58
|
+
FDraggableDirective], imports: [i18.FFlowComponent, i19.FCanvasComponent, i20.FBackgroundComponent, i21.FRectPatternComponent, i22.FCirclePatternComponent, i23.FZoomDirective, i24.FExternalItem, i25.FMinimapComponent, i26.FMinimapCanvasDirective, i27.FMinimapViewDirective, i28.FMinimapFlowDirective, i29.FSelectionArea, i30.FMagneticLines, i31.FMagneticRects, i32.FConnectionContent, i33.FConnectionGradient, i34.FConnectionGradientRenderer, i35.FConnectionWaypoints, i36.FVirtualFor, CommonModule], exports: [i18.FFlowComponent, i19.FCanvasComponent, i20.FBackgroundComponent, i21.FRectPatternComponent, i22.FCirclePatternComponent, i23.FZoomDirective, i24.FExternalItem, i29.FSelectionArea, i30.FMagneticLines, i31.FMagneticRects, i32.FConnectionContent, i33.FConnectionGradient, i34.FConnectionGradientRenderer, i35.FConnectionWaypoints, i1.FConnectionDragHandleStart, i2.FConnectionDragHandleEnd, i3.FConnectionPath, i4.FConnectionSelection, i5.FConnectionMarker, i6.FConnectionComponent, i7.FConnectionForCreateComponent, i8.FSnapConnectionComponent, i9.FNodeInputDirective, i10.FNodeOutletDirective, i11.FNodeOutputDirective, i12.FLineAlignmentComponent, i25.FMinimapComponent, i26.FMinimapCanvasDirective, i27.FMinimapViewDirective, i28.FMinimapFlowDirective, i13.FGroupDirective, i14.FNodeDirective, i15.FDragHandleDirective, i16.FResizeHandleDirective, i17.FRotateHandleDirective, i36.FVirtualFor, FDragBlockerDirective,
|
|
58
59
|
FDraggableDirective] });
|
|
59
60
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FFlowModule, imports: [CommonModule] });
|
|
60
61
|
}
|
|
@@ -104,4 +105,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
104
105
|
],
|
|
105
106
|
}]
|
|
106
107
|
}] });
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1mbG93Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1mbG93Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDOUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXVEdEQsTUFBTSxPQUFPLFdBQVc7d0dBQVgsV0FBVzt5R0FBWCxXQUFXLDRjQTlDcEIscUJBQXFCO1lBQ3JCLG1CQUFtQixtZEFrQm5CLFlBQVksODRCQXVCWixxQkFBcUI7WUFDckIsbUJBQW1CO3lHQUdWLFdBQVcsWUEzQnBCLFlBQVk7OzRGQTJCSCxXQUFXO2tCQXJEdkIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osR0FBRyxzQkFBc0I7d0JBQ3pCLEdBQUcsc0JBQXNCO3dCQUN6QixHQUFHLDBCQUEwQjt3QkFDN0IsR0FBRyxnQkFBZ0I7d0JBRW5CLHFCQUFxQjt3QkFDckIsbUJBQW1CO3FCQUNwQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsR0FBRyxnQkFBZ0I7d0JBQ25CLEdBQUcsa0JBQWtCO3dCQUNyQixHQUFHLHNCQUFzQjt3QkFDekIsR0FBRyxnQkFBZ0I7d0JBQ25CLEdBQUcseUJBQXlCO3dCQUM1QixHQUFHLG1CQUFtQjt3QkFFdEIsR0FBRywwQkFBMEI7d0JBQzdCLEdBQUcsMEJBQTBCO3dCQUM3QixHQUFHLDBCQUEwQjt3QkFFN0IsR0FBRyw0QkFBNEI7d0JBRS9CLEdBQUcsdUJBQXVCO3dCQUUxQixZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCxHQUFHLGdCQUFnQjt3QkFDbkIsR0FBRyxrQkFBa0I7d0JBQ3JCLEdBQUcsc0JBQXNCO3dCQUN6QixHQUFHLGdCQUFnQjt3QkFDbkIsR0FBRyx5QkFBeUI7d0JBRTVCLEdBQUcsMEJBQTBCO3dCQUM3QixHQUFHLDBCQUEwQjt3QkFDN0IsR0FBRywwQkFBMEI7d0JBRTdCLEdBQUcsNEJBQTRCO3dCQUUvQixHQUFHLHNCQUFzQjt3QkFDekIsR0FBRyxzQkFBc0I7d0JBQ3pCLEdBQUcsMEJBQTBCO3dCQUM3QixHQUFHLG1CQUFtQjt3QkFDdEIsR0FBRyxnQkFBZ0I7d0JBRW5CLEdBQUcsdUJBQXVCO3dCQUUxQixxQkFBcUI7d0JBQ3JCLG1CQUFtQjtxQkFDcEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTl9JTVBPUlRTX0VYUE9SVFMsIEZfQ09OTkVDVElPTl9QUk9WSURFUlMgfSBmcm9tICcuL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGX05PREVfUFJPVklERVJTIH0gZnJvbSAnLi9mLW5vZGUnO1xuaW1wb3J0IHsgRl9CQUNLR1JPVU5EX1BST1ZJREVSUyB9IGZyb20gJy4vZi1iYWNrZ3JvdWQnO1xuaW1wb3J0IHsgRl9DT05ORUNUT1JTX1BST1ZJREVSUyB9IGZyb20gJy4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZEcmFnQmxvY2tlckRpcmVjdGl2ZSwgRkRyYWdnYWJsZURpcmVjdGl2ZSB9IGZyb20gJy4vZi1kcmFnZ2FibGUnO1xuaW1wb3J0IHsgRl9TRUxFQ1RJT05fQVJFQV9QUk9WSURFUlMgfSBmcm9tICcuL2Ytc2VsZWN0aW9uLWFyZWEnO1xuaW1wb3J0IHsgRl9MSU5FX0FMSUdOTUVOVF9QUk9WSURFUlMgfSBmcm9tICcuL2YtbGluZS1hbGlnbm1lbnQnO1xuaW1wb3J0IHsgRl9NSU5JTUFQX1BST1ZJREVSUyB9IGZyb20gJy4vZi1taW5pbWFwJztcbmltcG9ydCB7IEZfRkxPV19QUk9WSURFUlMgfSBmcm9tICcuL2YtZmxvdyc7XG5pbXBvcnQgeyBGX0NBTlZBU19QUk9WSURFUlMgfSBmcm9tICcuL2YtY2FudmFzJztcbmltcG9ydCB7IEZfWk9PTV9QUk9WSURFUlMgfSBmcm9tICcuL2Ytem9vbSc7XG5pbXBvcnQgeyBGX0VYVEVSTkFMX0lURU1fUFJPVklERVJTIH0gZnJvbSAnLi9mLWV4dGVybmFsLWl0ZW0nO1xuaW1wb3J0IHsgRl9NQUdORVRJQ19MSU5FU19QUk9WSURFUlMgfSBmcm9tICcuL2YtbWFnbmV0aWMtbGluZXMnO1xuaW1wb3J0IHsgRl9NQUdORVRJQ19SRUNUU19QUk9WSURFUlMgfSBmcm9tICcuL2YtbWFnbmV0aWMtcmVjdHMnO1xuaW1wb3J0IHsgRl9WSVJUVUFMX0ZPUl9QUk9WSURFUlMgfSBmcm9tICcuL2YtdmlydHVhbCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIC4uLkZfQ09OTkVDVElPTl9QUk9WSURFUlMsXG4gICAgLi4uRl9DT05ORUNUT1JTX1BST1ZJREVSUyxcbiAgICAuLi5GX0xJTkVfQUxJR05NRU5UX1BST1ZJREVSUyxcbiAgICAuLi5GX05PREVfUFJPVklERVJTLFxuXG4gICAgRkRyYWdCbG9ja2VyRGlyZWN0aXZlLFxuICAgIEZEcmFnZ2FibGVEaXJlY3RpdmUsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICAuLi5GX0ZMT1dfUFJPVklERVJTLFxuICAgIC4uLkZfQ0FOVkFTX1BST1ZJREVSUyxcbiAgICAuLi5GX0JBQ0tHUk9VTkRfUFJPVklERVJTLFxuICAgIC4uLkZfWk9PTV9QUk9WSURFUlMsXG4gICAgLi4uRl9FWFRFUk5BTF9JVEVNX1BST1ZJREVSUyxcbiAgICAuLi5GX01JTklNQVBfUFJPVklERVJTLFxuXG4gICAgLi4uRl9TRUxFQ1RJT05fQVJFQV9QUk9WSURFUlMsXG4gICAgLi4uRl9NQUdORVRJQ19MSU5FU19QUk9WSURFUlMsXG4gICAgLi4uRl9NQUdORVRJQ19SRUNUU19QUk9WSURFUlMsXG5cbiAgICAuLi5GX0NPTk5FQ1RJT05fSU1QT1JUU19FWFBPUlRTLFxuXG4gICAgLi4uRl9WSVJUVUFMX0ZPUl9QUk9WSURFUlMsXG5cbiAgICBDb21tb25Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICAuLi5GX0ZMT1dfUFJPVklERVJTLFxuICAgIC4uLkZfQ0FOVkFTX1BST1ZJREVSUyxcbiAgICAuLi5GX0JBQ0tHUk9VTkRfUFJPVklERVJTLFxuICAgIC4uLkZfWk9PTV9QUk9WSURFUlMsXG4gICAgLi4uRl9FWFRFUk5BTF9JVEVNX1BST1ZJREVSUyxcblxuICAgIC4uLkZfU0VMRUNUSU9OX0FSRUFfUFJPVklERVJTLFxuICAgIC4uLkZfTUFHTkVUSUNfTElORVNfUFJPVklERVJTLFxuICAgIC4uLkZfTUFHTkVUSUNfUkVDVFNfUFJPVklERVJTLFxuXG4gICAgLi4uRl9DT05ORUNUSU9OX0lNUE9SVFNfRVhQT1JUUyxcblxuICAgIC4uLkZfQ09OTkVDVElPTl9QUk9WSURFUlMsXG4gICAgLi4uRl9DT05ORUNUT1JTX1BST1ZJREVSUyxcbiAgICAuLi5GX0xJTkVfQUxJR05NRU5UX1BST1ZJREVSUyxcbiAgICAuLi5GX01JTklNQVBfUFJPVklERVJTLFxuICAgIC4uLkZfTk9ERV9QUk9WSURFUlMsXG5cbiAgICAuLi5GX1ZJUlRVQUxfRk9SX1BST1ZJREVSUyxcblxuICAgIEZEcmFnQmxvY2tlckRpcmVjdGl2ZSxcbiAgICBGRHJhZ2dhYmxlRGlyZWN0aXZlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGRmxvd01vZHVsZSB7fVxuIl19
|
|
@@ -12,12 +12,17 @@ export class FComponentsStore {
|
|
|
12
12
|
_connectionsRevision = 0;
|
|
13
13
|
nodesChanges$ = new FChannel();
|
|
14
14
|
_nodesRevision = 0;
|
|
15
|
+
progressiveRenderChanges$ = new FChannel();
|
|
16
|
+
_pendingProgressiveRenderCount = 0;
|
|
15
17
|
get connectionsRevision() {
|
|
16
18
|
return this._connectionsRevision;
|
|
17
19
|
}
|
|
18
20
|
get nodesRevision() {
|
|
19
21
|
return this._nodesRevision;
|
|
20
22
|
}
|
|
23
|
+
get hasPendingProgressiveRender() {
|
|
24
|
+
return this._pendingProgressiveRenderCount > 0;
|
|
25
|
+
}
|
|
21
26
|
get flowHost() {
|
|
22
27
|
return this.fFlow?.hostElement;
|
|
23
28
|
}
|
|
@@ -42,6 +47,17 @@ export class FComponentsStore {
|
|
|
42
47
|
this._connectionsRevision++;
|
|
43
48
|
this.connectionsChanges$.notify();
|
|
44
49
|
}
|
|
50
|
+
beginProgressiveRender() {
|
|
51
|
+
this._pendingProgressiveRenderCount++;
|
|
52
|
+
this.progressiveRenderChanges$.notify();
|
|
53
|
+
}
|
|
54
|
+
endProgressiveRender() {
|
|
55
|
+
if (!this._pendingProgressiveRenderCount) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
this._pendingProgressiveRenderCount--;
|
|
59
|
+
this.progressiveRenderChanges$.notify();
|
|
60
|
+
}
|
|
45
61
|
transformChanged() {
|
|
46
62
|
this.transformChanges$.notify();
|
|
47
63
|
}
|
|
@@ -65,4 +81,4 @@ export const INSTANCES = {
|
|
|
65
81
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
66
82
|
MINIMAP: fInstanceKey('minimap'),
|
|
67
83
|
};
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb21wb25lbnRzLXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLXN0b3JhZ2UvZi1jb21wb25lbnRzLXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFFBQVEsQ0FBQzs7QUFRM0QsTUFBTSxPQUFPLGdCQUFnQjtJQUNYLGlCQUFpQixHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7SUFFbkMsbUJBQW1CLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztJQUM3QyxvQkFBb0IsR0FBRyxDQUFDLENBQUM7SUFFakIsYUFBYSxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7SUFDdkMsY0FBYyxHQUFHLENBQUMsQ0FBQztJQUVYLHlCQUF5QixHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7SUFDbkQsOEJBQThCLEdBQUcsQ0FBQyxDQUFDO0lBRTNDLElBQVcsbUJBQW1CO1FBQzVCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFXLDJCQUEyQjtRQUNwQyxPQUFPLElBQUksQ0FBQyw4QkFBOEIsR0FBRyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsV0FBMEIsQ0FBQztJQUNoRCxDQUFDO0lBRU0sS0FBSyxDQUF3QjtJQUU3QixPQUFPLENBQTBCO0lBRXhDLElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBNEIsQ0FBQztJQUNwRCxDQUFDO0lBRWUsS0FBSyxHQUFHLElBQUksYUFBYSxFQUFFLENBQUM7SUFDNUIsV0FBVyxHQUFHLElBQUksbUJBQW1CLEVBQUUsQ0FBQztJQUN4QyxpQkFBaUIsR0FBRyxJQUFJLHlCQUF5QixFQUFFLENBQUM7SUFFcEQsT0FBTyxHQUFHLElBQUksa0JBQWtCLENBQWtCLFFBQVEsQ0FBQyxDQUFDO0lBQzVELE1BQU0sR0FBRyxJQUFJLGtCQUFrQixDQUFpQixPQUFPLENBQUMsQ0FBQztJQUN6RCxPQUFPLEdBQUcsSUFBSSxrQkFBa0IsQ0FBa0IsUUFBUSxDQUFDLENBQUM7SUFFNUQsU0FBUyxHQUFHLElBQUksbUJBQW1CLEVBQUUsQ0FBQztJQUUvQyxVQUFVLENBQTZCO0lBRXZDLGVBQWU7UUFDcEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVNLHFCQUFxQjtRQUMxQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLHNCQUFzQjtRQUMzQixJQUFJLENBQUMsOEJBQThCLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMseUJBQXlCLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVNLG9CQUFvQjtRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLDhCQUE4QixFQUFFLENBQUM7WUFDekMsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsOEJBQThCLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMseUJBQXlCLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDbEMsQ0FBQzt3R0ExRVUsZ0JBQWdCOzRHQUFoQixnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVU7O0FBOEVYLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUN2QixnRUFBZ0U7SUFDaEUsY0FBYyxFQUFFLFlBQVksQ0FBcUIsZ0JBQWdCLENBQUM7SUFFbEUsZ0VBQWdFO0lBQ2hFLGNBQWMsRUFBRSxZQUFZLENBQXFCLGdCQUFnQixDQUFDO0lBRWxFLGdFQUFnRTtJQUNoRSxJQUFJLEVBQUUsWUFBWSxDQUFZLGVBQWUsQ0FBQztJQUU5QyxnRUFBZ0U7SUFDaEUsVUFBVSxFQUFFLFlBQVksQ0FBa0IsWUFBWSxDQUFDO0lBRXZELGdFQUFnRTtJQUNoRSxjQUFjLEVBQUUsWUFBWSxDQUFxQixnQkFBZ0IsQ0FBQztJQUVsRSxnRUFBZ0U7SUFDaEUsT0FBTyxFQUFFLFlBQVksQ0FBZSxTQUFTLENBQUM7Q0FDdEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZGbG93QmFzZSB9IGZyb20gJy4uL2YtZmxvdyc7XG5pbXBvcnQgeyBGQ2FudmFzQmFzZSB9IGZyb20gJy4uL2YtY2FudmFzJztcbmltcG9ydCB7IEZCYWNrZ3JvdW5kQmFzZSB9IGZyb20gJy4uL2YtYmFja2dyb3VkJztcbmltcG9ydCB7IEZOb2RlSW5wdXRCYXNlLCBGTm9kZU91dGxldEJhc2UsIEZOb2RlT3V0cHV0QmFzZSB9IGZyb20gJy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlQmFzZSB9IGZyb20gJy4uL2YtZHJhZ2dhYmxlJztcbmltcG9ydCB7IEZDaGFubmVsIH0gZnJvbSAnLi4vcmVhY3Rpdml0eSc7XG5pbXBvcnQgeyBJVHJhbnNmb3JtTW9kZWwgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb25uZWN0b3JSZWdpc3RyeSB9IGZyb20gJy4vZi1jb25uZWN0b3ItcmVnaXN0cnknO1xuaW1wb3J0IHsgRk5vZGVSZWdpc3RyeSB9IGZyb20gJy4vZi1ub2RlLXJlZ2lzdHJ5JztcbmltcG9ydCB7IEZDb25uZWN0aW9uUmVnaXN0cnkgfSBmcm9tICcuL2YtY29ubmVjdGlvbi1yZWdpc3RyeSc7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbk1hcmtlclJlZ2lzdHJ5IH0gZnJvbSAnLi9mLWNvbm5lY3Rpb24tbWFya2VyLXJlZ2lzdHJ5JztcbmltcG9ydCB7IGZJbnN0YW5jZUtleSwgRlNpbmdsZVJlZ2lzdHJ5QmFzZSB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgeyBGWm9vbUJhc2UgfSBmcm9tICcuLi9mLXpvb20nO1xuaW1wb3J0IHsgRlNlbGVjdGlvbkFyZWFCYXNlIH0gZnJvbSAnLi4vZi1zZWxlY3Rpb24tYXJlYSc7XG5pbXBvcnQgeyBGTWFnbmV0aWNMaW5lc0Jhc2UgfSBmcm9tICcuLi9mLW1hZ25ldGljLWxpbmVzJztcbmltcG9ydCB7IEZNYWduZXRpY1JlY3RzQmFzZSB9IGZyb20gJy4uL2YtbWFnbmV0aWMtcmVjdHMnO1xuaW1wb3J0IHsgRk1pbmltYXBCYXNlIH0gZnJvbSAnLi4vZi1taW5pbWFwJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEZDb21wb25lbnRzU3RvcmUge1xuICBwdWJsaWMgcmVhZG9ubHkgdHJhbnNmb3JtQ2hhbmdlcyQgPSBuZXcgRkNoYW5uZWwoKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgY29ubmVjdGlvbnNDaGFuZ2VzJCA9IG5ldyBGQ2hhbm5lbCgpO1xuICBwcml2YXRlIF9jb25uZWN0aW9uc1JldmlzaW9uID0gMDtcblxuICBwdWJsaWMgcmVhZG9ubHkgbm9kZXNDaGFuZ2VzJCA9IG5ldyBGQ2hhbm5lbCgpO1xuICBwcml2YXRlIF9ub2Rlc1JldmlzaW9uID0gMDtcblxuICBwdWJsaWMgcmVhZG9ubHkgcHJvZ3Jlc3NpdmVSZW5kZXJDaGFuZ2VzJCA9IG5ldyBGQ2hhbm5lbCgpO1xuICBwcml2YXRlIF9wZW5kaW5nUHJvZ3Jlc3NpdmVSZW5kZXJDb3VudCA9IDA7XG5cbiAgcHVibGljIGdldCBjb25uZWN0aW9uc1JldmlzaW9uKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2Nvbm5lY3Rpb25zUmV2aXNpb247XG4gIH1cblxuICBwdWJsaWMgZ2V0IG5vZGVzUmV2aXNpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fbm9kZXNSZXZpc2lvbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzUGVuZGluZ1Byb2dyZXNzaXZlUmVuZGVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9wZW5kaW5nUHJvZ3Jlc3NpdmVSZW5kZXJDb3VudCA+IDA7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZsb3dIb3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5mRmxvdz8uaG9zdEVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgZkZsb3c6IEZGbG93QmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZkNhbnZhczogRkNhbnZhc0Jhc2UgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ2FudmFzPy50cmFuc2Zvcm0gYXMgSVRyYW5zZm9ybU1vZGVsO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IG5vZGVzID0gbmV3IEZOb2RlUmVnaXN0cnkoKTtcbiAgcHVibGljIHJlYWRvbmx5IGNvbm5lY3Rpb25zID0gbmV3IEZDb25uZWN0aW9uUmVnaXN0cnkoKTtcbiAgcHVibGljIHJlYWRvbmx5IGNvbm5lY3Rpb25NYXJrZXJzID0gbmV3IEZDb25uZWN0aW9uTWFya2VyUmVnaXN0cnkoKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgb3V0cHV0cyA9IG5ldyBGQ29ubmVjdG9yUmVnaXN0cnk8Rk5vZGVPdXRwdXRCYXNlPignT3V0cHV0Jyk7XG4gIHB1YmxpYyByZWFkb25seSBpbnB1dHMgPSBuZXcgRkNvbm5lY3RvclJlZ2lzdHJ5PEZOb2RlSW5wdXRCYXNlPignSW5wdXQnKTtcbiAgcHVibGljIHJlYWRvbmx5IG91dGxldHMgPSBuZXcgRkNvbm5lY3RvclJlZ2lzdHJ5PEZOb2RlT3V0bGV0QmFzZT4oJ091dGxldCcpO1xuXG4gIHB1YmxpYyByZWFkb25seSBpbnN0YW5jZXMgPSBuZXcgRlNpbmdsZVJlZ2lzdHJ5QmFzZSgpO1xuXG4gIHB1YmxpYyBmRHJhZ2dhYmxlOiBGRHJhZ2dhYmxlQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZW1pdE5vZGVDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX25vZGVzUmV2aXNpb24rKztcbiAgICB0aGlzLm5vZGVzQ2hhbmdlcyQubm90aWZ5KCk7XG4gIH1cblxuICBwdWJsaWMgZW1pdENvbm5lY3Rpb25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2Nvbm5lY3Rpb25zUmV2aXNpb24rKztcbiAgICB0aGlzLmNvbm5lY3Rpb25zQ2hhbmdlcyQubm90aWZ5KCk7XG4gIH1cblxuICBwdWJsaWMgYmVnaW5Qcm9ncmVzc2l2ZVJlbmRlcigpOiB2b2lkIHtcbiAgICB0aGlzLl9wZW5kaW5nUHJvZ3Jlc3NpdmVSZW5kZXJDb3VudCsrO1xuICAgIHRoaXMucHJvZ3Jlc3NpdmVSZW5kZXJDaGFuZ2VzJC5ub3RpZnkoKTtcbiAgfVxuXG4gIHB1YmxpYyBlbmRQcm9ncmVzc2l2ZVJlbmRlcigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3BlbmRpbmdQcm9ncmVzc2l2ZVJlbmRlckNvdW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fcGVuZGluZ1Byb2dyZXNzaXZlUmVuZGVyQ291bnQtLTtcbiAgICB0aGlzLnByb2dyZXNzaXZlUmVuZGVyQ2hhbmdlcyQubm90aWZ5KCk7XG4gIH1cblxuICBwdWJsaWMgdHJhbnNmb3JtQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zZm9ybUNoYW5nZXMkLm5vdGlmeSgpO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBJTlNUQU5DRVMgPSB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgTUFHTkVUSUNfTElORVM6IGZJbnN0YW5jZUtleTxGTWFnbmV0aWNMaW5lc0Jhc2U+KCdtYWduZXRpYy1saW5lcycpLFxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgTUFHTkVUSUNfUkVDVFM6IGZJbnN0YW5jZUtleTxGTWFnbmV0aWNSZWN0c0Jhc2U+KCdtYWduZXRpYy1yZWN0cycpLFxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgWk9PTTogZkluc3RhbmNlS2V5PEZab29tQmFzZT4oJ3pvb20tY29udHJvbHMnKSxcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gIEJBQ0tHUk9VTkQ6IGZJbnN0YW5jZUtleTxGQmFja2dyb3VuZEJhc2U+KCdiYWNrZ3JvdW5kJyksXG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICBTRUxFQ1RJT05fQVJFQTogZkluc3RhbmNlS2V5PEZTZWxlY3Rpb25BcmVhQmFzZT4oJ3NlbGVjdGlvbi1hcmVhJyksXG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICBNSU5JTUFQOiBmSW5zdGFuY2VLZXk8Rk1pbmltYXBCYXNlPignbWluaW1hcCcpLFxufSBhcyBjb25zdDtcbiJdfQ==
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Directive, inject, Input, NgZone, TemplateRef, ViewContainerRef, } from '@angular/core';
|
|
2
|
+
import { FComponentsStore } from '../f-storage';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
export class FVirtualFor {
|
|
4
5
|
fVirtualForOf = [];
|
|
@@ -6,20 +7,32 @@ export class FVirtualFor {
|
|
|
6
7
|
_vc = inject(ViewContainerRef);
|
|
7
8
|
_tpl = inject(TemplateRef);
|
|
8
9
|
_zone = inject(NgZone);
|
|
10
|
+
_componentsStore = inject(FComponentsStore, { optional: true });
|
|
9
11
|
_views = [];
|
|
12
|
+
_rafId = null;
|
|
13
|
+
_isProgressiveRenderActive = false;
|
|
10
14
|
ngOnChanges(changes) {
|
|
11
15
|
if (changes['fVirtualForOf']) {
|
|
12
16
|
this._reset();
|
|
13
17
|
this._renderProgressively();
|
|
14
18
|
}
|
|
15
19
|
}
|
|
20
|
+
ngOnDestroy() {
|
|
21
|
+
this._reset();
|
|
22
|
+
}
|
|
16
23
|
_reset() {
|
|
24
|
+
if (this._rafId !== null) {
|
|
25
|
+
cancelAnimationFrame(this._rafId);
|
|
26
|
+
this._rafId = null;
|
|
27
|
+
}
|
|
28
|
+
this._finishProgressiveRender();
|
|
17
29
|
this._vc.clear();
|
|
18
30
|
this._views.length = 0;
|
|
19
31
|
}
|
|
20
32
|
_renderProgressively() {
|
|
21
33
|
const FRAME_BUDGET = 10; // ms
|
|
22
34
|
let index = 0;
|
|
35
|
+
this._startProgressiveRender();
|
|
23
36
|
this._zone.runOutsideAngular(() => {
|
|
24
37
|
const pump = () => {
|
|
25
38
|
const start = performance.now();
|
|
@@ -33,12 +46,29 @@ export class FVirtualFor {
|
|
|
33
46
|
index++;
|
|
34
47
|
}
|
|
35
48
|
if (index < this.fVirtualForOf.length) {
|
|
36
|
-
requestAnimationFrame(pump);
|
|
49
|
+
this._rafId = requestAnimationFrame(pump);
|
|
50
|
+
return;
|
|
37
51
|
}
|
|
52
|
+
this._rafId = null;
|
|
53
|
+
this._finishProgressiveRender();
|
|
38
54
|
};
|
|
39
|
-
requestAnimationFrame(pump);
|
|
55
|
+
this._rafId = requestAnimationFrame(pump);
|
|
40
56
|
});
|
|
41
57
|
}
|
|
58
|
+
_startProgressiveRender() {
|
|
59
|
+
if (this._isProgressiveRenderActive) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
this._isProgressiveRenderActive = true;
|
|
63
|
+
this._componentsStore?.beginProgressiveRender();
|
|
64
|
+
}
|
|
65
|
+
_finishProgressiveRender() {
|
|
66
|
+
if (!this._isProgressiveRenderActive) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
this._isProgressiveRenderActive = false;
|
|
70
|
+
this._componentsStore?.endProgressiveRender();
|
|
71
|
+
}
|
|
42
72
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FVirtualFor, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
43
73
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: FVirtualFor, isStandalone: true, selector: "[fVirtualFor][fVirtualForOf]", inputs: { fVirtualForOf: "fVirtualForOf", fVirtualForTrackBy: "fVirtualForTrackBy" }, usesOnChanges: true, ngImport: i0 });
|
|
44
74
|
}
|
|
@@ -53,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
53
83
|
}], fVirtualForTrackBy: [{
|
|
54
84
|
type: Input
|
|
55
85
|
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi12aXJ0dWFsLWZvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi12aXJ0dWFsL2YtdmlydHVhbC1mb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFJTixXQUFXLEVBQ1gsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFXaEQsTUFBTSxPQUFPLFdBQVc7SUFDYixhQUFhLEdBQWlCLEVBQUUsQ0FBQztJQUNqQyxrQkFBa0IsQ0FBdUM7SUFFakQsR0FBRyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQy9CLElBQUksR0FBRyxNQUFNLENBQWtDLFdBQVcsQ0FBQyxDQUFDO0lBQzVELEtBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkIsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFekUsTUFBTSxHQUEwQyxFQUFFLENBQUM7SUFDbkQsTUFBTSxHQUFrQixJQUFJLENBQUM7SUFDN0IsMEJBQTBCLEdBQUcsS0FBSyxDQUFDO0lBRTNDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzlCLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRU8sTUFBTTtRQUNaLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN6QixvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDbEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDckIsQ0FBQztRQUVELElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDLENBQUMsS0FBSztRQUM5QixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZCxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUUvQixJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUNoQyxNQUFNLElBQUksR0FBRyxHQUFHLEVBQUU7Z0JBQ2hCLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFFaEMsT0FBTyxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLElBQUksV0FBVyxDQUFDLEdBQUcsRUFBRSxHQUFHLEtBQUssR0FBRyxZQUFZLEVBQUUsQ0FBQztvQkFDckYsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFFdkMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO3dCQUNsRCxTQUFTLEVBQUUsSUFBSTt3QkFDZixLQUFLO3FCQUNOLENBQUMsQ0FBQztvQkFFSCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDdkIsS0FBSyxFQUFFLENBQUM7Z0JBQ1YsQ0FBQztnQkFFRCxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUN0QyxJQUFJLENBQUMsTUFBTSxHQUFHLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO29CQUUxQyxPQUFPO2dCQUNULENBQUM7Z0JBRUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7Z0JBQ25CLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1lBQ2xDLENBQUMsQ0FBQztZQUVGLElBQUksQ0FBQyxNQUFNLEdBQUcscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sdUJBQXVCO1FBQzdCLElBQUksSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7WUFDcEMsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsMEJBQTBCLEdBQUcsSUFBSSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1lBQ3JDLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxDQUFDLDBCQUEwQixHQUFHLEtBQUssQ0FBQztRQUN4QyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQztJQUNoRCxDQUFDO3dHQXRGVSxXQUFXOzRGQUFYLFdBQVc7OzRGQUFYLFdBQVc7a0JBSnZCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhCQUE4QjtvQkFDeEMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhCQUVVLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi9mLXN0b3JhZ2UnO1xuXG5pbnRlcmZhY2UgRlZpcnR1YWxDb250ZXh0PFQ+IHtcbiAgJGltcGxpY2l0OiBUO1xuICBpbmRleDogbnVtYmVyO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZlZpcnR1YWxGb3JdW2ZWaXJ0dWFsRm9yT2ZdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRlZpcnR1YWxGb3I8VD4gaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGZWaXJ0dWFsRm9yT2Y6IHJlYWRvbmx5IFRbXSA9IFtdO1xuICBASW5wdXQoKSBmVmlydHVhbEZvclRyYWNrQnk/OiAoaW5kZXg6IG51bWJlciwgaXRlbTogVCkgPT4gdW5rbm93bjtcblxuICBwcml2YXRlIHJlYWRvbmx5IF92YyA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdHBsID0gaW5qZWN0PFRlbXBsYXRlUmVmPEZWaXJ0dWFsQ29udGV4dDxUPj4+KFRlbXBsYXRlUmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfem9uZSA9IGluamVjdChOZ1pvbmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb21wb25lbnRzU3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICBwcml2YXRlIF92aWV3czogRW1iZWRkZWRWaWV3UmVmPEZWaXJ0dWFsQ29udGV4dDxUPj5bXSA9IFtdO1xuICBwcml2YXRlIF9yYWZJZDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX2lzUHJvZ3Jlc3NpdmVSZW5kZXJBY3RpdmUgPSBmYWxzZTtcblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXNbJ2ZWaXJ0dWFsRm9yT2YnXSkge1xuICAgICAgdGhpcy5fcmVzZXQoKTtcbiAgICAgIHRoaXMuX3JlbmRlclByb2dyZXNzaXZlbHkoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9yZXNldCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3JhZklkICE9PSBudWxsKSB7XG4gICAgICBjYW5jZWxBbmltYXRpb25GcmFtZSh0aGlzLl9yYWZJZCk7XG4gICAgICB0aGlzLl9yYWZJZCA9IG51bGw7XG4gICAgfVxuXG4gICAgdGhpcy5fZmluaXNoUHJvZ3Jlc3NpdmVSZW5kZXIoKTtcbiAgICB0aGlzLl92Yy5jbGVhcigpO1xuICAgIHRoaXMuX3ZpZXdzLmxlbmd0aCA9IDA7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJQcm9ncmVzc2l2ZWx5KCk6IHZvaWQge1xuICAgIGNvbnN0IEZSQU1FX0JVREdFVCA9IDEwOyAvLyBtc1xuICAgIGxldCBpbmRleCA9IDA7XG4gICAgdGhpcy5fc3RhcnRQcm9ncmVzc2l2ZVJlbmRlcigpO1xuXG4gICAgdGhpcy5fem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICBjb25zdCBwdW1wID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBzdGFydCA9IHBlcmZvcm1hbmNlLm5vdygpO1xuXG4gICAgICAgIHdoaWxlIChpbmRleCA8IHRoaXMuZlZpcnR1YWxGb3JPZi5sZW5ndGggJiYgcGVyZm9ybWFuY2Uubm93KCkgLSBzdGFydCA8IEZSQU1FX0JVREdFVCkge1xuICAgICAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLmZWaXJ0dWFsRm9yT2ZbaW5kZXhdO1xuXG4gICAgICAgICAgY29uc3QgdmlldyA9IHRoaXMuX3ZjLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLl90cGwsIHtcbiAgICAgICAgICAgICRpbXBsaWNpdDogaXRlbSxcbiAgICAgICAgICAgIGluZGV4LFxuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgdGhpcy5fdmlld3MucHVzaCh2aWV3KTtcbiAgICAgICAgICBpbmRleCsrO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGluZGV4IDwgdGhpcy5mVmlydHVhbEZvck9mLmxlbmd0aCkge1xuICAgICAgICAgIHRoaXMuX3JhZklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHB1bXApO1xuXG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fcmFmSWQgPSBudWxsO1xuICAgICAgICB0aGlzLl9maW5pc2hQcm9ncmVzc2l2ZVJlbmRlcigpO1xuICAgICAgfTtcblxuICAgICAgdGhpcy5fcmFmSWQgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUocHVtcCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9zdGFydFByb2dyZXNzaXZlUmVuZGVyKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9pc1Byb2dyZXNzaXZlUmVuZGVyQWN0aXZlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5faXNQcm9ncmVzc2l2ZVJlbmRlckFjdGl2ZSA9IHRydWU7XG4gICAgdGhpcy5fY29tcG9uZW50c1N0b3JlPy5iZWdpblByb2dyZXNzaXZlUmVuZGVyKCk7XG4gIH1cblxuICBwcml2YXRlIF9maW5pc2hQcm9ncmVzc2l2ZVJlbmRlcigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2lzUHJvZ3Jlc3NpdmVSZW5kZXJBY3RpdmUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9pc1Byb2dyZXNzaXZlUmVuZGVyQWN0aXZlID0gZmFsc2U7XG4gICAgdGhpcy5fY29tcG9uZW50c1N0b3JlPy5lbmRQcm9ncmVzc2l2ZVJlbmRlcigpO1xuICB9XG59XG4iXX0=
|
|
@@ -20,7 +20,7 @@ export declare class FConnectionComponent extends FConnectionBase implements OnI
|
|
|
20
20
|
ngOnChanges(): void;
|
|
21
21
|
ngOnDestroy(): void;
|
|
22
22
|
static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionComponent, never>;
|
|
23
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionComponent, "f-connection", ["fComponent"], { "fId": { "alias": "fConnectionId"; "required": false; "isSignal": true; }; "fOutputId": { "alias": "fOutputId"; "required": false; "isSignal": true; }; "fInputId": { "alias": "fInputId"; "required": false; "isSignal": true; }; "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fSelectionDisabled": { "alias": "fSelectionDisabled"; "required": false; "isSignal": true; }; "fReassignableStart": { "alias": "fReassignableStart"; "required": false; "isSignal": true; }; "fDraggingDisabled": { "alias": "fReassignDisabled"; "required": false; "isSignal": true; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["
|
|
23
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionComponent, "f-connection", ["fComponent"], { "fId": { "alias": "fConnectionId"; "required": false; "isSignal": true; }; "fOutputId": { "alias": "fOutputId"; "required": false; "isSignal": true; }; "fInputId": { "alias": "fInputId"; "required": false; "isSignal": true; }; "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fSelectionDisabled": { "alias": "fSelectionDisabled"; "required": false; "isSignal": true; }; "fReassignableStart": { "alias": "fReassignableStart"; "required": false; "isSignal": true; }; "fDraggingDisabled": { "alias": "fReassignDisabled"; "required": false; "isSignal": true; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["svg[fMarker]", "f-connection-gradient", "f-connection-waypoints", "[fConnectionContent]"], false, never>;
|
|
24
24
|
static ngAcceptInputType_fRadius: unknown;
|
|
25
25
|
static ngAcceptInputType_fOffset: unknown;
|
|
26
26
|
static ngAcceptInputType_fBehavior: unknown;
|
|
@@ -18,7 +18,7 @@ export declare class FConnectionForCreateComponent extends FConnectionBase imple
|
|
|
18
18
|
ngOnChanges(): void;
|
|
19
19
|
ngOnDestroy(): void;
|
|
20
20
|
static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionForCreateComponent, never>;
|
|
21
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionForCreateComponent, "f-connection-for-create", never, { "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["
|
|
21
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionForCreateComponent, "f-connection-for-create", never, { "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["svg[fMarker]", "f-connection-gradient", "[fConnectionContent]"], false, never>;
|
|
22
22
|
static ngAcceptInputType_fRadius: unknown;
|
|
23
23
|
static ngAcceptInputType_fOffset: unknown;
|
|
24
24
|
static ngAcceptInputType_fBehavior: unknown;
|
|
@@ -19,7 +19,7 @@ export declare class FSnapConnectionComponent extends FConnectionBase implements
|
|
|
19
19
|
ngOnChanges(): void;
|
|
20
20
|
ngOnDestroy(): void;
|
|
21
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<FSnapConnectionComponent, never>;
|
|
22
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FSnapConnectionComponent, "f-snap-connection", never, { "fSnapThreshold": { "alias": "fSnapThreshold"; "required": false; }; "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["
|
|
22
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FSnapConnectionComponent, "f-snap-connection", never, { "fSnapThreshold": { "alias": "fSnapThreshold"; "required": false; }; "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["svg[fMarker]", "f-connection-gradient", "[fConnectionContent]"], false, never>;
|
|
23
23
|
static ngAcceptInputType_fSnapThreshold: unknown;
|
|
24
24
|
static ngAcceptInputType_fRadius: unknown;
|
|
25
25
|
static ngAcceptInputType_fOffset: unknown;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FConnectionComponent } from './f-connection';
|
|
2
2
|
import { FConnectionForCreateComponent } from './f-connection-for-create';
|
|
3
3
|
import { FSnapConnectionComponent } from './f-snap-connection';
|
|
4
|
-
import { FConnectionContent,
|
|
5
|
-
export declare const F_CONNECTION_PROVIDERS: (typeof FConnectionMarker | typeof
|
|
6
|
-
export declare const F_CONNECTION_IMPORTS_EXPORTS: (typeof FConnectionContent | typeof FConnectionWaypoints)[];
|
|
4
|
+
import { FConnectionContent, FConnectionDragHandleStart, FConnectionGradient, FConnectionGradientRenderer, FConnectionMarker, FConnectionPath, FConnectionSelection, FConnectionWaypoints } from '../f-connection-v2';
|
|
5
|
+
export declare const F_CONNECTION_PROVIDERS: (typeof FConnectionMarker | typeof FConnectionPath | typeof FConnectionSelection | typeof FConnectionDragHandleStart | typeof FConnectionComponent | typeof FConnectionForCreateComponent | typeof FSnapConnectionComponent)[];
|
|
6
|
+
export declare const F_CONNECTION_IMPORTS_EXPORTS: (typeof FConnectionContent | typeof FConnectionWaypoints | typeof FConnectionGradientRenderer | typeof FConnectionGradient)[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './render';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { FConnectionGradientRendererBase } from './models';
|
|
2
|
+
import { FConnectionGradientBase } from '../../models';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class FConnectionGradientRenderer extends FConnectionGradientRendererBase {
|
|
5
|
+
readonly gradient: import("@angular/core").InputSignal<FConnectionGradientBase>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionGradientRenderer, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionGradientRenderer, "linearGradient[fConnectionGradientRenderer]", never, { "gradient": { "alias": "fConnectionGradientRendererFor"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { InputSignal, OnInit } from '@angular/core';
|
|
2
|
+
import { ILine } from '@foblex/2d';
|
|
3
|
+
import { FConnectionGradientBase } from '../../../models';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare abstract class FConnectionGradientRendererBase implements OnInit {
|
|
6
|
+
private readonly _connection;
|
|
7
|
+
private readonly _hostElement;
|
|
8
|
+
private readonly _injector;
|
|
9
|
+
private readonly _hostAttributes;
|
|
10
|
+
private _startColor?;
|
|
11
|
+
private _endColor?;
|
|
12
|
+
abstract gradient: InputSignal<FConnectionGradientBase>;
|
|
13
|
+
readonly gradientId: import("@angular/core").Signal<string>;
|
|
14
|
+
ngOnInit(): void;
|
|
15
|
+
private _listenColorChanges;
|
|
16
|
+
get stop1Element(): SVGStopElement;
|
|
17
|
+
get stop2Element(): SVGStopElement;
|
|
18
|
+
redraw(line: ILine): void;
|
|
19
|
+
private _updateGradient;
|
|
20
|
+
private _setFromColor;
|
|
21
|
+
private _setToColor;
|
|
22
|
+
private _setHostAttribute;
|
|
23
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionGradientRendererBase, never>;
|
|
24
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<FConnectionGradientRendererBase, never, never, {}, {}, never, never, false, never>;
|
|
25
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './f-connection-gradient-renderer-base';
|
|
@@ -1,16 +1,8 @@
|
|
|
1
|
-
import { ILine } from '@foblex/2d';
|
|
2
1
|
import { FConnectionGradientBase } from './models';
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
3
|
export declare class FConnectionGradient extends FConnectionGradientBase {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
get stop1Element(): SVGStopElement;
|
|
8
|
-
get stop2Element(): SVGStopElement;
|
|
9
|
-
initialize(): void;
|
|
10
|
-
private _updateGradient;
|
|
11
|
-
private _setFromColor;
|
|
12
|
-
private _setToColor;
|
|
13
|
-
redraw(line: ILine): void;
|
|
4
|
+
readonly fStartColor: import("@angular/core").InputSignal<string>;
|
|
5
|
+
readonly fEndColor: import("@angular/core").InputSignal<string>;
|
|
14
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionGradient, never>;
|
|
15
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionGradient, "
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionGradient, "f-connection-gradient", never, { "fStartColor": { "alias": "fStartColor"; "required": true; "isSignal": true; }; "fEndColor": { "alias": "fEndColor"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
16
8
|
}
|
package/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.d.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { InjectionToken } from '@angular/core';
|
|
1
|
+
import { InjectionToken, Signal } from '@angular/core';
|
|
3
2
|
export declare const F_CONNECTION_GRADIENT: InjectionToken<FConnectionGradientBase>;
|
|
4
3
|
export declare abstract class FConnectionGradientBase {
|
|
5
|
-
|
|
6
|
-
abstract
|
|
7
|
-
abstract redraw(line: ILine): void;
|
|
4
|
+
abstract fStartColor: Signal<string>;
|
|
5
|
+
abstract fEndColor: Signal<string>;
|
|
8
6
|
}
|
|
@@ -2,13 +2,14 @@ import { FConnectionPathBase } from './models';
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class FConnectionPath extends FConnectionPathBase {
|
|
4
4
|
private readonly _connection;
|
|
5
|
+
readonly useGradient: import("@angular/core").InputSignal<boolean>;
|
|
6
|
+
readonly linkToGradient: import("@angular/core").Signal<string | null>;
|
|
5
7
|
get fPathId(): string;
|
|
6
|
-
get linkToGradient(): string;
|
|
7
8
|
get attrConnectionId(): string;
|
|
8
9
|
initialize(): void;
|
|
9
10
|
setPath(path: string): void;
|
|
10
11
|
select(): void;
|
|
11
12
|
deselect(): void;
|
|
12
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionPath, never>;
|
|
13
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionPath, "path[f-connection-path]", never, {}, {}, never, never, false, never>;
|
|
14
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionPath, "path[f-connection-path]", never, { "useGradient": { "alias": "useGradient"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
|
|
14
15
|
}
|
|
@@ -13,8 +13,6 @@ declare const MIXIN_BASE: import("../../mixins").Constructor<ISelectable> & impo
|
|
|
13
13
|
export declare abstract class FConnectionBase extends MIXIN_BASE implements ISelectable, ICanChangeVisibility {
|
|
14
14
|
private readonly _fConnectionBuilder;
|
|
15
15
|
abstract fId: Signal<string>;
|
|
16
|
-
readonly fStartColor: import("@angular/core").InputSignal<string>;
|
|
17
|
-
readonly fEndColor: import("@angular/core").InputSignal<string>;
|
|
18
16
|
abstract fOutputId: Signal<string>;
|
|
19
17
|
abstract fInputId: Signal<string>;
|
|
20
18
|
abstract fRadius: number;
|
|
@@ -29,11 +27,12 @@ export declare abstract class FConnectionBase extends MIXIN_BASE implements ISel
|
|
|
29
27
|
abstract fType: EFConnectionType | string;
|
|
30
28
|
readonly fDefs: Signal<ElementRef<SVGDefsElement>>;
|
|
31
29
|
readonly fPath: Signal<import("./connection-path").FConnectionPathBase>;
|
|
32
|
-
readonly fGradient: Signal<import("./connection-gradient").FConnectionGradientBase>;
|
|
33
30
|
readonly fDragHandleStart: Signal<import("./connection-drag-handles").FConnectionDragHandleBase | undefined>;
|
|
34
31
|
readonly fDragHandleEnd: Signal<import("./connection-drag-handles").FConnectionDragHandleBase>;
|
|
35
32
|
readonly fSelection: Signal<import("./connection-selection").FConnectionSelectionBase>;
|
|
36
33
|
readonly fContents: Signal<readonly FConnectionContentBase[]>;
|
|
34
|
+
readonly fGradient: Signal<import("./connection-gradient").FConnectionGradientBase | undefined>;
|
|
35
|
+
private readonly _fGradientRenderer;
|
|
37
36
|
readonly fWaypoints: Signal<import("./connection-waypoints").FConnectionWaypointsBase | undefined>;
|
|
38
37
|
readonly fInputSide: Signal<EFConnectionConnectableSide>;
|
|
39
38
|
private _sourceSide;
|
|
@@ -50,6 +49,10 @@ export declare abstract class FConnectionBase extends MIXIN_BASE implements ISel
|
|
|
50
49
|
markChildrenAsSelected(): void;
|
|
51
50
|
unmarkChildrenAsSelected(): void;
|
|
52
51
|
redraw(): void;
|
|
52
|
+
getResolvedSides(): {
|
|
53
|
+
sourceSide: EFConnectableSide;
|
|
54
|
+
targetSide: EFConnectableSide;
|
|
55
|
+
};
|
|
53
56
|
/**
|
|
54
57
|
* Applies the resolved sides to the connection. Don't call this method directly; it's used internally.
|
|
55
58
|
*
|
|
@@ -58,6 +61,6 @@ export declare abstract class FConnectionBase extends MIXIN_BASE implements ISel
|
|
|
58
61
|
*/
|
|
59
62
|
_applyResolvedSidesToConnection(sourceSide: EFConnectableSide, targetSide: EFConnectableSide): void;
|
|
60
63
|
static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionBase, never>;
|
|
61
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<FConnectionBase, never, never, {
|
|
64
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<FConnectionBase, never, never, {}, {}, ["fContents", "fGradient", "fWaypoints"], never, false, never>;
|
|
62
65
|
}
|
|
63
66
|
export {};
|
|
@@ -6,8 +6,6 @@ export declare abstract class FConnectionComponentsParent {
|
|
|
6
6
|
abstract fId: Signal<string>;
|
|
7
7
|
abstract fOutputId: Signal<string>;
|
|
8
8
|
abstract fInputId: Signal<string>;
|
|
9
|
-
abstract fStartColor: Signal<string>;
|
|
10
|
-
abstract fEndColor: Signal<string>;
|
|
11
9
|
abstract fBehavior: EFConnectionBehavior;
|
|
12
10
|
abstract _applyResolvedSidesToConnection(sourceSide: EFConnectableSide, targetSide: EFConnectableSide): void;
|
|
13
11
|
abstract fInputSide: Signal<EFConnectionConnectableSide>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function createGradientDomIdentifier(componentId: string
|
|
1
|
+
export declare function createGradientDomIdentifier(componentId: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function createGradientDomUrl(componentId: string
|
|
1
|
+
export declare function createGradientDomUrl(componentId: string): string;
|
|
@@ -2,6 +2,7 @@ import { TFConnectionWorkerPendingRequest } from './t-f-connection-worker-pendin
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class FConnectionWorker {
|
|
4
4
|
worker: Worker | null;
|
|
5
|
+
workerUrl: string | null;
|
|
5
6
|
nextRequestId: number;
|
|
6
7
|
isDisabled: boolean;
|
|
7
8
|
readonly pending: Map<number, TFConnectionWorkerPendingRequest>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
type TConnectionWorkerUrlApi = Pick<typeof URL, 'createObjectURL' | 'revokeObjectURL'>;
|
|
2
|
+
type TConnectionWorkerRuntime = {
|
|
3
|
+
blobCtor: typeof Blob;
|
|
4
|
+
workerCtor: typeof Worker;
|
|
5
|
+
urlApi: TConnectionWorkerUrlApi;
|
|
6
|
+
};
|
|
7
|
+
export declare function isConnectionWorkerRuntimeSupported(windowRef: Window | null | undefined): boolean;
|
|
8
|
+
export declare function resolveConnectionWorkerRuntime(windowRef: Window | null | undefined): TConnectionWorkerRuntime | null;
|
|
9
|
+
export declare function createConnectionWorkerUrl(runtime: TConnectionWorkerRuntime): string;
|
|
10
|
+
export declare function revokeConnectionWorkerUrl(workerUrl: string | null | undefined, urlApi?: Pick<typeof URL, 'revokeObjectURL'> | null): void;
|
|
11
|
+
export {};
|
|
@@ -7,6 +7,7 @@ export declare class FFlowComponent extends FFlowBase implements OnInit, AfterCo
|
|
|
7
7
|
private readonly _destroyRef;
|
|
8
8
|
private readonly _mediator;
|
|
9
9
|
private readonly _browser;
|
|
10
|
+
private readonly _componentsStore;
|
|
10
11
|
private readonly _cache;
|
|
11
12
|
private readonly _injector;
|
|
12
13
|
private readonly _worker;
|