ngx-vflow 1.4.1 → 1.5.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/esm2022/lib/vflow/components/connection/connection.component.mjs +3 -3
- package/esm2022/lib/vflow/components/edge/edge.component.mjs +30 -5
- package/esm2022/lib/vflow/components/node/node.component.mjs +4 -2
- package/esm2022/lib/vflow/components/vflow/vflow.component.mjs +15 -3
- package/esm2022/lib/vflow/directives/connection-controller.directive.mjs +55 -37
- package/esm2022/lib/vflow/directives/root-svg-context.directive.mjs +2 -2
- package/esm2022/lib/vflow/directives/selectable.directive.mjs +19 -11
- package/esm2022/lib/vflow/interfaces/connection.interface.mjs +1 -1
- package/esm2022/lib/vflow/interfaces/edge.interface.mjs +1 -1
- package/esm2022/lib/vflow/models/edge.model.mjs +25 -23
- package/esm2022/lib/vflow/public-components/handle/handle.component.mjs +18 -21
- package/esm2022/lib/vflow/public-components/node-toolbar/node-toolbar.component.mjs +1 -1
- package/esm2022/lib/vflow/services/edge-rendering.service.mjs +28 -0
- package/esm2022/lib/vflow/services/flow-settings.service.mjs +2 -1
- package/esm2022/lib/vflow/services/flow-status.service.mjs +13 -1
- package/esm2022/lib/vflow/testing-utils/component-mocks/handle-mock.component.mjs +3 -1
- package/esm2022/lib/vflow/testing-utils/component-mocks/minimap-mock.component.mjs +3 -1
- package/esm2022/lib/vflow/testing-utils/component-mocks/node-toolbar-mock.component.mjs +5 -1
- package/esm2022/lib/vflow/testing-utils/component-mocks/resizable-mock.component.mjs +5 -1
- package/esm2022/lib/vflow/testing-utils/component-mocks/vflow-mock.component.mjs +50 -22
- package/esm2022/lib/vflow/testing-utils/directive-mocks/connection-controller-mock.directive.mjs +14 -2
- package/esm2022/lib/vflow/testing-utils/directive-mocks/drag-handle-mock.directive.mjs +1 -1
- package/esm2022/lib/vflow/testing-utils/directive-mocks/selectable-mock.directive.mjs +1 -1
- package/esm2022/lib/vflow/testing-utils/directive-mocks/template-mock.directive.mjs +1 -1
- package/esm2022/lib/vflow/testing-utils/types.mjs +2 -0
- package/fesm2022/ngx-vflow.mjs +374 -243
- package/fesm2022/ngx-vflow.mjs.map +1 -1
- package/lib/vflow/components/edge/edge.component.d.ts +10 -2
- package/lib/vflow/components/vflow/vflow.component.d.ts +6 -1
- package/lib/vflow/directives/connection-controller.directive.d.ts +5 -2
- package/lib/vflow/directives/selectable.directive.d.ts +4 -1
- package/lib/vflow/interfaces/connection.interface.d.ts +5 -0
- package/lib/vflow/interfaces/edge.interface.d.ts +1 -0
- package/lib/vflow/models/edge.model.d.ts +4 -0
- package/lib/vflow/public-components/handle/handle.component.d.ts +3 -6
- package/lib/vflow/public-components/node-toolbar/node-toolbar.component.d.ts +1 -1
- package/lib/vflow/services/edge-rendering.service.d.ts +10 -0
- package/lib/vflow/services/flow-settings.service.d.ts +1 -0
- package/lib/vflow/services/flow-status.service.d.ts +24 -1
- package/lib/vflow/testing-utils/component-mocks/handle-mock.component.d.ts +5 -2
- package/lib/vflow/testing-utils/component-mocks/minimap-mock.component.d.ts +5 -2
- package/lib/vflow/testing-utils/component-mocks/node-toolbar-mock.component.d.ts +6 -1
- package/lib/vflow/testing-utils/component-mocks/resizable-mock.component.d.ts +6 -1
- package/lib/vflow/testing-utils/component-mocks/vflow-mock.component.d.ts +27 -13
- package/lib/vflow/testing-utils/directive-mocks/connection-controller-mock.directive.d.ts +12 -3
- package/lib/vflow/testing-utils/directive-mocks/drag-handle-mock.directive.d.ts +3 -1
- package/lib/vflow/testing-utils/directive-mocks/selectable-mock.directive.d.ts +3 -1
- package/lib/vflow/testing-utils/directive-mocks/template-mock.directive.d.ts +8 -6
- package/lib/vflow/testing-utils/types.d.ts +1 -0
- package/package.json +1 -1
- package/esm2022/lib/vflow/decorators/run-in-injection-context.decorator.mjs +0 -18
- package/lib/vflow/decorators/run-in-injection-context.decorator.d.ts +0 -5
|
@@ -20,42 +20,24 @@ export class ConnectionControllerDirective {
|
|
|
20
20
|
* @todo add connect event and deprecate onConnect
|
|
21
21
|
*/
|
|
22
22
|
// eslint-disable-next-line @angular-eslint/no-output-on-prefix
|
|
23
|
-
this.onConnect = outputFromObservable(toObservable(this.statusService.status).pipe(filter((status) => status.state === 'connection-end'), map((status) =>
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
const adjusted = adjustDirection({
|
|
30
|
-
source: status.payload.source,
|
|
31
|
-
sourceHandle: status.payload.sourceHandle,
|
|
32
|
-
target: status.payload.target,
|
|
33
|
-
targetHandle: status.payload.targetHandle,
|
|
34
|
-
});
|
|
35
|
-
source = adjusted.source;
|
|
36
|
-
target = adjusted.target;
|
|
37
|
-
sourceHandle = adjusted.sourceHandle;
|
|
38
|
-
targetHandle = adjusted.targetHandle;
|
|
39
|
-
}
|
|
40
|
-
const sourceId = source.node.id;
|
|
41
|
-
const targetId = target.node.id;
|
|
42
|
-
const sourceHandleId = sourceHandle.rawHandle.id;
|
|
43
|
-
const targetHandleId = targetHandle.rawHandle.id;
|
|
44
|
-
return {
|
|
45
|
-
source: sourceId,
|
|
46
|
-
target: targetId,
|
|
47
|
-
sourceHandle: sourceHandleId,
|
|
48
|
-
targetHandle: targetHandleId,
|
|
49
|
-
};
|
|
50
|
-
}), tap(() => this.statusService.setIdleStatus()), filter((connection) => this.flowEntitiesService.connection().validator(connection))));
|
|
23
|
+
this.onConnect = outputFromObservable(toObservable(this.statusService.status).pipe(filter((status) => status.state === 'connection-end'), map((status) => statusToConnection(status, this.isStrictMode())), tap(() => this.statusService.setIdleStatus()), filter((connection) => this.flowEntitiesService.connection().validator(connection))));
|
|
24
|
+
this.onReconnect = outputFromObservable(toObservable(this.statusService.status).pipe(filter((status) => status.state === 'reconnection-end'), map((status) => {
|
|
25
|
+
const connection = statusToConnection(status, this.isStrictMode());
|
|
26
|
+
const oldEdge = status.payload.oldEdge.edge;
|
|
27
|
+
return { connection, oldEdge };
|
|
28
|
+
}), tap(() => this.statusService.setIdleStatus()), filter(({ connection }) => this.flowEntitiesService.connection().validator(connection))));
|
|
51
29
|
this.isStrictMode = computed(() => this.flowEntitiesService.connection().mode === 'strict');
|
|
52
30
|
}
|
|
53
31
|
startConnection(handle) {
|
|
54
32
|
this.statusService.setConnectionStartStatus(handle.parentNode, handle);
|
|
55
33
|
}
|
|
34
|
+
startReconnection(handle, oldEdge) {
|
|
35
|
+
this.statusService.setReconnectionStartStatus(handle.parentNode, handle, oldEdge);
|
|
36
|
+
}
|
|
56
37
|
validateConnection(handle) {
|
|
57
38
|
const status = this.statusService.status();
|
|
58
|
-
if (status.state === 'connection-start') {
|
|
39
|
+
if (status.state === 'connection-start' || status.state === 'reconnection-start') {
|
|
40
|
+
const isReconnection = status.state === 'reconnection-start';
|
|
59
41
|
let source = status.payload.source;
|
|
60
42
|
let target = handle.parentNode;
|
|
61
43
|
let sourceHandle = status.payload.sourceHandle;
|
|
@@ -84,35 +66,71 @@ export class ConnectionControllerDirective {
|
|
|
84
66
|
handle.state.set(valid ? 'valid' : 'invalid');
|
|
85
67
|
// status is about how we draw connection, so we don't need
|
|
86
68
|
// swapped diretion here
|
|
87
|
-
|
|
69
|
+
isReconnection
|
|
70
|
+
? this.statusService.setReconnectionValidationStatus(valid, status.payload.source, handle.parentNode, status.payload.sourceHandle, handle, status.payload.oldEdge)
|
|
71
|
+
: this.statusService.setConnectionValidationStatus(valid, status.payload.source, handle.parentNode, status.payload.sourceHandle, handle);
|
|
88
72
|
}
|
|
89
73
|
}
|
|
90
74
|
resetValidateConnection(targetHandle) {
|
|
91
75
|
targetHandle.state.set('idle');
|
|
92
76
|
// drop back to start status
|
|
93
77
|
const status = this.statusService.status();
|
|
94
|
-
if (status.state === 'connection-validation') {
|
|
95
|
-
|
|
78
|
+
if (status.state === 'connection-validation' || status.state === 'reconnection-validation') {
|
|
79
|
+
const isReconnection = status.state === 'reconnection-validation';
|
|
80
|
+
isReconnection
|
|
81
|
+
? this.statusService.setReconnectionStartStatus(status.payload.source, status.payload.sourceHandle, status.payload.oldEdge)
|
|
82
|
+
: this.statusService.setConnectionStartStatus(status.payload.source, status.payload.sourceHandle);
|
|
96
83
|
}
|
|
97
84
|
}
|
|
98
85
|
endConnection() {
|
|
99
86
|
const status = this.statusService.status();
|
|
100
|
-
if (status.state === 'connection-validation') {
|
|
87
|
+
if (status.state === 'connection-validation' || status.state === 'reconnection-validation') {
|
|
88
|
+
const isReconnection = status.state === 'reconnection-validation';
|
|
101
89
|
const source = status.payload.source;
|
|
102
90
|
const sourceHandle = status.payload.sourceHandle;
|
|
103
91
|
const target = status.payload.target;
|
|
104
92
|
const targetHandle = status.payload.targetHandle;
|
|
105
|
-
|
|
93
|
+
isReconnection
|
|
94
|
+
? this.statusService.setReconnectionEndStatus(source, target, sourceHandle, targetHandle, status.payload.oldEdge)
|
|
95
|
+
: this.statusService.setConnectionEndStatus(source, target, sourceHandle, targetHandle);
|
|
106
96
|
}
|
|
107
97
|
}
|
|
108
98
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ConnectionControllerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
109
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: ConnectionControllerDirective, isStandalone: true, selector: "[onConnect]", outputs: { onConnect: "onConnect" }, ngImport: i0 }); }
|
|
99
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: ConnectionControllerDirective, isStandalone: true, selector: "[onConnect], [onReconnect]", outputs: { onConnect: "onConnect", onReconnect: "onReconnect" }, ngImport: i0 }); }
|
|
110
100
|
}
|
|
111
101
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ConnectionControllerDirective, decorators: [{
|
|
112
102
|
type: Directive,
|
|
113
103
|
args: [{
|
|
114
|
-
selector: '[onConnect]',
|
|
104
|
+
selector: '[onConnect], [onReconnect]',
|
|
115
105
|
standalone: true,
|
|
116
106
|
}]
|
|
117
107
|
}] });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi1jb250cm9sbGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9kaXJlY3RpdmVzL2Nvbm5lY3Rpb24tY29udHJvbGxlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVELE9BQU8sRUFBMkIsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUU3RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFNeEMsTUFBTSxPQUFPLDZCQUE2QjtJQUoxQztRQUtVLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDMUMsd0JBQW1CLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFMUQ7Ozs7Ozs7OztXQVNHO1FBQ0gsK0RBQStEO1FBQy9DLGNBQVMsR0FBRyxvQkFBb0IsQ0FDOUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUMxQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQXFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLLGdCQUFnQixDQUFDLEVBQ3hGLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2IsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxN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QUFFLENBQUM7UUFDM0MsSUFBSSxNQUFNLENBQUMsS0FBSyxLQUFLLHVCQUF1QixFQUFFLENBQUM7WUFDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2xHLENBQUM7SUFDSCxDQUFDO0lBRU0sYUFBYTtRQUNsQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBRTNDLElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyx1QkFBdUIsRUFBRSxDQUFDO1lBQzdDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1lBQ3JDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO1lBQ2pELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1lBQ3JDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO1lBRWpELElBQUksQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDeEYsQ0FBQztJQUNILENBQUM7K0dBbElVLDZCQUE2QjttR0FBN0IsNkJBQTZCOzs0RkFBN0IsNkJBQTZCO2tCQUp6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGNvbXB1dGVkLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbm5lY3Rpb24gfSBmcm9tICcuLi9pbnRlcmZhY2VzL2Nvbm5lY3Rpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IEZsb3dTdGF0dXNDb25uZWN0aW9uRW5kLCBGbG93U3RhdHVzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zsb3ctc3RhdHVzLnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBGbG93RW50aXRpZXNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZmxvdy1lbnRpdGllcy5zZXJ2aWNlJztcbmltcG9ydCB7IEhhbmRsZU1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL2hhbmRsZS5tb2RlbCc7XG5pbXBvcnQgeyBhZGp1c3REaXJlY3Rpb24gfSBmcm9tICcuLi91dGlscy9hZGp1c3QtZGlyZWN0aW9uJztcbmltcG9ydCB7IG91dHB1dEZyb21PYnNlcnZhYmxlLCB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tvbkNvbm5lY3RdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQ29ubmVjdGlvbkNvbnRyb2xsZXJEaXJlY3RpdmUge1xuICBwcml2YXRlIHN0YXR1c1NlcnZpY2UgPSBpbmplY3QoRmxvd1N0YXR1c1NlcnZpY2UpO1xuICBwcml2YXRlIGZsb3dFbnRpdGllc1NlcnZpY2UgPSBpbmplY3QoRmxvd0VudGl0aWVzU2VydmljZSk7XG5cbiAgLyoqXG4gICAqIFRoaXMgZXZlbnQgZmlyZXMgd2hlbiB1c2VyIHRyaWVzIHRvIGNyZWF0ZSBuZXcgRWRnZS5cbiAgICpcbiAgICogYENvbm5lY3Rpb25gIGlzIGFuIGVudGl0eSB0aGF0IGNvbnRhaW5zIGRhdGEgYWJvdXQgc291cmNlIGFuZCB0YXJnZXQgbm9kZXMuXG4gICAqXG4gICAqIEFsc28gaXQncyBpbXBvcnRhbnQgdG8gbm90ZSwgdGhhdCB0aGlzIGV2ZW50IG9ubHkgZmlyZXMgd2hlbiBjb25uZWN0aW9uIGlzIHZhbGlkIGJ5IHZhbGlkYXRvciBmdW5jdGlvbiBpbiBgQ29ubmVjdGlvblNldHRpbmdzYCxcbiAgICogYnkgZGVmYXVsdCB3aXRob3V0IHBhc3NpbmcgdGhlIHZhbGlkYXRvciBldmVyeSBjb25uZWN0aW9uIGNvbmNpZGVyZWQgdmFsaWQuXG4gICAqXG4gICAqIEB0b2RvIGFkZCBjb25uZWN0IGV2ZW50IGFuZCBkZXByZWNhdGUgb25Db25uZWN0XG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXhcbiAgcHVibGljIHJlYWRvbmx5IG9uQ29ubmVjdCA9IG91dHB1dEZyb21PYnNlcnZhYmxlPENvbm5lY3Rpb24+KFxuICAgIHRvT2JzZXJ2YWJsZSh0aGlzLnN0YXR1c1NlcnZpY2Uuc3RhdHVzKS5waXBlKFxuICAgICAgZmlsdGVyKChzdGF0dXMpOiBzdGF0dXMgaXMgRmxvd1N0YXR1c0Nvbm5lY3Rpb25FbmQgPT4gc3RhdHVzLnN0YXRlID09PSAnY29ubmVjdGlvbi1lbmQnKSxcbiAgICAgIG1hcCgoc3RhdHVzKSA9PiB7XG4gICAgICAgIGxldCBzb3VyY2UgPSBzdGF0dXMucGF5bG9hZC5zb3VyY2U7XG4gICAgICAgIGxldCB0YXJnZXQgPSBzdGF0dXMucGF5bG9hZC50YXJnZXQ7XG4gICAgICAgIGxldCBzb3VyY2VIYW5kbGUgPSBzdGF0dXMucGF5bG9hZC5zb3VyY2VIYW5kbGU7XG4gICAgICAgIGxldCB0YXJnZXRIYW5kbGUgPSBzdGF0dXMucGF5bG9hZC50YXJnZXRIYW5kbGU7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNTdHJpY3RNb2RlKCkpIHtcbiAgICAgICAgICBjb25zdCBhZGp1c3RlZCA9IGFkanVzdERpcmVjdGlvbih7XG4gICAgICAgICAgICBzb3VyY2U6IHN0YXR1cy5wYXlsb2FkLnNvdXJjZSxcbiAgICAgICAgICAgIHNvdXJjZUhhbmRsZTogc3RhdHVzLnBheWxvYWQuc291cmNlSGFuZGxlLFxuICAgICAgICAgICAgdGFyZ2V0OiBzdGF0dXMucGF5bG9hZC50YXJnZXQsXG4gICAgICAgICAgICB0YXJnZXRIYW5kbGU6IHN0YXR1cy5wYXlsb2FkLnRhcmdldEhhbmRsZSxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHNvdXJjZSA9IGFkanVzdGVkLnNvdXJjZTtcbiAgICAgICAgICB0YXJnZXQgPSBhZGp1c3RlZC50YXJnZXQ7XG4gICAgICAgICAgc291cmNlSGFuZGxlID0gYWRqdXN0ZWQuc291cmNlSGFuZGxlO1xuICAgICAgICAgIHRhcmdldEhhbmRsZSA9IGFkanVzdGVkLnRhcmdldEhhbmRsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNvdXJjZUlkID0gc291cmNlLm5vZGUuaWQ7XG4gICAgICAgIGNvbnN0IHRhcmdldElkID0gdGFyZ2V0Lm5vZGUuaWQ7XG5cbiAgICAgICAgY29uc3Qgc291cmNlSGFuZGxlSWQgPSBzb3VyY2VIYW5kbGUucmF3SGFuZGxlLmlkO1xuICAgICAgICBjb25zdCB0YXJnZXRIYW5kbGVJZCA9IHRhcmdldEhhbmRsZS5yYXdIYW5kbGUuaWQ7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBzb3VyY2U6IHNvdXJjZUlkLFxuICAgICAgICAgIHRhcmdldDogdGFyZ2V0SWQsXG4gICAgICAgICAgc291cmNlSGFuZGxlOiBzb3VyY2VIYW5kbGVJZCxcbiAgICAgICAgICB0YXJnZXRIYW5kbGU6IHRhcmdldEhhbmRsZUlkLFxuICAgICAgICB9O1xuICAgICAgfSksXG4gICAgICB0YXAoKCkgPT4gdGhpcy5zdGF0dXNTZXJ2aWNlLnNldElkbGVTdGF0dXMoKSksXG4gICAgICBmaWx0ZXIoKGNvbm5lY3Rpb24pID0+IHRoaXMuZmxvd0VudGl0aWVzU2VydmljZS5jb25uZWN0aW9uKCkudmFsaWRhdG9yKGNvbm5lY3Rpb24pKSxcbiAgICApLFxuICApO1xuXG4gIHByb3RlY3RlZCBpc1N0cmljdE1vZGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmZsb3dFbnRpdGllc1NlcnZpY2UuY29ubmVjdGlvbigpLm1vZGUgPT09ICdzdHJpY3QnKTtcblxuICBwdWJsaWMgc3RhcnRDb25uZWN0aW9uKGhhbmRsZTogSGFuZGxlTW9kZWwpIHtcbiAgICB0aGlzLnN0YXR1c1NlcnZpY2Uuc2V0Q29ubmVjdGlvblN0YXJ0U3RhdHVzKGhhbmRsZS5wYXJlbnROb2RlLCBoYW5kbGUpO1xuICB9XG5cbiAgcHVibGljIHZhbGlkYXRlQ29ubmVjdGlvbihoYW5kbGU6IEhhbmRsZU1vZGVsKSB7XG4gICAgY29uc3Qgc3RhdHVzID0gdGhpcy5zdGF0dXNTZXJ2aWNlLnN0YXR1cygpO1xuXG4gICAgaWYgKHN0YXR1cy5zdGF0ZSA9PT0gJ2Nvbm5lY3Rpb24tc3RhcnQnKSB7XG4gICAgICBsZXQgc291cmNlID0gc3RhdHVzLnBheWxvYWQuc291cmNlO1xuICAgICAgbGV0IHRhcmdldCA9IGhhbmRsZS5wYXJlbnROb2RlO1xuICAgICAgbGV0IHNvdXJjZUhhbmRsZSA9IHN0YXR1cy5wYXlsb2FkLnNvdXJjZUhhbmRsZTtcbiAgICAgIGxldCB0YXJnZXRIYW5kbGUgPSBoYW5kbGU7XG5cbiAgICAgIGlmICh0aGlzLmlzU3RyaWN0TW9kZSgpKSB7XG4gICAgICAgIC8vIHN3YXAgZGlyZWN0aW9uIChpZiBuZWVkZWQpIGFjY29yZGluZyB0byBhY3R1YWwgc291cmNlIGFuZCB0YXJnZXQgb2Ygc3RyaWN0IG1vZGVcbiAgICAgICAgY29uc3QgYWRqdXN0ZWQgPSBhZGp1c3REaXJlY3Rpb24oe1xuICAgICAgICAgIHNvdXJjZTogc3RhdHVzLnBheWxvYWQuc291cmNlLFxuICAgICAgICAgIHNvdXJjZUhhbmRsZTogc3RhdHVzLnBheWxvYWQuc291cmNlSGFuZGxlLFxuICAgICAgICAgIHRhcmdldDogaGFuZGxlLnBhcmVudE5vZGUsXG4gICAgICAgICAgdGFyZ2V0SGFuZGxlOiBoYW5kbGUsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHNvdXJjZSA9IGFkanVzdGVkLnNvdXJjZTtcbiAgICAgICAgdGFyZ2V0ID0gYWRqdXN0ZWQudGFyZ2V0O1xuICAgICAgICBzb3VyY2VIYW5kbGUgPSBhZGp1c3RlZC5zb3VyY2VIYW5kbGU7XG4gICAgICAgIHRhcmdldEhhbmRsZSA9IGFkanVzdGVkLnRhcmdldEhhbmRsZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdmFsaWQgPSB0aGlzLmZsb3dFbnRpdGllc1NlcnZpY2UuY29ubmVjdGlvbigpLnZhbGlkYXRvcih7XG4gICAgICAgIHNvdXJjZTogc291cmNlLm5vZGUuaWQsXG4gICAgICAgIHRhcmdldDogdGFyZ2V0Lm5vZGUuaWQsXG4gICAgICAgIHNvdXJjZUhhbmRsZTogc291cmNlSGFuZGxlLnJhd0hhbmRsZS5pZCxcbiAgICAgICAgdGFyZ2V0SGFuZGxlOiB0YXJnZXRIYW5kbGUucmF3SGFuZGxlLmlkLFxuICAgICAgfSk7XG5cbiAgICAgIC8vIFRPRE86IGNoZWNrIGhvdyByZWFjdCBmbG93IGhhbmRsZXMgaGlnaGxpZ2h0IG9mIGhhbmRsZVxuICAgICAgLy8gaWYgZGlyZWN0aW9uIGNoYW5nZXNcbiAgICAgIGhhbmRsZS5zdGF0ZS5zZXQodmFsaWQgPyAndmFsaWQnIDogJ2ludmFsaWQnKTtcblxuICAgICAgLy8gc3RhdHVzIGlzIGFib3V0IGhvdyB3ZSBkcmF3IGNvbm5lY3Rpb24sIHNvIHdlIGRvbid0IG5lZWRcbiAgICAgIC8vIHN3YXBwZWQgZGlyZXRpb24gaGVyZVxuICAgICAgdGhpcy5zdGF0dXNTZXJ2aWNlLnNldENvbm5lY3Rpb25WYWxpZGF0aW9uU3RhdHVzKFxuICAgICAgICB2YWxpZCxcbiAgICAgICAgc3RhdHVzLnBheWxvYWQuc291cmNlLFxuICAgICAgICBoYW5kbGUucGFyZW50Tm9kZSxcbiAgICAgICAgc3RhdHVzLnBheWxvYWQuc291cmNlSGFuZGxlLFxuICAgICAgICBoYW5kbGUsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByZXNldFZhbGlkYXRlQ29ubmVjdGlvbih0YXJnZXRIYW5kbGU6IEhhbmRsZU1vZGVsKSB7XG4gICAgdGFyZ2V0SGFuZGxlLnN0YXRlLnNldCgnaWRsZScpO1xuXG4gICAgLy8gZHJvcCBiYWNrIHRvIHN0YXJ0IHN0YXR1c1xuICAgIGNvbnN0IHN0YXR1cyA9IHRoaXMuc3RhdHVzU2VydmljZS5zdGF0dXMoKTtcbiAgICBpZiAoc3RhdHVzLnN0YXRlID09PSAnY29ubmVjdGlvbi12YWxpZGF0aW9uJykge1xuICAgICAgdGhpcy5zdGF0dXNTZXJ2aWNlLnNldENvbm5lY3Rpb25TdGFydFN0YXR1cyhzdGF0dXMucGF5bG9hZC5zb3VyY2UsIHN0YXR1cy5wYXlsb2FkLnNvdXJjZUhhbmRsZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGVuZENvbm5lY3Rpb24oKSB7XG4gICAgY29uc3Qgc3RhdHVzID0gdGhpcy5zdGF0dXNTZXJ2aWNlLnN0YXR1cygpO1xuXG4gICAgaWYgKHN0YXR1cy5zdGF0ZSA9PT0gJ2Nvbm5lY3Rpb24tdmFsaWRhdGlvbicpIHtcbiAgICAgIGNvbnN0IHNvdXJjZSA9IHN0YXR1cy5wYXlsb2FkLnNvdXJjZTtcbiAgICAgIGNvbnN0IHNvdXJjZUhhbmRsZSA9IHN0YXR1cy5wYXlsb2FkLnNvdXJjZUhhbmRsZTtcbiAgICAgIGNvbnN0IHRhcmdldCA9IHN0YXR1cy5wYXlsb2FkLnRhcmdldDtcbiAgICAgIGNvbnN0IHRhcmdldEhhbmRsZSA9IHN0YXR1cy5wYXlsb2FkLnRhcmdldEhhbmRsZTtcblxuICAgICAgdGhpcy5zdGF0dXNTZXJ2aWNlLnNldENvbm5lY3Rpb25FbmRTdGF0dXMoc291cmNlLCB0YXJnZXQsIHNvdXJjZUhhbmRsZSwgdGFyZ2V0SGFuZGxlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
108
|
+
function statusToConnection(status, isStrictMode) {
|
|
109
|
+
let source = status.payload.source;
|
|
110
|
+
let target = status.payload.target;
|
|
111
|
+
let sourceHandle = status.payload.sourceHandle;
|
|
112
|
+
let targetHandle = status.payload.targetHandle;
|
|
113
|
+
if (isStrictMode) {
|
|
114
|
+
const adjusted = adjustDirection({
|
|
115
|
+
source: status.payload.source,
|
|
116
|
+
sourceHandle: status.payload.sourceHandle,
|
|
117
|
+
target: status.payload.target,
|
|
118
|
+
targetHandle: status.payload.targetHandle,
|
|
119
|
+
});
|
|
120
|
+
source = adjusted.source;
|
|
121
|
+
target = adjusted.target;
|
|
122
|
+
sourceHandle = adjusted.sourceHandle;
|
|
123
|
+
targetHandle = adjusted.targetHandle;
|
|
124
|
+
}
|
|
125
|
+
const sourceId = source.node.id;
|
|
126
|
+
const targetId = target.node.id;
|
|
127
|
+
const sourceHandleId = sourceHandle.rawHandle.id;
|
|
128
|
+
const targetHandleId = targetHandle.rawHandle.id;
|
|
129
|
+
return {
|
|
130
|
+
source: sourceId,
|
|
131
|
+
target: targetId,
|
|
132
|
+
sourceHandle: sourceHandleId,
|
|
133
|
+
targetHandle: targetHandleId,
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi1jb250cm9sbGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9kaXJlY3RpdmVzL2Nvbm5lY3Rpb24tY29udHJvbGxlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVELE9BQU8sRUFBc0QsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUV4SCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFPeEMsTUFBTSxPQUFPLDZCQUE2QjtJQUoxQztRQUtVLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDMUMsd0JBQW1CLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFMUQ7Ozs7Ozs7OztXQVNHO1FBQ0gsK0RBQStEO1FBQy9DLGNBQVMsR0FBRyxvQkFBb0IsQ0FDOUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUMxQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQXFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLLGdCQUFnQixDQUFDLEVBQ3hGLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZ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LE1BQU0sQ0FBQztRQUN6QixNQUFNLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUN6QixZQUFZLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQztRQUNyQyxZQUFZLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQztJQUN2QyxDQUFDO0lBRUQsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDaEMsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7SUFFaEMsTUFBTSxjQUFjLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7SUFDakQsTUFBTSxjQUFjLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7SUFFakQsT0FBTztRQUNMLE1BQU0sRUFBRSxRQUFRO1FBQ2hCLE1BQU0sRUFBRSxRQUFRO1FBQ2hCLFlBQVksRUFBRSxjQUFjO1FBQzVCLFlBQVksRUFBRSxjQUFjO0tBQzdCLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBjb21wdXRlZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25uZWN0aW9uLCBSZWNvbm5lY3Rpb25FdmVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMvY29ubmVjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmxvd1N0YXR1c0Nvbm5lY3Rpb25FbmQsIEZsb3dTdGF0dXNSZWNvbm5lY3Rpb25FbmQsIEZsb3dTdGF0dXNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZmxvdy1zdGF0dXMuc2VydmljZSc7XG5cbmltcG9ydCB7IEZsb3dFbnRpdGllc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9mbG93LWVudGl0aWVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgSGFuZGxlTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvaGFuZGxlLm1vZGVsJztcbmltcG9ydCB7IGFkanVzdERpcmVjdGlvbiB9IGZyb20gJy4uL3V0aWxzL2FkanVzdC1kaXJlY3Rpb24nO1xuaW1wb3J0IHsgb3V0cHV0RnJvbU9ic2VydmFibGUsIHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IGZpbHRlciwgbWFwLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVkZ2VNb2RlbCB9IGZyb20gJy4uL21vZGVscy9lZGdlLm1vZGVsJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW29uQ29ubmVjdF0sIFtvblJlY29ubmVjdF0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBDb25uZWN0aW9uQ29udHJvbGxlckRpcmVjdGl2ZSB7XG4gIHByaXZhdGUgc3RhdHVzU2VydmljZSA9IGluamVjdChGbG93U3RhdHVzU2VydmljZSk7XG4gIHByaXZhdGUgZmxvd0VudGl0aWVzU2VydmljZSA9IGluamVjdChGbG93RW50aXRpZXNTZXJ2aWNlKTtcblxuICAvKipcbiAgICogVGhpcyBldmVudCBmaXJlcyB3aGVuIHVzZXIgdHJpZXMgdG8gY3JlYXRlIG5ldyBFZGdlLlxuICAgKlxuICAgKiBgQ29ubmVjdGlvbmAgaXMgYW4gZW50aXR5IHRoYXQgY29udGFpbnMgZGF0YSBhYm91dCBzb3VyY2UgYW5kIHRhcmdldCBub2Rlcy5cbiAgICpcbiAgICogQWxzbyBpdCdzIGltcG9ydGFudCB0byBub3RlLCB0aGF0IHRoaXMgZXZlbnQgb25seSBmaXJlcyB3aGVuIGNvbm5lY3Rpb24gaXMgdmFsaWQgYnkgdmFsaWRhdG9yIGZ1bmN0aW9uIGluIGBDb25uZWN0aW9uU2V0dGluZ3NgLFxuICAgKiBieSBkZWZhdWx0IHdpdGhvdXQgcGFzc2luZyB0aGUgdmFsaWRhdG9yIGV2ZXJ5IGNvbm5lY3Rpb24gY29uY2lkZXJlZCB2YWxpZC5cbiAgICpcbiAgICogQHRvZG8gYWRkIGNvbm5lY3QgZXZlbnQgYW5kIGRlcHJlY2F0ZSBvbkNvbm5lY3RcbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICBwdWJsaWMgcmVhZG9ubHkgb25Db25uZWN0ID0gb3V0cHV0RnJvbU9ic2VydmFibGU8Q29ubmVjdGlvbj4oXG4gICAgdG9PYnNlcnZhYmxlKHRoaXMuc3RhdHVzU2VydmljZS5zdGF0dXMpLnBpcGUoXG4gICAgICBmaWx0ZXIoKHN0YXR1cyk6IHN0YXR1cyBpcyBGbG93U3RhdHVzQ29ubmVjdGlvbkVuZCA9PiBzdGF0dXMuc3RhdGUgPT09ICdjb25uZWN0aW9uLWVuZCcpLFxuICAgICAgbWFwKChzdGF0dXMpID0+IHN0YXR1c1RvQ29ubmVjdGlvbihzdGF0dXMsIHRoaXMuaXNTdHJpY3RNb2RlKCkpKSxcbiAgICAgIHRhcCgoKSA9PiB0aGlzLnN0YXR1c1NlcnZpY2Uuc2V0SWRsZVN0YXR1cygpKSxcbiAgICAgIGZpbHRlcigoY29ubmVjdGlvbikgPT4gdGhpcy5mbG93RW50aXRpZXNTZXJ2aWNlLmNvbm5lY3Rpb24oKS52YWxpZGF0b3IoY29ubmVjdGlvbikpLFxuICAgICksXG4gICk7XG5cbiAgcHVibGljIHJlYWRvbmx5IG9uUmVjb25uZWN0ID0gb3V0cHV0RnJvbU9ic2VydmFibGU8UmVjb25uZWN0aW9uRXZlbnQ+KFxuICAgIHRvT2JzZXJ2YWJsZSh0aGlzLnN0YXR1c1NlcnZpY2Uuc3RhdHVzKS5waXBlKFxuICAgICAgZmlsdGVyKChzdGF0dXMpOiBzdGF0dXMgaXMgRmxvd1N0YXR1c1JlY29ubmVjdGlvbkVuZCA9PiBzdGF0dXMuc3RhdGUgPT09ICdyZWNvbm5lY3Rpb24tZW5kJyksXG4gICAgICBtYXAoKHN0YXR1cykgPT4ge1xuICAgICAgICBjb25zdCBjb25uZWN0aW9uID0gc3RhdHVzVG9Db25uZWN0aW9uKHN0YXR1cywgdGhpcy5pc1N0cmljdE1vZGUoKSk7XG4gICAgICAgIGNvbnN0IG9sZEVkZ2UgPSBzdGF0dXMucGF5bG9hZC5vbGRFZGdlLmVkZ2U7XG5cbiAgICAgICAgcmV0dXJuIHsgY29ubmVjdGlvbiwgb2xkRWRnZSB9O1xuICAgICAgfSksXG4gICAgICB0YXAoKCkgPT4gdGhpcy5zdGF0dXNTZXJ2aWNlLnNldElkbGVTdGF0dXMoKSksXG4gICAgICBmaWx0ZXIoKHsgY29ubmVjdGlvbiB9KSA9PiB0aGlzLmZsb3dFbnRpdGllc1NlcnZpY2UuY29ubmVjdGlvbigpLnZhbGlkYXRvcihjb25uZWN0aW9uKSksXG4gICAgKSxcbiAgKTtcblxuICBwcm90ZWN0ZWQgaXNTdHJpY3RNb2RlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5mbG93RW50aXRpZXNTZXJ2aWNlLmNvbm5lY3Rpb24oKS5tb2RlID09PSAnc3RyaWN0Jyk7XG5cbiAgcHVibGljIHN0YXJ0Q29ubmVjdGlvbihoYW5kbGU6IEhhbmRsZU1vZGVsKSB7XG4gICAgdGhpcy5zdGF0dXNTZXJ2aWNlLnNldENvbm5lY3Rpb25TdGFydFN0YXR1cyhoYW5kbGUucGFyZW50Tm9kZSwgaGFuZGxlKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGFydFJlY29ubmVjdGlvbihoYW5kbGU6IEhhbmRsZU1vZGVsLCBvbGRFZGdlOiBFZGdlTW9kZWwpIHtcbiAgICB0aGlzLnN0YXR1c1NlcnZpY2Uuc2V0UmVjb25uZWN0aW9uU3RhcnRTdGF0dXMoaGFuZGxlLnBhcmVudE5vZGUsIGhhbmRsZSwgb2xkRWRnZSk7XG4gIH1cblxuICBwdWJsaWMgdmFsaWRhdGVDb25uZWN0aW9uKGhhbmRsZTogSGFuZGxlTW9kZWwpIHtcbiAgICBjb25zdCBzdGF0dXMgPSB0aGlzLnN0YXR1c1NlcnZpY2Uuc3RhdHVzKCk7XG5cbiAgICBpZiAoc3RhdHVzLnN0YXRlID09PSAnY29ubmVjdGlvbi1zdGFydCcgfHwgc3RhdHVzLnN0YXRlID09PSAncmVjb25uZWN0aW9uLXN0YXJ0Jykge1xuICAgICAgY29uc3QgaXNSZWNvbm5lY3Rpb24gPSBzdGF0dXMuc3RhdGUgPT09ICdyZWNvbm5lY3Rpb24tc3RhcnQnO1xuXG4gICAgICBsZXQgc291cmNlID0gc3RhdHVzLnBheWxvYWQuc291cmNlO1xuICAgICAgbGV0IHRhcmdldCA9IGhhbmRsZS5wYXJlbnROb2RlO1xuICAgICAgbGV0IHNvdXJjZUhhbmRsZSA9IHN0YXR1cy5wYXlsb2FkLnNvdXJjZUhhbmRsZTtcbiAgICAgIGxldCB0YXJnZXRIYW5kbGUgPSBoYW5kbGU7XG5cbiAgICAgIGlmICh0aGlzLmlzU3RyaWN0TW9kZSgpKSB7XG4gICAgICAgIC8vIHN3YXAgZGlyZWN0aW9uIChpZiBuZWVkZWQpIGFjY29yZGluZyB0byBhY3R1YWwgc291cmNlIGFuZCB0YXJnZXQgb2Ygc3RyaWN0IG1vZGVcbiAgICAgICAgY29uc3QgYWRqdXN0ZWQgPSBhZGp1c3REaXJlY3Rpb24oe1xuICAgICAgICAgIHNvdXJjZTogc3RhdHVzLnBheWxvYWQuc291cmNlLFxuICAgICAgICAgIHNvdXJjZUhhbmRsZTogc3RhdHVzLnBheWxvYWQuc291cmNlSGFuZGxlLFxuICAgICAgICAgIHRhcmdldDogaGFuZGxlLnBhcmVudE5vZGUsXG4gICAgICAgICAgdGFyZ2V0SGFuZGxlOiBoYW5kbGUsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHNvdXJjZSA9IGFkanVzdGVkLnNvdXJjZTtcbiAgICAgICAgdGFyZ2V0ID0gYWRqdXN0ZWQudGFyZ2V0O1xuICAgICAgICBzb3VyY2VIYW5kbGUgPSBhZGp1c3RlZC5zb3VyY2VIYW5kbGU7XG4gICAgICAgIHRhcmdldEhhbmRsZSA9IGFkanVzdGVkLnRhcmdldEhhbmRsZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdmFsaWQgPSB0aGlzLmZsb3dFbnRpdGllc1NlcnZpY2UuY29ubmVjdGlvbigpLnZhbGlkYXRvcih7XG4gICAgICAgIHNvdXJjZTogc291cmNlLm5vZGUuaWQsXG4gICAgICAgIHRhcmdldDogdGFyZ2V0Lm5vZGUuaWQsXG4gICAgICAgIHNvdXJjZUhhbmRsZTogc291cmNlSGFuZGxlLnJhd0hhbmRsZS5pZCxcbiAgICAgICAgdGFyZ2V0SGFuZGxlOiB0YXJnZXRIYW5kbGUucmF3SGFuZGxlLmlkLFxuICAgICAgfSk7XG5cbiAgICAgIC8vIFRPRE86IGNoZWNrIGhvdyByZWFjdCBmbG93IGhhbmRsZXMgaGlnaGxpZ2h0IG9mIGhhbmRsZVxuICAgICAgLy8gaWYgZGlyZWN0aW9uIGNoYW5nZXNcbiAgICAgIGhhbmRsZS5zdGF0ZS5zZXQodmFsaWQgPyAndmFsaWQnIDogJ2ludmFsaWQnKTtcblxuICAgICAgLy8gc3RhdHVzIGlzIGFib3V0IGhvdyB3ZSBkcmF3IGNvbm5lY3Rpb24sIHNvIHdlIGRvbid0IG5lZWRcbiAgICAgIC8vIHN3YXBwZWQgZGlyZXRpb24gaGVyZVxuICAgICAgaXNSZWNvbm5lY3Rpb25cbiAgICAgICAgPyB0aGlzLnN0YXR1c1NlcnZpY2Uuc2V0UmVjb25uZWN0aW9uVmFsaWRhdGlvblN0YXR1cyhcbiAgICAgICAgICAgIHZhbGlkLFxuICAgICAgICAgICAgc3RhdHVzLnBheWxvYWQuc291cmNlLFxuICAgICAgICAgICAgaGFuZGxlLnBhcmVudE5vZGUsXG4gICAgICAgICAgICBzdGF0dXMucGF5bG9hZC5zb3VyY2VIYW5kbGUsXG4gICAgICAgICAgICBoYW5kbGUsXG4gICAgICAgICAgICBzdGF0dXMucGF5bG9hZC5vbGRFZGdlLFxuICAgICAgICAgIClcbiAgICAgICAgOiB0aGlzLnN0YXR1c1NlcnZpY2Uuc2V0Q29ubmVjdGlvblZhbGlkYXRpb25TdGF0dXMoXG4gICAgICAgICAgICB2YWxpZCxcbiAgICAgICAgICAgIHN0YXR1cy5wYXlsb2FkLnNvdXJjZSxcbiAgICAgICAgICAgIGhhbmRsZS5wYXJlbnROb2RlLFxuICAgICAgICAgICAgc3RhdHVzLnBheWxvYWQuc291cmNlSGFuZGxlLFxuICAgICAgICAgICAgaGFuZGxlLFxuICAgICAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHJlc2V0VmFsaWRhdGVDb25uZWN0aW9uKHRhcmdldEhhbmRsZTogSGFuZGxlTW9kZWwpIHtcbiAgICB0YXJnZXRIYW5kbGUuc3RhdGUuc2V0KCdpZGxlJyk7XG5cbiAgICAvLyBkcm9wIGJhY2sgdG8gc3RhcnQgc3RhdHVzXG4gICAgY29uc3Qgc3RhdHVzID0gdGhpcy5zdGF0dXNTZXJ2aWNlLnN0YXR1cygpO1xuICAgIGlmIChzdGF0dXMuc3RhdGUgPT09ICdjb25uZWN0aW9uLXZhbGlkYXRpb24nIHx8IHN0YXR1cy5zdGF0ZSA9PT0gJ3JlY29ubmVjdGlvbi12YWxpZGF0aW9uJykge1xuICAgICAgY29uc3QgaXNSZWNvbm5lY3Rpb24gPSBzdGF0dXMuc3RhdGUgPT09ICdyZWNvbm5lY3Rpb24tdmFsaWRhdGlvbic7XG5cbiAgICAgIGlzUmVjb25uZWN0aW9uXG4gICAgICAgID8gdGhpcy5zdGF0dXNTZXJ2aWNlLnNldFJlY29ubmVjdGlvblN0YXJ0U3RhdHVzKFxuICAgICAgICAgICAgc3RhdHVzLnBheWxvYWQuc291cmNlLFxuICAgICAgICAgICAgc3RhdHVzLnBheWxvYWQuc291cmNlSGFuZGxlLFxuICAgICAgICAgICAgc3RhdHVzLnBheWxvYWQub2xkRWRnZSxcbiAgICAgICAgICApXG4gICAgICAgIDogdGhpcy5zdGF0dXNTZXJ2aWNlLnNldENvbm5lY3Rpb25TdGFydFN0YXR1cyhzdGF0dXMucGF5bG9hZC5zb3VyY2UsIHN0YXR1cy5wYXlsb2FkLnNvdXJjZUhhbmRsZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGVuZENvbm5lY3Rpb24oKSB7XG4gICAgY29uc3Qgc3RhdHVzID0gdGhpcy5zdGF0dXNTZXJ2aWNlLnN0YXR1cygpO1xuXG4gICAgaWYgKHN0YXR1cy5zdGF0ZSA9PT0gJ2Nvbm5lY3Rpb24tdmFsaWRhdGlvbicgfHwgc3RhdHVzLnN0YXRlID09PSAncmVjb25uZWN0aW9uLXZhbGlkYXRpb24nKSB7XG4gICAgICBjb25zdCBpc1JlY29ubmVjdGlvbiA9IHN0YXR1cy5zdGF0ZSA9PT0gJ3JlY29ubmVjdGlvbi12YWxpZGF0aW9uJztcblxuICAgICAgY29uc3Qgc291cmNlID0gc3RhdHVzLnBheWxvYWQuc291cmNlO1xuICAgICAgY29uc3Qgc291cmNlSGFuZGxlID0gc3RhdHVzLnBheWxvYWQuc291cmNlSGFuZGxlO1xuICAgICAgY29uc3QgdGFyZ2V0ID0gc3RhdHVzLnBheWxvYWQudGFyZ2V0O1xuICAgICAgY29uc3QgdGFyZ2V0SGFuZGxlID0gc3RhdHVzLnBheWxvYWQudGFyZ2V0SGFuZGxlO1xuXG4gICAgICBpc1JlY29ubmVjdGlvblxuICAgICAgICA/IHRoaXMuc3RhdHVzU2VydmljZS5zZXRSZWNvbm5lY3Rpb25FbmRTdGF0dXMoXG4gICAgICAgICAgICBzb3VyY2UsXG4gICAgICAgICAgICB0YXJnZXQsXG4gICAgICAgICAgICBzb3VyY2VIYW5kbGUsXG4gICAgICAgICAgICB0YXJnZXRIYW5kbGUsXG4gICAgICAgICAgICBzdGF0dXMucGF5bG9hZC5vbGRFZGdlLFxuICAgICAgICAgIClcbiAgICAgICAgOiB0aGlzLnN0YXR1c1NlcnZpY2Uuc2V0Q29ubmVjdGlvbkVuZFN0YXR1cyhzb3VyY2UsIHRhcmdldCwgc291cmNlSGFuZGxlLCB0YXJnZXRIYW5kbGUpO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBzdGF0dXNUb0Nvbm5lY3Rpb24oXG4gIHN0YXR1czogRmxvd1N0YXR1c0Nvbm5lY3Rpb25FbmQgfCBGbG93U3RhdHVzUmVjb25uZWN0aW9uRW5kLFxuICBpc1N0cmljdE1vZGU6IGJvb2xlYW4sXG4pOiBDb25uZWN0aW9uIHtcbiAgbGV0IHNvdXJjZSA9IHN0YXR1cy5wYXlsb2FkLnNvdXJjZTtcbiAgbGV0IHRhcmdldCA9IHN0YXR1cy5wYXlsb2FkLnRhcmdldDtcbiAgbGV0IHNvdXJjZUhhbmRsZSA9IHN0YXR1cy5wYXlsb2FkLnNvdXJjZUhhbmRsZTtcbiAgbGV0IHRhcmdldEhhbmRsZSA9IHN0YXR1cy5wYXlsb2FkLnRhcmdldEhhbmRsZTtcblxuICBpZiAoaXNTdHJpY3RNb2RlKSB7XG4gICAgY29uc3QgYWRqdXN0ZWQgPSBhZGp1c3REaXJlY3Rpb24oe1xuICAgICAgc291cmNlOiBzdGF0dXMucGF5bG9hZC5zb3VyY2UsXG4gICAgICBzb3VyY2VIYW5kbGU6IHN0YXR1cy5wYXlsb2FkLnNvdXJjZUhhbmRsZSxcbiAgICAgIHRhcmdldDogc3RhdHVzLnBheWxvYWQudGFyZ2V0LFxuICAgICAgdGFyZ2V0SGFuZGxlOiBzdGF0dXMucGF5bG9hZC50YXJnZXRIYW5kbGUsXG4gICAgfSk7XG5cbiAgICBzb3VyY2UgPSBhZGp1c3RlZC5zb3VyY2U7XG4gICAgdGFyZ2V0ID0gYWRqdXN0ZWQudGFyZ2V0O1xuICAgIHNvdXJjZUhhbmRsZSA9IGFkanVzdGVkLnNvdXJjZUhhbmRsZTtcbiAgICB0YXJnZXRIYW5kbGUgPSBhZGp1c3RlZC50YXJnZXRIYW5kbGU7XG4gIH1cblxuICBjb25zdCBzb3VyY2VJZCA9IHNvdXJjZS5ub2RlLmlkO1xuICBjb25zdCB0YXJnZXRJZCA9IHRhcmdldC5ub2RlLmlkO1xuXG4gIGNvbnN0IHNvdXJjZUhhbmRsZUlkID0gc291cmNlSGFuZGxlLnJhd0hhbmRsZS5pZDtcbiAgY29uc3QgdGFyZ2V0SGFuZGxlSWQgPSB0YXJnZXRIYW5kbGUucmF3SGFuZGxlLmlkO1xuXG4gIHJldHVybiB7XG4gICAgc291cmNlOiBzb3VyY2VJZCxcbiAgICB0YXJnZXQ6IHRhcmdldElkLFxuICAgIHNvdXJjZUhhbmRsZTogc291cmNlSGFuZGxlSWQsXG4gICAgdGFyZ2V0SGFuZGxlOiB0YXJnZXRIYW5kbGVJZCxcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -9,7 +9,7 @@ export class RootSvgContextDirective {
|
|
|
9
9
|
// TODO: check for multiple instances on page
|
|
10
10
|
resetConnection() {
|
|
11
11
|
const status = this.flowStatusService.status();
|
|
12
|
-
if (status.state === 'connection-start') {
|
|
12
|
+
if (status.state === 'connection-start' || status.state === 'reconnection-start') {
|
|
13
13
|
this.flowStatusService.setIdleStatus();
|
|
14
14
|
}
|
|
15
15
|
}
|
|
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
32
32
|
type: HostListener,
|
|
33
33
|
args: ['contextmenu']
|
|
34
34
|
}] } });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1zdmctY29udGV4dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvZGlyZWN0aXZlcy9yb290LXN2Zy1jb250ZXh0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBRXBFLGlDQUFpQztBQUtqQyxNQUFNLE9BQU8sdUJBQXVCO0lBSnBDO1FBS1Usc0JBQWlCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7S0FhdkQ7SUFYQyw2Q0FBNkM7SUFJbkMsZUFBZTtRQUN2QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFL0MsSUFBSSxNQUFNLENBQUMsS0FBSyxLQUFLLGtCQUFrQixJQUFJLE1BQU0sQ0FBQyxLQUFLLEtBQUssb0JBQW9CLEVBQUUsQ0FBQztZQUNqRixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDekMsQ0FBQztJQUNILENBQUM7K0dBYlUsdUJBQXVCO21HQUF2Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxxQkFBcUI7aUJBQ2hDOzhCQVFXLGVBQWU7c0JBSHhCLFlBQVk7dUJBQUMsa0JBQWtCOztzQkFDL0IsWUFBWTt1QkFBQyxtQkFBbUI7O3NCQUNoQyxZQUFZO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGbG93U3RhdHVzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zsb3ctc3RhdHVzLnNlcnZpY2UnO1xuXG4vLyBUT0RPOiB0b28gZ2VuZXJhbCBwdXJwb3NlIG5hbmVcbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tyb290U3ZnQ29udGV4dF0nLFxufSlcbmV4cG9ydCBjbGFzcyBSb290U3ZnQ29udGV4dERpcmVjdGl2ZSB7XG4gIHByaXZhdGUgZmxvd1N0YXR1c1NlcnZpY2UgPSBpbmplY3QoRmxvd1N0YXR1c1NlcnZpY2UpO1xuXG4gIC8vIFRPRE86IGNoZWNrIGZvciBtdWx0aXBsZSBpbnN0YW5jZXMgb24gcGFnZVxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDptb3VzZXVwJylcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6dG91Y2hlbmQnKVxuICBASG9zdExpc3RlbmVyKCdjb250ZXh0bWVudScpXG4gIHByb3RlY3RlZCByZXNldENvbm5lY3Rpb24oKSB7XG4gICAgY29uc3Qgc3RhdHVzID0gdGhpcy5mbG93U3RhdHVzU2VydmljZS5zdGF0dXMoKTtcblxuICAgIGlmIChzdGF0dXMuc3RhdGUgPT09ICdjb25uZWN0aW9uLXN0YXJ0JyB8fCBzdGF0dXMuc3RhdGUgPT09ICdyZWNvbm5lY3Rpb24tc3RhcnQnKSB7XG4gICAgICB0aGlzLmZsb3dTdGF0dXNTZXJ2aWNlLnNldElkbGVTdGF0dXMoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import { Directive,
|
|
1
|
+
import { Directive, ElementRef, inject } from '@angular/core';
|
|
2
2
|
import { SelectionService } from '../services/selection.service';
|
|
3
3
|
import { EdgeComponent } from '../components/edge/edge.component';
|
|
4
4
|
import { NodeComponent } from '../components/node/node.component';
|
|
5
5
|
import { FlowSettingsService } from '../services/flow-settings.service';
|
|
6
|
+
import { fromEvent, merge, tap } from 'rxjs';
|
|
7
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
6
8
|
import * as i0 from "@angular/core";
|
|
7
9
|
export class SelectableDirective {
|
|
8
10
|
constructor() {
|
|
@@ -10,8 +12,12 @@ export class SelectableDirective {
|
|
|
10
12
|
this.selectionService = inject(SelectionService);
|
|
11
13
|
this.parentEdge = inject(EdgeComponent, { optional: true });
|
|
12
14
|
this.parentNode = inject(NodeComponent, { optional: true });
|
|
15
|
+
this.host = inject(ElementRef);
|
|
16
|
+
this.selectOnEvent = this.getEvent$()
|
|
17
|
+
.pipe(tap(() => this.select()), takeUntilDestroyed())
|
|
18
|
+
.subscribe();
|
|
13
19
|
}
|
|
14
|
-
|
|
20
|
+
select() {
|
|
15
21
|
const entity = this.entity();
|
|
16
22
|
if (entity && this.flowSettingsService.entitiesSelectable()) {
|
|
17
23
|
this.selectionService.select(entity);
|
|
@@ -26,8 +32,16 @@ export class SelectableDirective {
|
|
|
26
32
|
}
|
|
27
33
|
return null;
|
|
28
34
|
}
|
|
35
|
+
getEvent$() {
|
|
36
|
+
if (this.parentEdge) {
|
|
37
|
+
// get not the edge itself, but the interactive edge (which is more UX friendly)
|
|
38
|
+
const interactiveEdge = this.parentEdge.interactiveEdgeRef().nativeElement;
|
|
39
|
+
return merge(fromEvent(interactiveEdge, 'mousedown'), fromEvent(interactiveEdge, 'touchstart'));
|
|
40
|
+
}
|
|
41
|
+
return merge(fromEvent(this.host.nativeElement, 'mousedown'), fromEvent(this.host.nativeElement, 'touchstart'));
|
|
42
|
+
}
|
|
29
43
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SelectableDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
30
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: SelectableDirective, isStandalone: true, selector: "[selectable]",
|
|
44
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: SelectableDirective, isStandalone: true, selector: "[selectable]", ngImport: i0 }); }
|
|
31
45
|
}
|
|
32
46
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SelectableDirective, decorators: [{
|
|
33
47
|
type: Directive,
|
|
@@ -35,11 +49,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
35
49
|
standalone: true,
|
|
36
50
|
selector: '[selectable]',
|
|
37
51
|
}]
|
|
38
|
-
}]
|
|
39
|
-
|
|
40
|
-
args: ['mousedown']
|
|
41
|
-
}, {
|
|
42
|
-
type: HostListener,
|
|
43
|
-
args: ['touchstart']
|
|
44
|
-
}] } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvZGlyZWN0aXZlcy9zZWxlY3RhYmxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBR2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFNeEUsTUFBTSxPQUFPLG1CQUFtQjtJQUpoQztRQUtVLHdCQUFtQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ2xELHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzVDLGVBQVUsR0FBRyxNQUFNLENBQUMsYUFBYSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDdkQsZUFBVSxHQUFHLE1BQU0sQ0FBQyxhQUFhLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztLQW9CaEU7SUFoQlcsV0FBVztRQUNuQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDN0IsSUFBSSxNQUFNLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQztZQUM1RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0lBRU8sTUFBTTtRQUNaLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNqQyxDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDM0IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2pDLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7K0dBdkJVLG1CQUFtQjttR0FBbkIsbUJBQW1COzs0RkFBbkIsbUJBQW1CO2tCQUovQixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsY0FBYztpQkFDekI7OEJBU1csV0FBVztzQkFGcEIsWUFBWTt1QkFBQyxXQUFXOztzQkFDeEIsWUFBWTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2VsZWN0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3NlbGVjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEVkZ2VDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2VkZ2UvZWRnZS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBGbG93RW50aXR5IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9mbG93LWVudGl0eS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTm9kZUNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvbm9kZS9ub2RlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGbG93U2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZmxvdy1zZXR0aW5ncy5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW3NlbGVjdGFibGVdJyxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0YWJsZURpcmVjdGl2ZSB7XG4gIHByaXZhdGUgZmxvd1NldHRpbmdzU2VydmljZSA9IGluamVjdChGbG93U2V0dGluZ3NTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzZWxlY3Rpb25TZXJ2aWNlID0gaW5qZWN0KFNlbGVjdGlvblNlcnZpY2UpO1xuICBwcml2YXRlIHBhcmVudEVkZ2UgPSBpbmplY3QoRWRnZUNvbXBvbmVudCwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcHJpdmF0ZSBwYXJlbnROb2RlID0gaW5qZWN0KE5vZGVDb21wb25lbnQsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJylcbiAgQEhvc3RMaXN0ZW5lcigndG91Y2hzdGFydCcpXG4gIHByb3RlY3RlZCBvbk1vdXNlZG93bigpIHtcbiAgICBjb25zdCBlbnRpdHkgPSB0aGlzLmVudGl0eSgpO1xuICAgIGlmIChlbnRpdHkgJiYgdGhpcy5mbG93U2V0dGluZ3NTZXJ2aWNlLmVudGl0aWVzU2VsZWN0YWJsZSgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGlvblNlcnZpY2Uuc2VsZWN0KGVudGl0eSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBlbnRpdHkoKTogRmxvd0VudGl0eSB8IG51bGwge1xuICAgIGlmICh0aGlzLnBhcmVudE5vZGUpIHtcbiAgICAgIHJldHVybiB0aGlzLnBhcmVudE5vZGUubW9kZWwoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMucGFyZW50RWRnZSkge1xuICAgICAgcmV0dXJuIHRoaXMucGFyZW50RWRnZS5tb2RlbCgpO1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=
|
|
52
|
+
}] });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvZGlyZWN0aXZlcy9zZWxlY3RhYmxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBR2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBTWhFLE1BQU0sT0FBTyxtQkFBbUI7SUFKaEM7UUFLVSx3QkFBbUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNsRCxxQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1QyxlQUFVLEdBQUcsTUFBTSxDQUFDLGFBQWEsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELGVBQVUsR0FBRyxNQUFNLENBQUMsYUFBYSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFdkQsU0FBSSxHQUFHLE1BQU0sQ0FBc0IsVUFBVSxDQUFDLENBQUM7UUFFN0Msa0JBQWEsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFO2FBQ3ZDLElBQUksQ0FDSCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQ3hCLGtCQUFrQixFQUFFLENBQ3JCO2FBQ0EsU0FBUyxFQUFFLENBQUM7S0E2QmhCO0lBM0JTLE1BQU07UUFDWixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDN0IsSUFBSSxNQUFNLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQztZQUM1RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0lBRU8sTUFBTTtRQUNaLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNqQyxDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDM0IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2pDLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTyxTQUFTO1FBQ2YsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDcEIsZ0ZBQWdGO1lBQ2hGLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxhQUFhLENBQUM7WUFFM0UsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLGVBQWUsRUFBRSxXQUFXLENBQUMsRUFBRSxTQUFTLENBQUMsZUFBZSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDbEcsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUNsSCxDQUFDOytHQXpDVSxtQkFBbUI7bUdBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFKL0IsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGNBQWM7aUJBQ3pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlbGVjdGlvblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zZWxlY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBFZGdlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9lZGdlL2VkZ2UuY29tcG9uZW50JztcblxuaW1wb3J0IHsgRmxvd0VudGl0eSB9IGZyb20gJy4uL2ludGVyZmFjZXMvZmxvdy1lbnRpdHkuaW50ZXJmYWNlJztcbmltcG9ydCB7IE5vZGVDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL25vZGUvbm9kZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmxvd1NldHRpbmdzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zsb3ctc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW3NlbGVjdGFibGVdJyxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0YWJsZURpcmVjdGl2ZSB7XG4gIHByaXZhdGUgZmxvd1NldHRpbmdzU2VydmljZSA9IGluamVjdChGbG93U2V0dGluZ3NTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzZWxlY3Rpb25TZXJ2aWNlID0gaW5qZWN0KFNlbGVjdGlvblNlcnZpY2UpO1xuICBwcml2YXRlIHBhcmVudEVkZ2UgPSBpbmplY3QoRWRnZUNvbXBvbmVudCwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcHJpdmF0ZSBwYXJlbnROb2RlID0gaW5qZWN0KE5vZGVDb21wb25lbnQsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgcHJpdmF0ZSBob3N0ID0gaW5qZWN0PEVsZW1lbnRSZWY8RWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuXG4gIHByb3RlY3RlZCBzZWxlY3RPbkV2ZW50ID0gdGhpcy5nZXRFdmVudCQoKVxuICAgIC5waXBlKFxuICAgICAgdGFwKCgpID0+IHRoaXMuc2VsZWN0KCkpLFxuICAgICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICAgKVxuICAgIC5zdWJzY3JpYmUoKTtcblxuICBwcml2YXRlIHNlbGVjdCgpIHtcbiAgICBjb25zdCBlbnRpdHkgPSB0aGlzLmVudGl0eSgpO1xuICAgIGlmIChlbnRpdHkgJiYgdGhpcy5mbG93U2V0dGluZ3NTZXJ2aWNlLmVudGl0aWVzU2VsZWN0YWJsZSgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGlvblNlcnZpY2Uuc2VsZWN0KGVudGl0eSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBlbnRpdHkoKTogRmxvd0VudGl0eSB8IG51bGwge1xuICAgIGlmICh0aGlzLnBhcmVudE5vZGUpIHtcbiAgICAgIHJldHVybiB0aGlzLnBhcmVudE5vZGUubW9kZWwoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMucGFyZW50RWRnZSkge1xuICAgICAgcmV0dXJuIHRoaXMucGFyZW50RWRnZS5tb2RlbCgpO1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRFdmVudCQoKSB7XG4gICAgaWYgKHRoaXMucGFyZW50RWRnZSkge1xuICAgICAgLy8gZ2V0IG5vdCB0aGUgZWRnZSBpdHNlbGYsIGJ1dCB0aGUgaW50ZXJhY3RpdmUgZWRnZSAod2hpY2ggaXMgbW9yZSBVWCBmcmllbmRseSlcbiAgICAgIGNvbnN0IGludGVyYWN0aXZlRWRnZSA9IHRoaXMucGFyZW50RWRnZS5pbnRlcmFjdGl2ZUVkZ2VSZWYoKS5uYXRpdmVFbGVtZW50O1xuXG4gICAgICByZXR1cm4gbWVyZ2UoZnJvbUV2ZW50KGludGVyYWN0aXZlRWRnZSwgJ21vdXNlZG93bicpLCBmcm9tRXZlbnQoaW50ZXJhY3RpdmVFZGdlLCAndG91Y2hzdGFydCcpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWVyZ2UoZnJvbUV2ZW50KHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LCAnbW91c2Vkb3duJyksIGZyb21FdmVudCh0aGlzLmhvc3QubmF0aXZlRWxlbWVudCwgJ3RvdWNoc3RhcnQnKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb25uZWN0aW9uLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRnZSB9IGZyb20gJy4vZWRnZS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbm5lY3Rpb24ge1xuICBzb3VyY2U6IHN0cmluZztcbiAgdGFyZ2V0OiBzdHJpbmc7XG4gIHNvdXJjZUhhbmRsZT86IHN0cmluZztcbiAgdGFyZ2V0SGFuZGxlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlY29ubmVjdGlvbkV2ZW50IHtcbiAgY29ubmVjdGlvbjogQ29ubmVjdGlvbjtcbiAgb2xkRWRnZTogRWRnZTtcbn1cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvaW50ZXJmYWNlcy9lZGdlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29ubmVjdGlvbiB9IGZyb20gJy4vY29ubmVjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRWRnZUxhYmVsLCBFZGdlTGFiZWxQb3NpdGlvbiB9IGZyb20gJy4vZWRnZS1sYWJlbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTWFya2VyIH0gZnJvbSAnLi9tYXJrZXIuaW50ZXJmYWNlJztcblxuZXhwb3J0IHR5cGUgRWRnZVR5cGUgPSAnZGVmYXVsdCcgfCAndGVtcGxhdGUnO1xuZXhwb3J0IHR5cGUgQ3VydmUgPSAnc3RyYWlnaHQnIHwgJ2JlemllcicgfCAnc21vb3RoLXN0ZXAnIHwgJ3N0ZXAnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEVkZ2U8VCA9IHVua25vd24+IGV4dGVuZHMgQ29ubmVjdGlvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIHR5cGU/OiBFZGdlVHlwZTtcbiAgY3VydmU/OiBDdXJ2ZTtcbiAgZGF0YT86IFQ7XG4gIGVkZ2VMYWJlbHM/OiB7IFtwb3NpdGlvbiBpbiBFZGdlTGFiZWxQb3NpdGlvbl0/OiBFZGdlTGFiZWwgfTtcbiAgbWFya2Vycz86IHtcbiAgICBzdGFydD86IE1hcmtlcjtcbiAgICBlbmQ/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvaW50ZXJmYWNlcy9lZGdlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29ubmVjdGlvbiB9IGZyb20gJy4vY29ubmVjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRWRnZUxhYmVsLCBFZGdlTGFiZWxQb3NpdGlvbiB9IGZyb20gJy4vZWRnZS1sYWJlbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTWFya2VyIH0gZnJvbSAnLi9tYXJrZXIuaW50ZXJmYWNlJztcblxuZXhwb3J0IHR5cGUgRWRnZVR5cGUgPSAnZGVmYXVsdCcgfCAndGVtcGxhdGUnO1xuZXhwb3J0IHR5cGUgQ3VydmUgPSAnc3RyYWlnaHQnIHwgJ2JlemllcicgfCAnc21vb3RoLXN0ZXAnIHwgJ3N0ZXAnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEVkZ2U8VCA9IHVua25vd24+IGV4dGVuZHMgQ29ubmVjdGlvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIHR5cGU/OiBFZGdlVHlwZTtcbiAgY3VydmU/OiBDdXJ2ZTtcbiAgZGF0YT86IFQ7XG4gIGVkZ2VMYWJlbHM/OiB7IFtwb3NpdGlvbiBpbiBFZGdlTGFiZWxQb3NpdGlvbl0/OiBFZGdlTGFiZWwgfTtcbiAgbWFya2Vycz86IHtcbiAgICBzdGFydD86IE1hcmtlcjtcbiAgICBlbmQ/OiBNYXJrZXI7XG4gIH07XG4gIHJlY29ubmVjdGFibGU/OiBib29sZWFuIHwgJ3NvdXJjZScgfCAndGFyZ2V0Jztcbn1cbiJdfQ==
|
|
@@ -11,6 +11,7 @@ export class EdgeModel {
|
|
|
11
11
|
this.target = signal(undefined);
|
|
12
12
|
this.selected = signal(false);
|
|
13
13
|
this.selected$ = toObservable(this.selected);
|
|
14
|
+
this.renderOrder = signal(0);
|
|
14
15
|
this.detached = computed(() => {
|
|
15
16
|
const source = this.source();
|
|
16
17
|
const target = this.target();
|
|
@@ -35,28 +36,8 @@ export class EdgeModel {
|
|
|
35
36
|
});
|
|
36
37
|
this.detached$ = toObservable(this.detached);
|
|
37
38
|
this.path = computed(() => {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
source = this.source()
|
|
41
|
-
?.handles()
|
|
42
|
-
.find((handle) => handle.rawHandle.id === this.edge.sourceHandle);
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
source = this.source()
|
|
46
|
-
?.handles()
|
|
47
|
-
.find((handle) => handle.rawHandle.type === 'source');
|
|
48
|
-
}
|
|
49
|
-
let target;
|
|
50
|
-
if (this.edge.targetHandle) {
|
|
51
|
-
target = this.target()
|
|
52
|
-
?.handles()
|
|
53
|
-
.find((handle) => handle.rawHandle.id === this.edge.targetHandle);
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
target = this.target()
|
|
57
|
-
?.handles()
|
|
58
|
-
.find((handle) => handle.rawHandle.type === 'target');
|
|
59
|
-
}
|
|
39
|
+
const source = this.sourceHandle();
|
|
40
|
+
const target = this.targetHandle();
|
|
60
41
|
// TODO: don't like this
|
|
61
42
|
if (!source || !target) {
|
|
62
43
|
return {
|
|
@@ -79,9 +60,30 @@ export class EdgeModel {
|
|
|
79
60
|
return smoothStepPath(source.pointAbsolute(), target.pointAbsolute(), source.rawHandle.position, target.rawHandle.position, 0);
|
|
80
61
|
}
|
|
81
62
|
});
|
|
63
|
+
this.sourceHandle = computed(() => {
|
|
64
|
+
if (this.edge.sourceHandle) {
|
|
65
|
+
return (this.source()
|
|
66
|
+
?.handles()
|
|
67
|
+
.find((handle) => handle.rawHandle.id === this.edge.sourceHandle) ?? null);
|
|
68
|
+
}
|
|
69
|
+
return (this.source()
|
|
70
|
+
?.handles()
|
|
71
|
+
.find((handle) => handle.rawHandle.type === 'source') ?? null);
|
|
72
|
+
});
|
|
73
|
+
this.targetHandle = computed(() => {
|
|
74
|
+
if (this.edge.targetHandle) {
|
|
75
|
+
return (this.target()
|
|
76
|
+
?.handles()
|
|
77
|
+
.find((handle) => handle.rawHandle.id === this.edge.targetHandle) ?? null);
|
|
78
|
+
}
|
|
79
|
+
return (this.target()
|
|
80
|
+
?.handles()
|
|
81
|
+
.find((handle) => handle.rawHandle.type === 'target') ?? null);
|
|
82
|
+
});
|
|
82
83
|
this.edgeLabels = {};
|
|
83
84
|
this.type = edge.type ?? 'default';
|
|
84
85
|
this.curve = edge.curve ?? 'bezier';
|
|
86
|
+
this.reconnectable = edge.reconnectable ?? false;
|
|
85
87
|
if (edge.edgeLabels?.start)
|
|
86
88
|
this.edgeLabels.start = new EdgeLabelModel(edge.edgeLabels.start);
|
|
87
89
|
if (edge.edgeLabels?.center)
|
|
@@ -91,4 +93,4 @@ export class EdgeModel {
|
|
|
91
93
|
this.usingPoints = [!!this.edgeLabels.start, !!this.edgeLabels.center, !!this.edgeLabels.end];
|
|
92
94
|
}
|
|
93
95
|
}
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9tb2RlbHMvZWRnZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUczRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXBFLE1BQU0sT0FBTyxTQUFTO0lBeUdwQixZQUFtQixJQUFVO1FBQVYsU0FBSSxHQUFKLElBQUksQ0FBTTtRQXhHdEIsV0FBTSxHQUFHLE1BQU0sQ0FBd0IsU0FBUyxDQUFDLENBQUM7UUFDbEQsV0FBTSxHQUFHLE1BQU0sQ0FBd0IsU0FBUyxDQUFDLENBQUM7UUFJbEQsYUFBUSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QixjQUFTLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4QyxhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM5QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBRTdCLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDdkIsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1lBRUQsSUFBSSxrQkFBa0IsR0FBRyxL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QUFDLENBQ0YsQ0FBQztZQUNOLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVJLGVBQVUsR0FBeUQsRUFBRSxDQUFDO1FBSzNFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxTQUFTLENBQUM7UUFDbkMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLFFBQVEsQ0FBQztRQUVwQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSztZQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUYsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU07WUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2pHLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHO1lBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV4RixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoRyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFZGdlTGFiZWxQb3NpdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvZWRnZS1sYWJlbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRWRnZSwgQ3VydmUsIEVkZ2VUeXBlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9lZGdlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFZGdlTGFiZWxNb2RlbCB9IGZyb20gJy4vZWRnZS1sYWJlbC5tb2RlbCc7XG5pbXBvcnQgeyBOb2RlTW9kZWwgfSBmcm9tICcuL25vZGUubW9kZWwnO1xuaW1wb3J0IHsgc3RyYWlnaHRQYXRoIH0gZnJvbSAnLi4vbWF0aC9lZGdlLXBhdGgvc3RyYWlnaC1wYXRoJztcbmltcG9ydCB7IGJlemllclBhdGggfSBmcm9tICcuLi9tYXRoL2VkZ2UtcGF0aC9iZXppZXItcGF0aCc7XG5pbXBvcnQgeyBVc2luZ1BvaW50cyB9IGZyb20gJy4uL3R5cGVzL3VzaW5nLXBvaW50cy50eXBlJztcbmltcG9ydCB7IEhhbmRsZU1vZGVsIH0gZnJvbSAnLi9oYW5kbGUubW9kZWwnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRmxvd0VudGl0eSB9IGZyb20gJy4uL2ludGVyZmFjZXMvZmxvdy1lbnRpdHkuaW50ZXJmYWNlJztcbmltcG9ydCB7IHNtb290aFN0ZXBQYXRoIH0gZnJvbSAnLi4vbWF0aC9lZGdlLXBhdGgvc21vb3RoLXN0ZXAtcGF0aCc7XG5cbmV4cG9ydCBjbGFzcyBFZGdlTW9kZWwgaW1wbGVtZW50cyBGbG93RW50aXR5IHtcbiAgcHVibGljIHNvdXJjZSA9IHNpZ25hbDxOb2RlTW9kZWwgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHB1YmxpYyB0YXJnZXQgPSBzaWduYWw8Tm9kZU1vZGVsIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBwdWJsaWMgY3VydmU6IEN1cnZlO1xuICBwdWJsaWMgdHlwZTogRWRnZVR5cGU7XG5cbiAgcHVibGljIHNlbGVjdGVkID0gc2lnbmFsKGZhbHNlKTtcbiAgcHVibGljIHNlbGVjdGVkJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLnNlbGVjdGVkKTtcblxuICBwdWJsaWMgZGV0YWNoZWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gdGhpcy5zb3VyY2UoKTtcbiAgICBjb25zdCB0YXJnZXQgPSB0aGlzLnRhcmdldCgpO1xuXG4gICAgaWYgKCFzb3VyY2UgfHwgIXRhcmdldCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgbGV0IGV4aXN0c1NvdXJjZUhhbmRsZSA9IGZhbHNlO1xuICAgIGxldCBleGlzdHNUYXJnZXRIYW5kbGUgPSBmYWxzZTtcblxuICAgIGlmICh0aGlzLmVkZ2Uuc291cmNlSGFuZGxlKSB7XG4gICAgICBleGlzdHNTb3VyY2VIYW5kbGUgPSAhIXNvdXJjZS5oYW5kbGVzKCkuZmluZCgoaGFuZGxlKSA9PiBoYW5kbGUucmF3SGFuZGxlLmlkID09PSB0aGlzLmVkZ2Uuc291cmNlSGFuZGxlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZXhpc3RzU291cmNlSGFuZGxlID0gISFzb3VyY2UuaGFuZGxlcygpLmZpbmQoKGhhbmRsZSkgPT4gaGFuZGxlLnJhd0hhbmRsZS50eXBlID09PSAnc291cmNlJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpIHtcbiAgICAgIGV4aXN0c1RhcmdldEhhbmRsZSA9ICEhdGFyZ2V0LmhhbmRsZXMoKS5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUuaWQgPT09IHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBleGlzdHNUYXJnZXRIYW5kbGUgPSAhIXRhcmdldC5oYW5kbGVzKCkuZmluZCgoaGFuZGxlKSA9PiBoYW5kbGUucmF3SGFuZGxlLnR5cGUgPT09ICd0YXJnZXQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gIWV4aXN0c1NvdXJjZUhhbmRsZSB8fCAhZXhpc3RzVGFyZ2V0SGFuZGxlO1xuICB9KTtcblxuICBwdWJsaWMgZGV0YWNoZWQkID0gdG9PYnNlcnZhYmxlKHRoaXMuZGV0YWNoZWQpO1xuXG4gIHB1YmxpYyBwYXRoID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGxldCBzb3VyY2U6IEhhbmRsZU1vZGVsIHwgdW5kZWZpbmVkO1xuICAgIGlmICh0aGlzLmVkZ2Uuc291cmNlSGFuZGxlKSB7XG4gICAgICBzb3VyY2UgPSB0aGlzLnNvdXJjZSgpXG4gICAgICAgID8uaGFuZGxlcygpXG4gICAgICAgIC5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUuaWQgPT09IHRoaXMuZWRnZS5zb3VyY2VIYW5kbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzb3VyY2UgPSB0aGlzLnNvdXJjZSgpXG4gICAgICAgID8uaGFuZGxlcygpXG4gICAgICAgIC5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUudHlwZSA9PT0gJ3NvdXJjZScpO1xuICAgIH1cblxuICAgIGxldCB0YXJnZXQ6IEhhbmRsZU1vZGVsIHwgdW5kZWZpbmVkO1xuICAgIGlmICh0aGlzLmVkZ2UudGFyZ2V0SGFuZGxlKSB7XG4gICAgICB0YXJnZXQgPSB0aGlzLnRhcmdldCgpXG4gICAgICAgID8uaGFuZGxlcygpXG4gICAgICAgIC5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUuaWQgPT09IHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0YXJnZXQgPSB0aGlzLnRhcmdldCgpXG4gICAgICAgID8uaGFuZGxlcygpXG4gICAgICAgIC5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUudHlwZSA9PT0gJ3RhcmdldCcpO1xuICAgIH1cblxuICAgIC8vIFRPRE86IGRvbid0IGxpa2UgdGhpc1xuICAgIGlmICghc291cmNlIHx8ICF0YXJnZXQpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhdGg6ICcnLFxuICAgICAgICBwb2ludHM6IHtcbiAgICAgICAgICBzdGFydDogeyB4OiAwLCB5OiAwIH0sXG4gICAgICAgICAgY2VudGVyOiB7IHg6IDAsIHk6IDAgfSxcbiAgICAgICAgICBlbmQ6IHsgeDogMCwgeTogMCB9LFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKHRoaXMuY3VydmUpIHtcbiAgICAgIGNhc2UgJ3N0cmFpZ2h0JzpcbiAgICAgICAgcmV0dXJuIHN0cmFpZ2h0UGF0aChzb3VyY2UucG9pbnRBYnNvbHV0ZSgpLCB0YXJnZXQucG9pbnRBYnNvbHV0ZSgpLCB0aGlzLnVzaW5nUG9pbnRzKTtcbiAgICAgIGNhc2UgJ2Jlemllcic6XG4gICAgICAgIHJldHVybiBiZXppZXJQYXRoKFxuICAgICAgICAgIHNvdXJjZS5wb2ludEFic29sdXRlKCksXG4gICAgICAgICAgdGFyZ2V0LnBvaW50QWJzb2x1dGUoKSxcbiAgICAgICAgICBzb3VyY2UucmF3SGFuZGxlLnBvc2l0aW9uLFxuICAgICAgICAgIHRhcmdldC5yYXdIYW5kbGUucG9zaXRpb24sXG4gICAgICAgICAgdGhpcy51c2luZ1BvaW50cyxcbiAgICAgICAgKTtcbiAgICAgIGNhc2UgJ3Ntb290aC1zdGVwJzpcbiAgICAgICAgcmV0dXJuIHNtb290aFN0ZXBQYXRoKFxuICAgICAgICAgIHNvdXJjZS5wb2ludEFic29sdXRlKCksXG4gICAgICAgICAgdGFyZ2V0LnBvaW50QWJzb2x1dGUoKSxcbiAgICAgICAgICBzb3VyY2UucmF3SGFuZGxlLnBvc2l0aW9uLFxuICAgICAgICAgIHRhcmdldC5yYXdIYW5kbGUucG9zaXRpb24sXG4gICAgICAgICk7XG4gICAgICBjYXNlICdzdGVwJzpcbiAgICAgICAgcmV0dXJuIHNtb290aFN0ZXBQYXRoKFxuICAgICAgICAgIHNvdXJjZS5wb2ludEFic29sdXRlKCksXG4gICAgICAgICAgdGFyZ2V0LnBvaW50QWJzb2x1dGUoKSxcbiAgICAgICAgICBzb3VyY2UucmF3SGFuZGxlLnBvc2l0aW9uLFxuICAgICAgICAgIHRhcmdldC5yYXdIYW5kbGUucG9zaXRpb24sXG4gICAgICAgICAgMCxcbiAgICAgICAgKTtcbiAgICB9XG4gIH0pO1xuXG4gIHB1YmxpYyBlZGdlTGFiZWxzOiB7IFtwb3NpdGlvbiBpbiBFZGdlTGFiZWxQb3NpdGlvbl0/OiBFZGdlTGFiZWxNb2RlbCB9ID0ge307XG5cbiAgcHJpdmF0ZSB1c2luZ1BvaW50czogVXNpbmdQb2ludHM7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGVkZ2U6IEVkZ2UpIHtcbiAgICB0aGlzLnR5cGUgPSBlZGdlLnR5cGUgPz8gJ2RlZmF1bHQnO1xuICAgIHRoaXMuY3VydmUgPSBlZGdlLmN1cnZlID8/ICdiZXppZXInO1xuXG4gICAgaWYgKGVkZ2UuZWRnZUxhYmVscz8uc3RhcnQpIHRoaXMuZWRnZUxhYmVscy5zdGFydCA9IG5ldyBFZGdlTGFiZWxNb2RlbChlZGdlLmVkZ2VMYWJlbHMuc3RhcnQpO1xuICAgIGlmIChlZGdlLmVkZ2VMYWJlbHM/LmNlbnRlcikgdGhpcy5lZGdlTGFiZWxzLmNlbnRlciA9IG5ldyBFZGdlTGFiZWxNb2RlbChlZGdlLmVkZ2VMYWJlbHMuY2VudGVyKTtcbiAgICBpZiAoZWRnZS5lZGdlTGFiZWxzPy5lbmQpIHRoaXMuZWRnZUxhYmVscy5lbmQgPSBuZXcgRWRnZUxhYmVsTW9kZWwoZWRnZS5lZGdlTGFiZWxzLmVuZCk7XG5cbiAgICB0aGlzLnVzaW5nUG9pbnRzID0gWyEhdGhpcy5lZGdlTGFiZWxzLnN0YXJ0LCAhIXRoaXMuZWRnZUxhYmVscy5jZW50ZXIsICEhdGhpcy5lZGdlTGFiZWxzLmVuZF07XG4gIH1cbn1cbiJdfQ==
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9tb2RlbHMvZWRnZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBR3BFLE1BQU0sT0FBTyxTQUFTO0lBeUhwQixZQUFtQixJQUFVO1FBQVYsU0FBSSxHQUFKLElBQUksQ0FBTTtRQXhIdEIsV0FBTSxHQUFHLE1BQU0sQ0FBd0IsU0FBUyxDQUFDLENBQUM7UUFDbEQsV0FBTSxHQUFHLE1BQU0sQ0FBd0IsU0FBUyxDQUFDLENBQUM7UUFLbEQsYUFBUSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QixjQUFTLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4QyxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV4QixhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM5QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBRTdCLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDdkIsT0FBTyxJ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QUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVkZ2VMYWJlbFBvc2l0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9lZGdlLWxhYmVsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFZGdlLCBDdXJ2ZSwgRWRnZVR5cGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2VkZ2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEVkZ2VMYWJlbE1vZGVsIH0gZnJvbSAnLi9lZGdlLWxhYmVsLm1vZGVsJztcbmltcG9ydCB7IE5vZGVNb2RlbCB9IGZyb20gJy4vbm9kZS5tb2RlbCc7XG5pbXBvcnQgeyBzdHJhaWdodFBhdGggfSBmcm9tICcuLi9tYXRoL2VkZ2UtcGF0aC9zdHJhaWdoLXBhdGgnO1xuaW1wb3J0IHsgYmV6aWVyUGF0aCB9IGZyb20gJy4uL21hdGgvZWRnZS1wYXRoL2Jlemllci1wYXRoJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEZsb3dFbnRpdHkgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2Zsb3ctZW50aXR5LmludGVyZmFjZSc7XG5pbXBvcnQgeyBzbW9vdGhTdGVwUGF0aCB9IGZyb20gJy4uL21hdGgvZWRnZS1wYXRoL3Ntb290aC1zdGVwLXBhdGgnO1xuaW1wb3J0IHsgVXNpbmdQb2ludHMgfSBmcm9tICcuLi90eXBlcy91c2luZy1wb2ludHMudHlwZSc7XG5cbmV4cG9ydCBjbGFzcyBFZGdlTW9kZWwgaW1wbGVtZW50cyBGbG93RW50aXR5IHtcbiAgcHVibGljIHNvdXJjZSA9IHNpZ25hbDxOb2RlTW9kZWwgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHB1YmxpYyB0YXJnZXQgPSBzaWduYWw8Tm9kZU1vZGVsIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBwdWJsaWMgY3VydmU6IEN1cnZlO1xuICBwdWJsaWMgdHlwZTogRWRnZVR5cGU7XG4gIHB1YmxpYyByZWNvbm5lY3RhYmxlOiBib29sZWFuIHwgJ3NvdXJjZScgfCAndGFyZ2V0JztcblxuICBwdWJsaWMgc2VsZWN0ZWQgPSBzaWduYWwoZmFsc2UpO1xuICBwdWJsaWMgc2VsZWN0ZWQkID0gdG9PYnNlcnZhYmxlKHRoaXMuc2VsZWN0ZWQpO1xuXG4gIHB1YmxpYyByZW5kZXJPcmRlciA9IHNpZ25hbCgwKTtcblxuICBwdWJsaWMgZGV0YWNoZWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gdGhpcy5zb3VyY2UoKTtcbiAgICBjb25zdCB0YXJnZXQgPSB0aGlzLnRhcmdldCgpO1xuXG4gICAgaWYgKCFzb3VyY2UgfHwgIXRhcmdldCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgbGV0IGV4aXN0c1NvdXJjZUhhbmRsZSA9IGZhbHNlO1xuICAgIGxldCBleGlzdHNUYXJnZXRIYW5kbGUgPSBmYWxzZTtcblxuICAgIGlmICh0aGlzLmVkZ2Uuc291cmNlSGFuZGxlKSB7XG4gICAgICBleGlzdHNTb3VyY2VIYW5kbGUgPSAhIXNvdXJjZS5oYW5kbGVzKCkuZmluZCgoaGFuZGxlKSA9PiBoYW5kbGUucmF3SGFuZGxlLmlkID09PSB0aGlzLmVkZ2Uuc291cmNlSGFuZGxlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZXhpc3RzU291cmNlSGFuZGxlID0gISFzb3VyY2UuaGFuZGxlcygpLmZpbmQoKGhhbmRsZSkgPT4gaGFuZGxlLnJhd0hhbmRsZS50eXBlID09PSAnc291cmNlJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpIHtcbiAgICAgIGV4aXN0c1RhcmdldEhhbmRsZSA9ICEhdGFyZ2V0LmhhbmRsZXMoKS5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUuaWQgPT09IHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBleGlzdHNUYXJnZXRIYW5kbGUgPSAhIXRhcmdldC5oYW5kbGVzKCkuZmluZCgoaGFuZGxlKSA9PiBoYW5kbGUucmF3SGFuZGxlLnR5cGUgPT09ICd0YXJnZXQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gIWV4aXN0c1NvdXJjZUhhbmRsZSB8fCAhZXhpc3RzVGFyZ2V0SGFuZGxlO1xuICB9KTtcblxuICBwdWJsaWMgZGV0YWNoZWQkID0gdG9PYnNlcnZhYmxlKHRoaXMuZGV0YWNoZWQpO1xuXG4gIHB1YmxpYyBwYXRoID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IHRoaXMuc291cmNlSGFuZGxlKCk7XG4gICAgY29uc3QgdGFyZ2V0ID0gdGhpcy50YXJnZXRIYW5kbGUoKTtcblxuICAgIC8vIFRPRE86IGRvbid0IGxpa2UgdGhpc1xuICAgIGlmICghc291cmNlIHx8ICF0YXJnZXQpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhdGg6ICcnLFxuICAgICAgICBwb2ludHM6IHtcbiAgICAgICAgICBzdGFydDogeyB4OiAwLCB5OiAwIH0sXG4gICAgICAgICAgY2VudGVyOiB7IHg6IDAsIHk6IDAgfSxcbiAgICAgICAgICBlbmQ6IHsgeDogMCwgeTogMCB9LFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKHRoaXMuY3VydmUpIHtcbiAgICAgIGNhc2UgJ3N0cmFpZ2h0JzpcbiAgICAgICAgcmV0dXJuIHN0cmFpZ2h0UGF0aChzb3VyY2UucG9pbnRBYnNvbHV0ZSgpLCB0YXJnZXQucG9pbnRBYnNvbHV0ZSgpLCB0aGlzLnVzaW5nUG9pbnRzKTtcbiAgICAgIGNhc2UgJ2Jlemllcic6XG4gICAgICAgIHJldHVybiBiZXppZXJQYXRoKFxuICAgICAgICAgIHNvdXJjZS5wb2ludEFic29sdXRlKCksXG4gICAgICAgICAgdGFyZ2V0LnBvaW50QWJzb2x1dGUoKSxcbiAgICAgICAgICBzb3VyY2UucmF3SGFuZGxlLnBvc2l0aW9uLFxuICAgICAgICAgIHRhcmdldC5yYXdIYW5kbGUucG9zaXRpb24sXG4gICAgICAgICAgdGhpcy51c2luZ1BvaW50cyxcbiAgICAgICAgKTtcbiAgICAgIGNhc2UgJ3Ntb290aC1zdGVwJzpcbiAgICAgICAgcmV0dXJuIHNtb290aFN0ZXBQYXRoKFxuICAgICAgICAgIHNvdXJjZS5wb2ludEFic29sdXRlKCksXG4gICAgICAgICAgdGFyZ2V0LnBvaW50QWJzb2x1dGUoKSxcbiAgICAgICAgICBzb3VyY2UucmF3SGFuZGxlLnBvc2l0aW9uLFxuICAgICAgICAgIHRhcmdldC5yYXdIYW5kbGUucG9zaXRpb24sXG4gICAgICAgICk7XG4gICAgICBjYXNlICdzdGVwJzpcbiAgICAgICAgcmV0dXJuIHNtb290aFN0ZXBQYXRoKFxuICAgICAgICAgIHNvdXJjZS5wb2ludEFic29sdXRlKCksXG4gICAgICAgICAgdGFyZ2V0LnBvaW50QWJzb2x1dGUoKSxcbiAgICAgICAgICBzb3VyY2UucmF3SGFuZGxlLnBvc2l0aW9uLFxuICAgICAgICAgIHRhcmdldC5yYXdIYW5kbGUucG9zaXRpb24sXG4gICAgICAgICAgMCxcbiAgICAgICAgKTtcbiAgICB9XG4gIH0pO1xuXG4gIHB1YmxpYyBzb3VyY2VIYW5kbGUgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgaWYgKHRoaXMuZWRnZS5zb3VyY2VIYW5kbGUpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIHRoaXMuc291cmNlKClcbiAgICAgICAgICA/LmhhbmRsZXMoKVxuICAgICAgICAgIC5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUuaWQgPT09IHRoaXMuZWRnZS5zb3VyY2VIYW5kbGUpID8/IG51bGxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuc291cmNlKClcbiAgICAgICAgPy5oYW5kbGVzKClcbiAgICAgICAgLmZpbmQoKGhhbmRsZSkgPT4gaGFuZGxlLnJhd0hhbmRsZS50eXBlID09PSAnc291cmNlJykgPz8gbnVsbFxuICAgICk7XG4gIH0pO1xuXG4gIHB1YmxpYyB0YXJnZXRIYW5kbGUgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgaWYgKHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIHRoaXMudGFyZ2V0KClcbiAgICAgICAgICA/LmhhbmRsZXMoKVxuICAgICAgICAgIC5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUuaWQgPT09IHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpID8/IG51bGxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMudGFyZ2V0KClcbiAgICAgICAgPy5oYW5kbGVzKClcbiAgICAgICAgLmZpbmQoKGhhbmRsZSkgPT4gaGFuZGxlLnJhd0hhbmRsZS50eXBlID09PSAndGFyZ2V0JykgPz8gbnVsbFxuICAgICk7XG4gIH0pO1xuXG4gIHB1YmxpYyBlZGdlTGFiZWxzOiB7IFtwb3NpdGlvbiBpbiBFZGdlTGFiZWxQb3NpdGlvbl0/OiBFZGdlTGFiZWxNb2RlbCB9ID0ge307XG5cbiAgcHJpdmF0ZSB1c2luZ1BvaW50czogVXNpbmdQb2ludHM7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGVkZ2U6IEVkZ2UpIHtcbiAgICB0aGlzLnR5cGUgPSBlZGdlLnR5cGUgPz8gJ2RlZmF1bHQnO1xuICAgIHRoaXMuY3VydmUgPSBlZGdlLmN1cnZlID8/ICdiZXppZXInO1xuICAgIHRoaXMucmVjb25uZWN0YWJsZSA9IGVkZ2UucmVjb25uZWN0YWJsZSA/PyBmYWxzZTtcblxuICAgIGlmIChlZGdlLmVkZ2VMYWJlbHM/LnN0YXJ0KSB0aGlzLmVkZ2VMYWJlbHMuc3RhcnQgPSBuZXcgRWRnZUxhYmVsTW9kZWwoZWRnZS5lZGdlTGFiZWxzLnN0YXJ0KTtcbiAgICBpZiAoZWRnZS5lZGdlTGFiZWxzPy5jZW50ZXIpIHRoaXMuZWRnZUxhYmVscy5jZW50ZXIgPSBuZXcgRWRnZUxhYmVsTW9kZWwoZWRnZS5lZGdlTGFiZWxzLmNlbnRlcik7XG4gICAgaWYgKGVkZ2UuZWRnZUxhYmVscz8uZW5kKSB0aGlzLmVkZ2VMYWJlbHMuZW5kID0gbmV3IEVkZ2VMYWJlbE1vZGVsKGVkZ2UuZWRnZUxhYmVscy5lbmQpO1xuXG4gICAgdGhpcy51c2luZ1BvaW50cyA9IFshIXRoaXMuZWRnZUxhYmVscy5zdGFydCwgISF0aGlzLmVkZ2VMYWJlbHMuY2VudGVyLCAhIXRoaXMuZWRnZUxhYmVscy5lbmRdO1xuICB9XG59XG4iXX0=
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, Injector, inject, input, } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, Injector, inject, input, runInInjectionContext, } from '@angular/core';
|
|
3
2
|
import { HandleService } from '../../services/handle.service';
|
|
4
3
|
import { HandleModel } from '../../models/handle.model';
|
|
5
|
-
import { InjectionContext } from '../../decorators/run-in-injection-context.decorator';
|
|
6
4
|
import * as i0 from "@angular/core";
|
|
7
5
|
export class HandleComponent {
|
|
8
6
|
constructor() {
|
|
@@ -25,28 +23,27 @@ export class HandleComponent {
|
|
|
25
23
|
this.template = input();
|
|
26
24
|
}
|
|
27
25
|
ngOnInit() {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
26
|
+
runInInjectionContext(this.injector, () => {
|
|
27
|
+
const node = this.handleService.node();
|
|
28
|
+
if (node) {
|
|
29
|
+
const model = new HandleModel({
|
|
30
|
+
position: this.position(),
|
|
31
|
+
type: this.type(),
|
|
32
|
+
id: this.id(),
|
|
33
|
+
hostReference: this.element.parentElement,
|
|
34
|
+
template: this.template(),
|
|
35
|
+
}, node);
|
|
36
|
+
this.handleService.createHandle(model);
|
|
37
|
+
requestAnimationFrame(() => model.updateHost());
|
|
38
|
+
this.destroyRef.onDestroy(() => this.handleService.destroyHandle(model));
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
41
|
}
|
|
42
42
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HandleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
43
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: HandleComponent, isStandalone: true, selector: "handle", inputs: { position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: true, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: true, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
44
44
|
}
|
|
45
|
-
__decorate([
|
|
46
|
-
InjectionContext
|
|
47
|
-
], HandleComponent.prototype, "ngOnInit", null);
|
|
48
45
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HandleComponent, decorators: [{
|
|
49
46
|
type: Component,
|
|
50
47
|
args: [{ standalone: true, selector: 'handle', changeDetection: ChangeDetectionStrategy.OnPush, template: "" }]
|
|
51
|
-
}]
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
}] });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9oYW5kbGUvaGFuZGxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9oYW5kbGUvaGFuZGxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixVQUFVLEVBQ1YsUUFBUSxFQUdSLE1BQU0sRUFDTixLQUFLLEVBQ0wscUJBQXFCLEdBQ3RCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBUXhELE1BQU0sT0FBTyxlQUFlO0lBTjVCO1FBT1UsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixrQkFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0QyxZQUFPLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFDcEUsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV4Qzs7V0FFRztRQUNJLGFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFZLENBQUM7UUFFN0M7O1dBRUc7UUFDSSxTQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBdUIsQ0FBQztRQUVwRDs7V0FFRztRQUNJLE9BQUUsR0FBRyxLQUFLLEVBQVUsQ0FBQztRQUVyQixhQUFRLEdBQUcsS0FBSyxFQUFvQixDQUFDO0tBMEI3QztJQXhCUSxRQUFRO1FBQ2IscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDeEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUV2QyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUNULE1BQU0sS0FBSyxHQUFHLElBQUksV0FBVyxDQUMzQjtvQkFDRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtvQkFDekIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUU7b0JBQ2pCLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFO29CQUNiLGFBQWEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWM7b0JBQzFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO2lCQUMxQixFQUNELElBQUksQ0FDTCxDQUFDO2dCQUVGLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUV2QyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztnQkFFaEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUMzRSxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOytHQTlDVSxlQUFlO21HQUFmLGVBQWUsa2pCQ3RCNUIsRUFBQTs7NEZEc0JhLGVBQWU7a0JBTjNCLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLFFBQVEsbUJBRUQsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIERlc3Ryb3lSZWYsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdG9yLFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBydW5JbkluamVjdGlvbkNvbnRleHQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICcuLi8uLi90eXBlcy9wb3NpdGlvbi50eXBlJztcbmltcG9ydCB7IEhhbmRsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9oYW5kbGUuc2VydmljZSc7XG5pbXBvcnQgeyBIYW5kbGVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9oYW5kbGUubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdoYW5kbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vaGFuZGxlLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEhhbmRsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICBwcml2YXRlIGhhbmRsZVNlcnZpY2UgPSBpbmplY3QoSGFuZGxlU2VydmljZSk7XG4gIHByaXZhdGUgZWxlbWVudCA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZikubmF0aXZlRWxlbWVudDtcbiAgcHJpdmF0ZSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gIC8qKlxuICAgKiBBdCB3aGF0IHNpZGUgb2Ygbm9kZSB0aGlzIGNvbXBvbmVudCBzaG91bGQgYmUgcGxhY2VkXG4gICAqL1xuICBwdWJsaWMgcG9zaXRpb24gPSBpbnB1dC5yZXF1aXJlZDxQb3NpdGlvbj4oKTtcblxuICAvKipcbiAgICogU291cmNlIG9yIHRhcmdldFxuICAgKi9cbiAgcHVibGljIHR5cGUgPSBpbnB1dC5yZXF1aXJlZDwnc291cmNlJyB8ICd0YXJnZXQnPigpO1xuXG4gIC8qKlxuICAgKiBTaG91bGQgYmUgdXNlZCBpZiBub2RlIGhhcyBtb3JlIHRoYW4gb25lIHNvdXJjZS90YXJnZXRcbiAgICovXG4gIHB1YmxpYyBpZCA9IGlucHV0PHN0cmluZz4oKTtcblxuICBwdWJsaWMgdGVtcGxhdGUgPSBpbnB1dDxUZW1wbGF0ZVJlZjxhbnk+PigpO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5pbmplY3RvciwgKCkgPT4ge1xuICAgICAgY29uc3Qgbm9kZSA9IHRoaXMuaGFuZGxlU2VydmljZS5ub2RlKCk7XG5cbiAgICAgIGlmIChub2RlKSB7XG4gICAgICAgIGNvbnN0IG1vZGVsID0gbmV3IEhhbmRsZU1vZGVsKFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiB0aGlzLnBvc2l0aW9uKCksXG4gICAgICAgICAgICB0eXBlOiB0aGlzLnR5cGUoKSxcbiAgICAgICAgICAgIGlkOiB0aGlzLmlkKCksXG4gICAgICAgICAgICBob3N0UmVmZXJlbmNlOiB0aGlzLmVsZW1lbnQucGFyZW50RWxlbWVudCEsXG4gICAgICAgICAgICB0ZW1wbGF0ZTogdGhpcy50ZW1wbGF0ZSgpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgbm9kZSxcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLmhhbmRsZVNlcnZpY2UuY3JlYXRlSGFuZGxlKG1vZGVsKTtcblxuICAgICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4gbW9kZWwudXBkYXRlSG9zdCgpKTtcblxuICAgICAgICB0aGlzLmRlc3Ryb3lSZWYub25EZXN0cm95KCgpID0+IHRoaXMuaGFuZGxlU2VydmljZS5kZXN0cm95SGFuZGxlKG1vZGVsKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiIsIiJdfQ==
|
|
@@ -60,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
60
60
|
standalone: true,
|
|
61
61
|
}]
|
|
62
62
|
}] });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10b29sYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9ub2RlLXRvb2xiYXIvbm9kZS10b29sYmFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUlOLEtBQUssRUFDTCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7O0FBc0IzRSxNQUFNLE9BQU8sb0JBQW9CO0lBVS9CO1FBVFEsb0JBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDMUMsZ0JBQVcsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUUzQyxhQUFRLEdBQUcsS0FBSyxDQUFXLEtBQUssQ0FBQyxDQUFDO1FBRS9CLDJCQUFzQixHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQXVCLFNBQVMsQ0FBQyxDQUFDO1FBRTdFLFVBQUssR0FBRyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRyxDQUFDLENBQUM7UUFHNUQsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQztRQUV2RCxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pELENBQUM7K0dBdEJVLG9CQUFvQjttR0FBcEIsb0JBQW9CLHdWQWpCckI7Ozs7OztHQU1ULDJIQXdDVSwyQkFBMkI7OzRGQTdCM0Isb0JBQW9CO2tCQXBCaEMsU0FBUztpQ0FDSSxJQUFJLFlBQ04sY0FBYyxZQUNkOzs7Ozs7R0FNVCxtQkFRZ0IsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDOztBQStCMUQsTUFBTSxPQUFPLDJCQUEyQjtJQUp4QztRQUtVLFlBQU8sR0FBRyxNQUFNLENBQTBCLFVBQVUsQ0FBQyxDQUFDO1FBRXZELFVBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFnQixDQUFDO0tBUS9DO0lBTlEsUUFBUTtRQUNiLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1lBQ3BCLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxXQUFXO1lBQzdDLE1BQU0sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxZQUFZO1NBQ2hELENBQUMsQ0FBQztJQUNMLENBQUM7K0dBVlUsMkJBQTJCO21HQUEzQiwyQkFBMkI7OzRGQUEzQiwyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgaW5qZWN0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVGVtcGxhdGVSZWYsXG4gIGlucHV0LFxuICB2aWV3Q2hpbGQsXG4gIGVmZmVjdCxcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMvcG9zaXRpb24udHlwZSc7XG5pbXBvcnQgeyBUb29sYmFyTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvdG9vbGJhci5tb2RlbCc7XG5pbXBvcnQgeyBPdmVybGF5c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9vdmVybGF5cy5zZXJ2aWNlJztcbmltcG9ydCB7IE5vZGVBY2Nlc3NvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ub2RlLWFjY2Vzc29yLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdub2RlLXRvb2xiYXInLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy10ZW1wbGF0ZSAjdG9vbGJhcj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCIgbm9kZVRvb2xiYXJXcmFwcGVyIFttb2RlbF09XCJtb2RlbFwiPlxuICAgICAgICA8bmctY29udGVudCAvPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgYCxcbiAgc3R5bGVzOiBbXG4gICAgYFxuICAgICAgLndyYXBwZXIge1xuICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtmb3J3YXJkUmVmKCgpID0+IE5vZGVUb29sYmFyV3JhcHBlckRpcmVjdGl2ZSldLFxufSlcbmV4cG9ydCBjbGFzcyBOb2RlVG9vbGJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBvdmVybGF5c1NlcnZpY2UgPSBpbmplY3QoT3ZlcmxheXNTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBub2RlU2VydmljZSA9IGluamVjdChOb2RlQWNjZXNzb3JTZXJ2aWNlKTtcblxuICBwdWJsaWMgcG9zaXRpb24gPSBpbnB1dDxQb3NpdGlvbj4oJ3RvcCcpO1xuXG4gIHByb3RlY3RlZCB0b29sYmFyQ29udGVudFRlbXBsYXRlID0gdmlld0NoaWxkLnJlcXVpcmVkPFRlbXBsYXRlUmVmPHVua25vd24+PigndG9vbGJhcicpO1xuXG4gIHByb3RlY3RlZCBtb2RlbCA9IG5ldyBUb29sYmFyTW9kZWwodGhpcy5ub2RlU2VydmljZS5tb2RlbCgpISk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZWZmZWN0KCgpID0+IHRoaXMubW9kZWwucG9zaXRpb24uc2V0KHRoaXMucG9zaXRpb24oKSksIHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tb2RlbC50ZW1wbGF0ZS5zZXQodGhpcy50b29sYmFyQ29udGVudFRlbXBsYXRlKCkpO1xuXG4gICAgdGhpcy5vdmVybGF5c1NlcnZpY2UuYWRkVG9vbGJhcih0aGlzLm1vZGVsKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm92ZXJsYXlzU2VydmljZS5yZW1vdmVUb29sYmFyKHRoaXMubW9kZWwpO1xuICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tub2RlVG9vbGJhcldyYXBwZXJdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgTm9kZVRvb2xiYXJXcmFwcGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSBlbGVtZW50ID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcblxuICBwdWJsaWMgbW9kZWwgPSBpbnB1dC5yZXF1aXJlZDxUb29sYmFyTW9kZWw+KCk7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubW9kZWwoKS5zaXplLnNldCh7XG4gICAgICB3aWR0aDogdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGgsXG4gICAgICBoZWlnaHQ6IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodCxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Injectable, computed, inject } from '@angular/core';
|
|
2
|
+
import { FlowEntitiesService } from './flow-entities.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class EdgeRenderingService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.flowEntitiesService = inject(FlowEntitiesService);
|
|
7
|
+
this.edges = computed(() => {
|
|
8
|
+
return this.flowEntitiesService.validEdges().sort((aNode, bNode) => aNode.renderOrder() - bNode.renderOrder());
|
|
9
|
+
});
|
|
10
|
+
this.maxOrder = computed(() => {
|
|
11
|
+
return Math.max(...this.flowEntitiesService.validEdges().map((n) => n.renderOrder()));
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
pull(edge) {
|
|
15
|
+
const isAlreadyOnTop = edge.renderOrder() !== 0 && this.maxOrder() === edge.renderOrder();
|
|
16
|
+
if (isAlreadyOnTop) {
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
// pull node
|
|
20
|
+
edge.renderOrder.set(this.maxOrder() + 1);
|
|
21
|
+
}
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EdgeRenderingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
23
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EdgeRenderingService }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EdgeRenderingService, decorators: [{
|
|
26
|
+
type: Injectable
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS1yZW5kZXJpbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9zZXJ2aWNlcy9lZGdlLXJlbmRlcmluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFJOUQsTUFBTSxPQUFPLG9CQUFvQjtJQURqQztRQUVVLHdCQUFtQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRTFDLFVBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3BDLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNqSCxDQUFDLENBQUMsQ0FBQztRQUVLLGFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQy9CLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEYsQ0FBQyxDQUFDLENBQUM7S0FZSjtJQVZRLElBQUksQ0FBQyxJQUFlO1FBQ3pCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUUxRixJQUFJLGNBQWMsRUFBRSxDQUFDO1lBQ25CLE9BQU87UUFDVCxDQUFDO1FBRUQsWUFBWTtRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDOytHQXBCVSxvQkFBb0I7bUhBQXBCLG9CQUFvQjs7NEZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGNvbXB1dGVkLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZsb3dFbnRpdGllc1NlcnZpY2UgfSBmcm9tICcuL2Zsb3ctZW50aXRpZXMuc2VydmljZSc7XG5pbXBvcnQgeyBFZGdlTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvZWRnZS5tb2RlbCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFZGdlUmVuZGVyaW5nU2VydmljZSB7XG4gIHByaXZhdGUgZmxvd0VudGl0aWVzU2VydmljZSA9IGluamVjdChGbG93RW50aXRpZXNTZXJ2aWNlKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZWRnZXMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuZmxvd0VudGl0aWVzU2VydmljZS52YWxpZEVkZ2VzKCkuc29ydCgoYU5vZGUsIGJOb2RlKSA9PiBhTm9kZS5yZW5kZXJPcmRlcigpIC0gYk5vZGUucmVuZGVyT3JkZXIoKSk7XG4gIH0pO1xuXG4gIHByaXZhdGUgbWF4T3JkZXIgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIE1hdGgubWF4KC4uLnRoaXMuZmxvd0VudGl0aWVzU2VydmljZS52YWxpZEVkZ2VzKCkubWFwKChuKSA9PiBuLnJlbmRlck9yZGVyKCkpKTtcbiAgfSk7XG5cbiAgcHVibGljIHB1bGwoZWRnZTogRWRnZU1vZGVsKSB7XG4gICAgY29uc3QgaXNBbHJlYWR5T25Ub3AgPSBlZGdlLnJlbmRlck9yZGVyKCkgIT09IDAgJiYgdGhpcy5tYXhPcmRlcigpID09PSBlZGdlLnJlbmRlck9yZGVyKCk7XG5cbiAgICBpZiAoaXNBbHJlYWR5T25Ub3ApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBwdWxsIG5vZGVcbiAgICBlZGdlLnJlbmRlck9yZGVyLnNldCh0aGlzLm1heE9yZGVyKCkgKyAxKTtcbiAgfVxufVxuIl19
|
|
@@ -4,6 +4,7 @@ export class FlowSettingsService {
|
|
|
4
4
|
constructor() {
|
|
5
5
|
this.entitiesSelectable = signal(true);
|
|
6
6
|
this.elevateNodesOnSelect = signal(true);
|
|
7
|
+
this.elevateEdgesOnSelect = signal(true);
|
|
7
8
|
/**
|
|
8
9
|
* @see {VflowComponent.view}
|
|
9
10
|
*/
|
|
@@ -27,4 +28,4 @@ export class FlowSettingsService {
|
|
|
27
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FlowSettingsService, decorators: [{
|
|
28
29
|
type: Injectable
|
|
29
30
|
}] });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1zZXR0aW5ncy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L3NlcnZpY2VzL2Zsb3ctc2V0dGluZ3Muc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFrQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSW5FLE1BQU0sT0FBTyxtQkFBbUI7SUFEaEM7UUFFUyx1QkFBa0IsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFbEMseUJBQW9CLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BDLHlCQUFvQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUzQzs7V0FFRztRQUNJLFNBQUksR0FBOEMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFNUU7O1dBRUc7UUFDSSxzQkFBaUIsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFckM7O1dBRUc7UUFDSSx1QkFBa0IsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFL0IsWUFBTyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV0QixZQUFPLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXBCLGVBQVUsR0FBRyxNQUFNLENBQWEsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBRWxFLGFBQVEsR0FBRyxNQUFNLENBQW1CLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDcEQ7K0dBNUJZLG1CQUFtQjttSEFBbkIsbUJBQW1COzs0RkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgV3JpdGFibGVTaWduYWwsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFja2dyb3VuZCB9IGZyb20gJy4uL3R5cGVzL2JhY2tncm91bmQudHlwZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGbG93U2V0dGluZ3NTZXJ2aWNlIHtcbiAgcHVibGljIGVudGl0aWVzU2VsZWN0YWJsZSA9IHNpZ25hbCh0cnVlKTtcblxuICBwdWJsaWMgZWxldmF0ZU5vZGVzT25TZWxlY3QgPSBzaWduYWwodHJ1ZSk7XG4gIHB1YmxpYyBlbGV2YXRlRWRnZXNPblNlbGVjdCA9IHNpZ25hbCh0cnVlKTtcblxuICAvKipcbiAgICogQHNlZSB7VmZsb3dDb21wb25lbnQudmlld31cbiAgICovXG4gIHB1YmxpYyB2aWV3OiBXcml0YWJsZVNpZ25hbDxbbnVtYmVyLCBudW1iZXJdIHwgJ2F1dG8nPiA9IHNpZ25hbChbNDAwLCA0MDBdKTtcblxuICAvKipcbiAgICogU2V0IGJhc2VkIG9uIHZpZXcgcHJvcGVydHkuIE1heSBjaGFuZ2UgaWYgdmlldyBpcyAnYXV0bydcbiAgICovXG4gIHB1YmxpYyBjb21wdXRlZEZsb3dXaWR0aCA9IHNpZ25hbCgwKTtcblxuICAvKipcbiAgICogU2V0IGJhc2VkIG9uIHZpZXcgcHJvcGVydHkuIE1heSBjaGFuZ2UgaWYgdmlldyBpcyAnYXV0bydcbiAgICovXG4gIHB1YmxpYyBjb21wdXRlZEZsb3dIZWlnaHQgPSBzaWduYWwoMCk7XG5cbiAgcHVibGljIG1pblpvb20gPSBzaWduYWwoMC41KTtcblxuICBwdWJsaWMgbWF4Wm9vbSA9IHNpZ25hbCgzKTtcblxuICBwdWJsaWMgYmFja2dyb3VuZCA9IHNpZ25hbDxCYWNrZ3JvdW5kPih7IHR5cGU6ICdzb2xpZCcsIGNvbG9yOiAnI2ZmZicgfSk7XG5cbiAgcHVibGljIHNuYXBHcmlkID0gc2lnbmFsPFtudW1iZXIsIG51bWJlcl0+KFsxLCAxXSk7XG59XG4iXX0=
|