@foblex/flow 18.3.0 → 18.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AI.md +69 -0
- package/README.md +40 -3
- package/STYLING.md +35 -0
- package/domain/f-connection/index.d.ts +1 -0
- package/domain/f-connection/providers.d.ts +2 -1
- package/domain/f-connection/redraw-connections/redraw-connections.d.ts +1 -0
- package/domain/f-connection/resolve-connection-endpoint-rotation-context/index.d.ts +2 -0
- package/domain/f-connection/resolve-connection-endpoint-rotation-context/resolve-connection-endpoint-rotation-context-request.d.ts +8 -0
- package/domain/f-connection/resolve-connection-endpoint-rotation-context/resolve-connection-endpoint-rotation-context.d.ts +10 -0
- package/domain/f-draggable/on-pointer-move/on-pointer-move-request.d.ts +1 -1
- package/domain/f-draggable/on-pointer-move/on-pointer-move.d.ts +1 -0
- package/domain/get-normalized-connector-rect/get-normalized-connector-rect.d.ts +8 -0
- package/domain/providers.d.ts +1 -1
- package/esm2022/domain/f-connection/index.mjs +2 -1
- package/esm2022/domain/f-connection/providers.mjs +3 -1
- package/esm2022/domain/f-connection/redraw-connections/redraw-connections.mjs +6 -2
- package/esm2022/domain/f-connection/resolve-connection-endpoint-rotation-context/index.mjs +3 -0
- package/esm2022/domain/f-connection/resolve-connection-endpoint-rotation-context/resolve-connection-endpoint-rotation-context-request.mjs +8 -0
- package/esm2022/domain/f-connection/resolve-connection-endpoint-rotation-context/resolve-connection-endpoint-rotation-context.mjs +35 -0
- package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move-request.mjs +1 -1
- package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move.mjs +6 -2
- package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect.mjs +33 -3
- package/esm2022/f-auto-pan/f-auto-pan-base.mjs +11 -0
- package/esm2022/f-auto-pan/f-auto-pan.mjs +38 -0
- package/esm2022/f-auto-pan/index.mjs +4 -0
- package/esm2022/f-auto-pan/providers.mjs +3 -0
- package/esm2022/f-canvas/f-canvas.component.mjs +2 -2
- package/esm2022/f-connection-v2/components/connection-content/f-connection-content.mjs +18 -4
- package/esm2022/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder-request.mjs +6 -2
- package/esm2022/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder.mjs +3 -1
- package/esm2022/f-connection-v2/utils/connection-behaviour/models/i-calculate-behavior-request.mjs +1 -1
- package/esm2022/f-connection-v2/utils/connection-behaviour/utils/floating-behavior.mjs +8 -8
- package/esm2022/f-connection-v2/utils/connection-behaviour/utils/get-rotated-rounded-rect-intersection.mjs +35 -0
- package/esm2022/f-connection-worker/features/calculate-connection-worker-payload-item/calculate-connection-worker-payload-item.mjs +13 -1
- package/esm2022/f-connection-worker/model/i-f-connection-worker-rect.mjs +1 -1
- package/esm2022/f-connection-worker/model/i-f-connection-worker-request-item.mjs +1 -1
- package/esm2022/f-connection-worker/worker/connection-worker-runtime.mjs +13 -1
- package/esm2022/f-draggable/auto-pan/auto-pan.utils.mjs +58 -0
- package/esm2022/f-draggable/auto-pan/index.mjs +7 -0
- package/esm2022/f-draggable/auto-pan/providers.mjs +5 -0
- package/esm2022/f-draggable/auto-pan/run-auto-pan-frame/index.mjs +3 -0
- package/esm2022/f-draggable/auto-pan/run-auto-pan-frame/run-auto-pan-frame-request.mjs +4 -0
- package/esm2022/f-draggable/auto-pan/run-auto-pan-frame/run-auto-pan-frame.mjs +97 -0
- package/esm2022/f-draggable/auto-pan/stop-auto-pan/index.mjs +3 -0
- package/esm2022/f-draggable/auto-pan/stop-auto-pan/stop-auto-pan-request.mjs +4 -0
- package/esm2022/f-draggable/auto-pan/stop-auto-pan/stop-auto-pan.mjs +32 -0
- package/esm2022/f-draggable/auto-pan/stored-pointer-event.mjs +25 -0
- package/esm2022/f-draggable/auto-pan/sync-auto-pan/index.mjs +3 -0
- package/esm2022/f-draggable/auto-pan/sync-auto-pan/sync-auto-pan-request.mjs +4 -0
- package/esm2022/f-draggable/auto-pan/sync-auto-pan/sync-auto-pan.mjs +75 -0
- package/esm2022/f-draggable/connection/create-connection/create-connection-handler/create-connection-handler.mjs +7 -4
- package/esm2022/f-draggable/connection/reassign-connection/reassign-connection-handler/reassign-connection-source-handler.mjs +7 -4
- package/esm2022/f-draggable/connection/reassign-connection/reassign-connection-handler/reassign-connection-target-handler.mjs +7 -4
- package/esm2022/f-draggable/drag-canvas/drag-canvas-handler/drag-canvas-handler.mjs +6 -3
- package/esm2022/f-draggable/drag-node/drag-node-dependent-connection-handlers/drag-node-connection-handler-base.mjs +6 -3
- package/esm2022/f-draggable/f-draggable-data-context.mjs +14 -1
- package/esm2022/f-draggable/f-draggable.directive.mjs +4 -1
- package/esm2022/f-draggable/index.mjs +2 -1
- package/esm2022/f-draggable/providers.mjs +3 -1
- package/esm2022/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/resize-node-connection-handler-base.mjs +6 -3
- package/esm2022/f-flow/f-flow.component.mjs +2 -2
- package/esm2022/f-flow.module.mjs +20 -16
- package/esm2022/f-storage/f-components-store.mjs +3 -1
- package/esm2022/f-zoom/f-zoom.directive.mjs +9 -11
- package/esm2022/f-zoom/wheel-zoom.utils.mjs +34 -0
- package/esm2022/public-api.mjs +2 -1
- package/f-auto-pan/f-auto-pan-base.d.ts +11 -0
- package/f-auto-pan/f-auto-pan.d.ts +13 -0
- package/f-auto-pan/index.d.ts +3 -0
- package/f-auto-pan/providers.d.ts +2 -0
- package/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder-request.d.ts +4 -1
- package/f-connection-v2/utils/connection-behaviour/models/i-calculate-behavior-request.d.ts +7 -1
- package/f-connection-v2/utils/connection-behaviour/utils/floating-behavior.d.ts +1 -1
- package/f-connection-v2/utils/connection-behaviour/utils/get-rotated-rounded-rect-intersection.d.ts +3 -0
- package/f-connection-worker/features/calculate-connection-worker-payload-item/calculate-connection-worker-payload-item.d.ts +1 -0
- package/f-connection-worker/model/i-f-connection-worker-rect.d.ts +4 -0
- package/f-connection-worker/model/i-f-connection-worker-request-item.d.ts +2 -0
- package/f-draggable/auto-pan/auto-pan.utils.d.ts +6 -0
- package/f-draggable/auto-pan/index.d.ts +6 -0
- package/f-draggable/auto-pan/providers.d.ts +4 -0
- package/f-draggable/auto-pan/run-auto-pan-frame/index.d.ts +2 -0
- package/f-draggable/auto-pan/run-auto-pan-frame/run-auto-pan-frame-request.d.ts +3 -0
- package/f-draggable/auto-pan/run-auto-pan-frame/run-auto-pan-frame.d.ts +21 -0
- package/f-draggable/auto-pan/stop-auto-pan/index.d.ts +2 -0
- package/f-draggable/auto-pan/stop-auto-pan/stop-auto-pan-request.d.ts +3 -0
- package/f-draggable/auto-pan/stop-auto-pan/stop-auto-pan.d.ts +10 -0
- package/f-draggable/auto-pan/stored-pointer-event.d.ts +12 -0
- package/f-draggable/auto-pan/sync-auto-pan/index.d.ts +2 -0
- package/f-draggable/auto-pan/sync-auto-pan/sync-auto-pan-request.d.ts +3 -0
- package/f-draggable/auto-pan/sync-auto-pan/sync-auto-pan.d.ts +19 -0
- package/f-draggable/connection/create-connection/create-connection-handler/create-connection-handler.d.ts +1 -0
- package/f-draggable/connection/reassign-connection/reassign-connection-handler/reassign-connection-source-handler.d.ts +1 -0
- package/f-draggable/connection/reassign-connection/reassign-connection-handler/reassign-connection-target-handler.d.ts +1 -0
- package/f-draggable/drag-node/drag-node-dependent-connection-handlers/drag-node-connection-handler-base.d.ts +1 -0
- package/f-draggable/f-draggable-data-context.d.ts +7 -1
- package/f-draggable/index.d.ts +1 -0
- package/f-draggable/providers.d.ts +1 -1
- package/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/resize-node-connection-handler-base.d.ts +1 -0
- package/f-flow.module.d.ts +17 -16
- package/f-storage/f-components-store.d.ts +2 -0
- package/f-zoom/f-zoom.directive.d.ts +0 -1
- package/f-zoom/wheel-zoom.utils.d.ts +3 -0
- package/fesm2022/foblex-flow.mjs +7648 -7120
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/package.json +7 -7
- package/public-api.d.ts +1 -0
- package/schematics/ng-add/index.js +63 -2
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/shared/foblex-dependencies.js +1 -1
- package/styles/_index.scss +31 -0
- package/styles/default.scss +4 -0
- package/styles/domains/_connection.scss +175 -0
- package/styles/domains/_connector.scss +150 -0
- package/styles/domains/_external-item.scss +44 -0
- package/styles/domains/_flow-canvas.scss +41 -0
- package/styles/domains/_node-group.scss +230 -0
- package/styles/domains/_plugins.scss +100 -0
- package/styles/tokens/_ff-aliases.scss +117 -0
- package/styles/tokens/_primitive.scss +86 -0
- package/styles/tokens/_semantic.scss +131 -0
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { inject, Injectable } from '@angular/core';
|
|
3
|
-
import { FExecutionRegister } from '@foblex/mediator';
|
|
3
|
+
import { FExecutionRegister, FMediator } from '@foblex/mediator';
|
|
4
4
|
import { OnPointerMoveRequest } from './on-pointer-move-request';
|
|
5
5
|
import { FDraggableDataContext } from '../../../f-draggable';
|
|
6
6
|
import { Point } from '@foblex/2d';
|
|
7
7
|
import { FComponentsStore } from '../../../f-storage';
|
|
8
|
+
import { SyncAutoPanRequest } from '../../../f-draggable/auto-pan';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
/**
|
|
10
11
|
* Execution that handles pointer move events during a drag operation.
|
|
@@ -12,13 +13,16 @@ import * as i0 from "@angular/core";
|
|
|
12
13
|
* when the drag started, and updates the draggable items accordingly.
|
|
13
14
|
*/
|
|
14
15
|
let OnPointerMove = class OnPointerMove {
|
|
16
|
+
_mediator = inject(FMediator);
|
|
15
17
|
_store = inject(FComponentsStore);
|
|
16
18
|
get _hostElement() {
|
|
17
19
|
return this._store.fDraggable?.hostElement;
|
|
18
20
|
}
|
|
19
21
|
_dragContext = inject(FDraggableDataContext);
|
|
20
22
|
handle({ event }) {
|
|
23
|
+
this._dragContext.rememberPointerEvent(event);
|
|
21
24
|
this._setDifferenceToDraggableItems(this._getDifferenceBetweenPointerAndPointerDown(event), event);
|
|
25
|
+
this._mediator.execute(new SyncAutoPanRequest());
|
|
22
26
|
}
|
|
23
27
|
_setDifferenceToDraggableItems(difference, event) {
|
|
24
28
|
this._dragContext.draggableItems.forEach((item) => {
|
|
@@ -43,4 +47,4 @@ export { OnPointerMove };
|
|
|
43
47
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OnPointerMove, decorators: [{
|
|
44
48
|
type: Injectable
|
|
45
49
|
}] });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib24tcG9pbnRlci1tb3ZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1kcmFnZ2FibGUvb24tcG9pbnRlci1tb3ZlL29uLXBvaW50ZXItbW92ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sRUFBVSxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBRW5FOzs7O0dBSUc7QUFHSSxJQUFNLGFBQWEsR0FBbkIsTUFBTSxhQUFhO0lBQ1AsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QixNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFbkQsSUFBWSxZQUFZO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsV0FBMEIsQ0FBQztJQUM1RCxDQUFDO0lBRWdCLFlBQVksR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUV2RCxNQUFNLENBQUMsRUFBRSxLQUFLLEVBQXdCO1FBQzNDLElBQUksQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFOUMsSUFBSSxDQUFDLDhCQUE4QixDQUNqQyxJQUFJLENBQUMsMENBQTBDLENBQUMsS0FBSyxDQUFDLEVBQ3RELEtBQUssQ0FDTixDQUFDO1FBQ0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQU8sSUFBSSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVPLDhCQUE4QixDQUFDLFVBQWtCLEVBQUUsS0FBb0I7UUFDN0UsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDaEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEdBQUcsVUFBVSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDL0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sMENBQTBDLENBQUMsS0FBb0I7UUFDckUsT0FBTyxJQUFJLENBQUMsMkJBQTJCLENBQUMsS0FBSyxDQUFDO2FBQzNDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDO2FBQ3pDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVPLDJCQUEyQixDQUFDLEtBQW9CO1FBQ3RELE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbEYsQ0FBQzt3R0FsQ1UsYUFBYTs0R0FBYixhQUFhOztBQUFiLGFBQWE7SUFEekIsa0JBQWtCLENBQUMsb0JBQW9CLENBQUM7R0FDNUIsYUFBYSxDQW1DekI7OzRGQW5DWSxhQUFhO2tCQUZ6QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgT25Qb2ludGVyTW92ZVJlcXVlc3QgfSBmcm9tICcuL29uLXBvaW50ZXItbW92ZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2YtZHJhZ2dhYmxlJztcbmltcG9ydCB7IElQb2ludCwgUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgSVBvaW50ZXJFdmVudCB9IGZyb20gJy4uLy4uLy4uL2RyYWctdG9vbGtpdCc7XG5pbXBvcnQgeyBTeW5jQXV0b1BhblJlcXVlc3QgfSBmcm9tICcuLi8uLi8uLi9mLWRyYWdnYWJsZS9hdXRvLXBhbic7XG5cbi8qKlxuICogRXhlY3V0aW9uIHRoYXQgaGFuZGxlcyBwb2ludGVyIG1vdmUgZXZlbnRzIGR1cmluZyBhIGRyYWcgb3BlcmF0aW9uLlxuICogSXQgY2FsY3VsYXRlcyB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSBjdXJyZW50IHBvaW50ZXIgcG9zaXRpb24gYW5kIHRoZSBwb3NpdGlvblxuICogd2hlbiB0aGUgZHJhZyBzdGFydGVkLCBhbmQgdXBkYXRlcyB0aGUgZHJhZ2dhYmxlIGl0ZW1zIGFjY29yZGluZ2x5LlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKE9uUG9pbnRlck1vdmVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIE9uUG9pbnRlck1vdmUgaW1wbGVtZW50cyBJRXhlY3V0aW9uPE9uUG9pbnRlck1vdmVSZXF1ZXN0LCB2b2lkPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuXG4gIHByaXZhdGUgZ2V0IF9ob3N0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZEcmFnZ2FibGU/Lmhvc3RFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZHJhZ0NvbnRleHQgPSBpbmplY3QoRkRyYWdnYWJsZURhdGFDb250ZXh0KTtcblxuICBwdWJsaWMgaGFuZGxlKHsgZXZlbnQgfTogT25Qb2ludGVyTW92ZVJlcXVlc3QpOiB2b2lkIHtcbiAgICB0aGlzLl9kcmFnQ29udGV4dC5yZW1lbWJlclBvaW50ZXJFdmVudChldmVudCk7XG5cbiAgICB0aGlzLl9zZXREaWZmZXJlbmNlVG9EcmFnZ2FibGVJdGVtcyhcbiAgICAgIHRoaXMuX2dldERpZmZlcmVuY2VCZXR3ZWVuUG9pbnRlckFuZFBvaW50ZXJEb3duKGV2ZW50KSxcbiAgICAgIGV2ZW50LFxuICAgICk7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgU3luY0F1dG9QYW5SZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0RGlmZmVyZW5jZVRvRHJhZ2dhYmxlSXRlbXMoZGlmZmVyZW5jZTogSVBvaW50LCBldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuX2RyYWdDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGl0ZW0ub25Qb2ludGVyTW92ZSh7IC4uLmRpZmZlcmVuY2UgfSwgZXZlbnQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RGlmZmVyZW5jZUJldHdlZW5Qb2ludGVyQW5kUG9pbnRlckRvd24oZXZlbnQ6IElQb2ludGVyRXZlbnQpOiBJUG9pbnQge1xuICAgIHJldHVybiB0aGlzLl9nZXRQb2ludGVyUG9zaXRpb25JbkNhbnZhcyhldmVudClcbiAgICAgIC5kaXYodGhpcy5fZHJhZ0NvbnRleHQub25Qb2ludGVyRG93blNjYWxlKVxuICAgICAgLnN1Yih0aGlzLl9kcmFnQ29udGV4dC5vblBvaW50ZXJEb3duUG9zaXRpb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0UG9pbnRlclBvc2l0aW9uSW5DYW52YXMoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiBQb2ludCB7XG4gICAgcmV0dXJuIFBvaW50LmZyb21Qb2ludChldmVudC5nZXRQb3NpdGlvbigpKS5lbGVtZW50VHJhbnNmb3JtKHRoaXMuX2hvc3RFbGVtZW50KTtcbiAgfVxufVxuIl19
|
|
@@ -38,7 +38,13 @@ let GetNormalizedConnectorRect = class GetNormalizedConnectorRect {
|
|
|
38
38
|
return this._getRoundedRect(RectExtensions.fromElement(element), element, this._getComputedStyle(element));
|
|
39
39
|
}
|
|
40
40
|
_getRoundedRect(rect, element, styles) {
|
|
41
|
-
|
|
41
|
+
const [radius1, radius2, radius3, radius4] = this._normalizeCircularBorderRadii(rect.width, rect.height, [
|
|
42
|
+
this._getSystemRadius(styles.borderTopLeftRadius, element, styles.fontSize),
|
|
43
|
+
this._getSystemRadius(styles.borderTopRightRadius, element, styles.fontSize),
|
|
44
|
+
this._getSystemRadius(styles.borderBottomRightRadius, element, styles.fontSize),
|
|
45
|
+
this._getSystemRadius(styles.borderBottomLeftRadius, element, styles.fontSize),
|
|
46
|
+
]);
|
|
47
|
+
return new RoundedRect(rect.x, rect.y, rect.width, rect.height, radius1, radius2, radius3, radius4);
|
|
42
48
|
}
|
|
43
49
|
_getComputedStyle(element) {
|
|
44
50
|
return this._browser.window.getComputedStyle(element);
|
|
@@ -46,6 +52,27 @@ let GetNormalizedConnectorRect = class GetNormalizedConnectorRect {
|
|
|
46
52
|
_toPixels(value, element, fontSize) {
|
|
47
53
|
return this._browser.toPixels(value, element.clientWidth, element.clientHeight, fontSize) || 0;
|
|
48
54
|
}
|
|
55
|
+
_getSystemRadius(value, element, fontSize) {
|
|
56
|
+
return this._toPixels(value, element, fontSize) * this._transform.scale;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Mirrors CSS border-radius normalization so oversized values like `999px`
|
|
60
|
+
* collapse to the largest valid circular radii for the current rect.
|
|
61
|
+
*/
|
|
62
|
+
_normalizeCircularBorderRadii(width, height, radii) {
|
|
63
|
+
const [topLeft, topRight, bottomRight, bottomLeft] = radii.map((value) => Math.max(0, value));
|
|
64
|
+
const scale = Math.min(1, this._getRadiusScaleFactor(width, topLeft + topRight), this._getRadiusScaleFactor(height, topRight + bottomRight), this._getRadiusScaleFactor(width, bottomRight + bottomLeft), this._getRadiusScaleFactor(height, bottomLeft + topLeft));
|
|
65
|
+
return [topLeft * scale, topRight * scale, bottomRight * scale, bottomLeft * scale];
|
|
66
|
+
}
|
|
67
|
+
_getRadiusScaleFactor(limit, sum) {
|
|
68
|
+
if (sum <= 0) {
|
|
69
|
+
return 1;
|
|
70
|
+
}
|
|
71
|
+
if (limit <= 0) {
|
|
72
|
+
return 0;
|
|
73
|
+
}
|
|
74
|
+
return limit / sum;
|
|
75
|
+
}
|
|
49
76
|
_normalizePosition(rect) {
|
|
50
77
|
return calculatePointerInFlow(rect, this._store.flowHost, this._transform);
|
|
51
78
|
}
|
|
@@ -53,7 +80,10 @@ let GetNormalizedConnectorRect = class GetNormalizedConnectorRect {
|
|
|
53
80
|
return SizeExtensions.initialize(rect.width / this._transform.scale, rect.height / this._transform.scale);
|
|
54
81
|
}
|
|
55
82
|
_getUnscaledRect(position, size, rect) {
|
|
56
|
-
return new RoundedRect(position.x, position.y, size.width, size.height, rect.radius1, rect.radius2, rect.radius3, rect.radius4);
|
|
83
|
+
return new RoundedRect(position.x, position.y, size.width, size.height, this._unscaleRadius(rect.radius1), this._unscaleRadius(rect.radius2), this._unscaleRadius(rect.radius3), this._unscaleRadius(rect.radius4));
|
|
84
|
+
}
|
|
85
|
+
_unscaleRadius(radius) {
|
|
86
|
+
return radius / this._transform.scale;
|
|
57
87
|
}
|
|
58
88
|
_getOffsetSize(element, size) {
|
|
59
89
|
return SizeExtensions.offsetFromElement(element) || size;
|
|
@@ -68,4 +98,4 @@ export { GetNormalizedConnectorRect };
|
|
|
68
98
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetNormalizedConnectorRect, decorators: [{
|
|
69
99
|
type: Injectable
|
|
70
100
|
}] });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5vcm1hbGl6ZWQtY29ubmVjdG9yLXJlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtbm9ybWFsaXplZC1jb25uZWN0b3ItcmVjdC9nZXQtbm9ybWFsaXplZC1jb25uZWN0b3ItcmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDNUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFNTCxjQUFjLEVBQ2QsV0FBVyxFQUNYLGNBQWMsR0FDZixNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFFckQ7Ozs7R0FJRztBQUdJLElBQU0sMEJBQTBCLEdBQWhDLE1BQU0sMEJBQTBCO0lBSXBCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFbkQsSUFBWSxVQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7SUFDL0IsQ0FBQztJQUVNLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQXFDO1FBQ2pF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RUFDbEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FDcEMsQ0FBQztJQUNKLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxRQUFnQixFQUFFLElBQVcsRUFBRSxJQUFrQjtRQUN4RSxPQUFPLElBQUksV0FBVyxDQUNwQixRQUFRLENBQUMsQ0FBQyxFQUNWLFFBQVEsQ0FBQyxDQUFDLEVBQ1YsSUFBSSxDQUFDLEtBQUssRUFDVixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxPQUFPLEVBQ1osSUFBSSxDQUFDLE9BQU8sRUFDWixJQUFJLENBQUMsT0FBTyxFQUNaLElBQUksQ0FBQyxPQUFPLENBQ2IsQ0FBQztJQUNKLENBQUM7SUFFTyxjQUFjLENBQUMsT0FBaUMsRUFBRSxJQUFXO1FBQ25FLE9BQU8sY0FBYyxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQztJQUMzRCxDQUFDO3dHQTdGVSwwQkFBMEI7NEdBQTFCLDBCQUEwQjs7QUFBMUIsMEJBQTBCO0lBRHRDLGtCQUFrQixDQUFDLGlDQUFpQyxDQUFDO0dBQ3pDLDBCQUEwQixDQThGdEM7OzRGQTlGWSwwQkFBMEI7a0JBRnRDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdldE5vcm1hbGl6ZWRDb25uZWN0b3JSZWN0UmVxdWVzdCB9IGZyb20gJy4vZ2V0LW5vcm1hbGl6ZWQtY29ubmVjdG9yLXJlY3QtcmVxdWVzdCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQge1xuICBJUG9pbnQsXG4gIElSZWN0LFxuICBJUm91bmRlZFJlY3QsXG4gIElTaXplLFxuICBJVHJhbnNmb3JtTW9kZWwsXG4gIFJlY3RFeHRlbnNpb25zLFxuICBSb3VuZGVkUmVjdCxcbiAgU2l6ZUV4dGVuc2lvbnMsXG59IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgR2V0Q2FjaGVkRkNhY2hlUmVjdFJlcXVlc3QsIFVwZGF0ZUZDYWNoZVJlY3RCeUVsZW1lbnRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZi1jYWNoZSc7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJ0Bmb2JsZXgvcGxhdGZvcm0nO1xuaW1wb3J0IHsgY2FsY3VsYXRlUG9pbnRlckluRmxvdyB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxuLyoqXG4gKiBFeGVjdXRpb24gdGhhdCByZXRyaWV2ZXMgdGhlIG5vcm1hbGl6ZWQgcmVjdGFuZ2xlIG9mIGEgY29ubmVjdG9yLlxuICogSXQgY2FsY3VsYXRlcyB0aGUgcmVjdGFuZ2xlIGJhc2VkIG9uIHRoZSBlbGVtZW50J3MgcG9zaXRpb24gYW5kIHNpemUsXG4gKiBhZGp1c3RpbmcgZm9yIHRoZSBjYW52YXMgdHJhbnNmb3JtYXRpb24gYW5kIGVsZW1lbnQgb2Zmc2V0cy5cbiAqL1xuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihHZXROb3JtYWxpemVkQ29ubmVjdG9yUmVjdFJlcXVlc3QpXG5leHBvcnQgY2xhc3MgR2V0Tm9ybWFsaXplZENvbm5lY3RvclJlY3QgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFxuICBHZXROb3JtYWxpemVkQ29ubmVjdG9yUmVjdFJlcXVlc3QsXG4gIElSb3VuZGVkUmVjdFxuPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9icm93c2VyID0gaW5qZWN0KEJyb3dzZXJTZXJ2aWNlKTtcblxuICBwcml2YXRlIGdldCBfdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLnRyYW5zZm9ybTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoeyBlbGVtZW50LCBjYWNoZSB9OiBHZXROb3JtYWxpemVkQ29ubmVjdG9yUmVjdFJlcXVlc3QpOiBJUm91bmRlZFJlY3Qge1xuICAgIGNvbnN0IGNhY2hlZFJlY3QgPSB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElSb3VuZGVkUmVjdCB8IHVuZGVmaW5lZD4oXG4gICAgICBuZXcgR2V0Q2FjaGVkRkNhY2hlUmVjdFJlcXVlc3QoZWxlbWVudCksXG4gICAgKTtcbiAgICBpZiAoY2FjaGVkUmVjdCAmJiBjYWNoZSkge1xuICAgICAgcmV0dXJuIGNhY2hlZFJlY3Q7XG4gICAgfVxuXG4gICAgY29uc3Qgc3lzdGVtUmVjdCA9IHRoaXMuX2dldEVsZW1lbnRSb3VuZGVkUmVjdChlbGVtZW50KTtcbiAgICBjb25zdCBwb3NpdGlvbiA9IHRoaXMuX25vcm1hbGl6ZVBvc2l0aW9uKHN5c3RlbVJlY3QpO1xuICAgIGNvbnN0IHVuc2NhbGVkU2l6ZSA9IHRoaXMuX3Vuc2NhbGVTaXplKHN5c3RlbVJlY3QpO1xuICAgIGNvbnN0IHVuc2NhbGVkUmVjdCA9IHRoaXMuX2dldFVuc2NhbGVkUmVjdChwb3NpdGlvbiwgdW5zY2FsZWRTaXplLCBzeXN0ZW1SZWN0KTtcblxuICAgIGNvbnN0IG9mZnNldFNpemUgPSB0aGlzLl9nZXRPZmZzZXRTaXplKGVsZW1lbnQsIHVuc2NhbGVkU2l6ZSk7XG5cbiAgICBjb25zdCByZWN0ID0gUm91bmRlZFJlY3QuZnJvbUNlbnRlcih1bnNjYWxlZFJlY3QsIG9mZnNldFNpemUud2lkdGgsIG9mZnNldFNpemUuaGVpZ2h0KTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IFVwZGF0ZUZDYWNoZVJlY3RCeUVsZW1lbnRSZXF1ZXN0KGVsZW1lbnQsIHJlY3QpKTtcblxuICAgIHJldHVybiByZWN0O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RWxlbWVudFJvdW5kZWRSZWN0KGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCk6IElSb3VuZGVkUmVjdCB7XG4gICAgcmV0dXJuIHRoaXMuX2dldFJvdW5kZWRSZWN0KFxuICAgICAgUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQoZWxlbWVudCksXG4gICAgICBlbGVtZW50LFxuICAgICAgdGhpcy5fZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Um91bmRlZFJlY3QoXG4gICAgcmVjdDogSVJlY3QsXG4gICAgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50LFxuICAgIHN0eWxlczogQ1NTU3R5bGVEZWNsYXJhdGlvbixcbiAgKTogUm91bmRlZFJlY3Qge1xuICAgIHJldHVybiBuZXcgUm91bmRlZFJlY3QoXG4gICAgICByZWN0LngsXG4gICAgICByZWN0LnksXG4gICAgICByZWN0LndpZHRoLFxuICAgICAgcmVjdC5oZWlnaHQsXG4gICAgICB0aGlzLl90b1BpeGVscyhzdHlsZXMuYm9yZGVyVG9wTGVmdFJhZGl1cywgZWxlbWVudCwgc3R5bGVzLmZvbnRTaXplKSxcbiAgICAgIHRoaXMuX3RvUGl4ZWxzKHN0eWxlcy5ib3JkZXJUb3BSaWdodFJhZGl1cywgZWxlbWVudCwgc3R5bGVzLmZvbnRTaXplKSxcbiAgICAgIHRoaXMuX3RvUGl4ZWxzKHN0eWxlcy5ib3JkZXJCb3R0b21SaWdodFJhZGl1cywgZWxlbWVudCwgc3R5bGVzLmZvbnRTaXplKSxcbiAgICAgIHRoaXMuX3RvUGl4ZWxzKHN0eWxlcy5ib3JkZXJCb3R0b21MZWZ0UmFkaXVzLCBlbGVtZW50LCBzdHlsZXMuZm9udFNpemUpLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCk6IENTU1N0eWxlRGVjbGFyYXRpb24ge1xuICAgIHJldHVybiB0aGlzLl9icm93c2VyLndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdG9QaXhlbHModmFsdWU6IHN0cmluZywgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50LCBmb250U2l6ZTogc3RyaW5nKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fYnJvd3Nlci50b1BpeGVscyh2YWx1ZSwgZWxlbWVudC5jbGllbnRXaWR0aCwgZWxlbWVudC5jbGllbnRIZWlnaHQsIGZvbnRTaXplKSB8fCAwO1xuICB9XG5cbiAgcHJpdmF0ZSBfbm9ybWFsaXplUG9zaXRpb24ocmVjdDogSVJvdW5kZWRSZWN0KTogSVBvaW50IHtcbiAgICByZXR1cm4gY2FsY3VsYXRlUG9pbnRlckluRmxvdyhyZWN0LCB0aGlzLl9zdG9yZS5mbG93SG9zdCwgdGhpcy5fdHJhbnNmb3JtKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Vuc2NhbGVTaXplKHJlY3Q6IElSb3VuZGVkUmVjdCk6IElTaXplIHtcbiAgICByZXR1cm4gU2l6ZUV4dGVuc2lvbnMuaW5pdGlhbGl6ZShcbiAgICAgIHJlY3Qud2lkdGggLyB0aGlzLl90cmFuc2Zvcm0uc2NhbGUsXG4gICAgICByZWN0LmhlaWdodCAvIHRoaXMuX3RyYW5zZm9ybS5zY2FsZSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0VW5zY2FsZWRSZWN0KHBvc2l0aW9uOiBJUG9pbnQsIHNpemU6IElTaXplLCByZWN0OiBJUm91bmRlZFJlY3QpOiBJUm91bmRlZFJlY3Qge1xuICAgIHJldHVybiBuZXcgUm91bmRlZFJlY3QoXG4gICAgICBwb3NpdGlvbi54LFxuICAgICAgcG9zaXRpb24ueSxcbiAgICAgIHNpemUud2lkdGgsXG4gICAgICBzaXplLmhlaWdodCxcbiAgICAgIHJlY3QucmFkaXVzMSxcbiAgICAgIHJlY3QucmFkaXVzMixcbiAgICAgIHJlY3QucmFkaXVzMyxcbiAgICAgIHJlY3QucmFkaXVzNCxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0T2Zmc2V0U2l6ZShlbGVtZW50OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQsIHNpemU6IElTaXplKTogSVNpemUge1xuICAgIHJldHVybiBTaXplRXh0ZW5zaW9ucy5vZmZzZXRGcm9tRWxlbWVudChlbGVtZW50KSB8fCBzaXplO1xuICB9XG59XG4iXX0=
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5vcm1hbGl6ZWQtY29ubmVjdG9yLXJlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtbm9ybWFsaXplZC1jb25uZWN0b3ItcmVjdC9nZXQtbm9ybWFsaXplZC1jb25uZWN0b3ItcmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDNUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFNTCxjQUFjLEVBQ2QsV0FBVyxFQUNYLGNBQWMsR0FDZixNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFFckQ7Ozs7R0FJRztBQUdJLElBQU0sMEJBQTBCLEdBQWhDLE1BQU0sMEJBQTBCO0lBR3BCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFbkQsSUFBWSxVQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7SUFDL0IsQ0FBQztJQUVNLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQXFDO1FBQ2pF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MEI7SUFEdEMsa0JBQWtCLENBQUMsaUNBQWlDLENBQUM7R0FDekMsMEJBQTBCLENBd0p0Qzs7NEZBeEpZLDBCQUEwQjtrQkFGdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2V0Tm9ybWFsaXplZENvbm5lY3RvclJlY3RSZXF1ZXN0IH0gZnJvbSAnLi9nZXQtbm9ybWFsaXplZC1jb25uZWN0b3ItcmVjdC1yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7XG4gIElQb2ludCxcbiAgSVJlY3QsXG4gIElSb3VuZGVkUmVjdCxcbiAgSVNpemUsXG4gIElUcmFuc2Zvcm1Nb2RlbCxcbiAgUmVjdEV4dGVuc2lvbnMsXG4gIFJvdW5kZWRSZWN0LFxuICBTaXplRXh0ZW5zaW9ucyxcbn0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBHZXRDYWNoZWRGQ2FjaGVSZWN0UmVxdWVzdCwgVXBkYXRlRkNhY2hlUmVjdEJ5RWxlbWVudFJlcXVlc3QgfSBmcm9tICcuLi8uLi9mLWNhY2hlJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnQGZvYmxleC9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBjYWxjdWxhdGVQb2ludGVySW5GbG93IH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IHJldHJpZXZlcyB0aGUgbm9ybWFsaXplZCByZWN0YW5nbGUgb2YgYSBjb25uZWN0b3IuXG4gKiBJdCBjYWxjdWxhdGVzIHRoZSByZWN0YW5nbGUgYmFzZWQgb24gdGhlIGVsZW1lbnQncyBwb3NpdGlvbiBhbmQgc2l6ZSxcbiAqIGFkanVzdGluZyBmb3IgdGhlIGNhbnZhcyB0cmFuc2Zvcm1hdGlvbiBhbmQgZWxlbWVudCBvZmZzZXRzLlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEdldE5vcm1hbGl6ZWRDb25uZWN0b3JSZWN0UmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXROb3JtYWxpemVkQ29ubmVjdG9yUmVjdFxuICBpbXBsZW1lbnRzIElFeGVjdXRpb248R2V0Tm9ybWFsaXplZENvbm5lY3RvclJlY3RSZXF1ZXN0LCBJUm91bmRlZFJlY3Q+XG57XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9icm93c2VyID0gaW5qZWN0KEJyb3dzZXJTZXJ2aWNlKTtcblxuICBwcml2YXRlIGdldCBfdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLnRyYW5zZm9ybTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoeyBlbGVtZW50LCBjYWNoZSB9OiBHZXROb3JtYWxpemVkQ29ubmVjdG9yUmVjdFJlcXVlc3QpOiBJUm91bmRlZFJlY3Qge1xuICAgIGNvbnN0IGNhY2hlZFJlY3QgPSB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElSb3VuZGVkUmVjdCB8IHVuZGVmaW5lZD4oXG4gICAgICBuZXcgR2V0Q2FjaGVkRkNhY2hlUmVjdFJlcXVlc3QoZWxlbWVudCksXG4gICAgKTtcbiAgICBpZiAoY2FjaGVkUmVjdCAmJiBjYWNoZSkge1xuICAgICAgcmV0dXJuIGNhY2hlZFJlY3Q7XG4gICAgfVxuXG4gICAgY29uc3Qgc3lzdGVtUmVjdCA9IHRoaXMuX2dldEVsZW1lbnRSb3VuZGVkUmVjdChlbGVtZW50KTtcbiAgICBjb25zdCBwb3NpdGlvbiA9IHRoaXMuX25vcm1hbGl6ZVBvc2l0aW9uKHN5c3RlbVJlY3QpO1xuICAgIGNvbnN0IHVuc2NhbGVkU2l6ZSA9IHRoaXMuX3Vuc2NhbGVTaXplKHN5c3RlbVJlY3QpO1xuICAgIGNvbnN0IHVuc2NhbGVkUmVjdCA9IHRoaXMuX2dldFVuc2NhbGVkUmVjdChwb3NpdGlvbiwgdW5zY2FsZWRTaXplLCBzeXN0ZW1SZWN0KTtcblxuICAgIGNvbnN0IG9mZnNldFNpemUgPSB0aGlzLl9nZXRPZmZzZXRTaXplKGVsZW1lbnQsIHVuc2NhbGVkU2l6ZSk7XG5cbiAgICBjb25zdCByZWN0ID0gUm91bmRlZFJlY3QuZnJvbUNlbnRlcih1bnNjYWxlZFJlY3QsIG9mZnNldFNpemUud2lkdGgsIG9mZnNldFNpemUuaGVpZ2h0KTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IFVwZGF0ZUZDYWNoZVJlY3RCeUVsZW1lbnRSZXF1ZXN0KGVsZW1lbnQsIHJlY3QpKTtcblxuICAgIHJldHVybiByZWN0O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RWxlbWVudFJvdW5kZWRSZWN0KGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCk6IElSb3VuZGVkUmVjdCB7XG4gICAgcmV0dXJuIHRoaXMuX2dldFJvdW5kZWRSZWN0KFxuICAgICAgUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQoZWxlbWVudCksXG4gICAgICBlbGVtZW50LFxuICAgICAgdGhpcy5fZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Um91bmRlZFJlY3QoXG4gICAgcmVjdDogSVJlY3QsXG4gICAgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50LFxuICAgIHN0eWxlczogQ1NTU3R5bGVEZWNsYXJhdGlvbixcbiAgKTogUm91bmRlZFJlY3Qge1xuICAgIGNvbnN0IFtyYWRpdXMxLCByYWRpdXMyLCByYWRpdXMzLCByYWRpdXM0XSA9IHRoaXMuX25vcm1hbGl6ZUNpcmN1bGFyQm9yZGVyUmFkaWkoXG4gICAgICByZWN0LndpZHRoLFxuICAgICAgcmVjdC5oZWlnaHQsXG4gICAgICBbXG4gICAgICAgIHRoaXMuX2dldFN5c3RlbVJhZGl1cyhzdHlsZXMuYm9yZGVyVG9wTGVmdFJhZGl1cywgZWxlbWVudCwgc3R5bGVzLmZvbnRTaXplKSxcbiAgICAgICAgdGhpcy5fZ2V0U3lzdGVtUmFkaXVzKHN0eWxlcy5ib3JkZXJUb3BSaWdodFJhZGl1cywgZWxlbWVudCwgc3R5bGVzLmZvbnRTaXplKSxcbiAgICAgICAgdGhpcy5fZ2V0U3lzdGVtUmFkaXVzKHN0eWxlcy5ib3JkZXJCb3R0b21SaWdodFJhZGl1cywgZWxlbWVudCwgc3R5bGVzLmZvbnRTaXplKSxcbiAgICAgICAgdGhpcy5fZ2V0U3lzdGVtUmFkaXVzKHN0eWxlcy5ib3JkZXJCb3R0b21MZWZ0UmFkaXVzLCBlbGVtZW50LCBzdHlsZXMuZm9udFNpemUpLFxuICAgICAgXSxcbiAgICApO1xuXG4gICAgcmV0dXJuIG5ldyBSb3VuZGVkUmVjdChcbiAgICAgIHJlY3QueCxcbiAgICAgIHJlY3QueSxcbiAgICAgIHJlY3Qud2lkdGgsXG4gICAgICByZWN0LmhlaWdodCxcbiAgICAgIHJhZGl1czEsXG4gICAgICByYWRpdXMyLFxuICAgICAgcmFkaXVzMyxcbiAgICAgIHJhZGl1czQsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENvbXB1dGVkU3R5bGUoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50KTogQ1NTU3R5bGVEZWNsYXJhdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Jyb3dzZXIud2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIF90b1BpeGVscyh2YWx1ZTogc3RyaW5nLCBlbGVtZW50OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQsIGZvbnRTaXplOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9icm93c2VyLnRvUGl4ZWxzKHZhbHVlLCBlbGVtZW50LmNsaWVudFdpZHRoLCBlbGVtZW50LmNsaWVudEhlaWdodCwgZm9udFNpemUpIHx8IDA7XG4gIH1cblxuICBwcml2YXRlIF9nZXRTeXN0ZW1SYWRpdXMoXG4gICAgdmFsdWU6IHN0cmluZyxcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQsXG4gICAgZm9udFNpemU6IHN0cmluZyxcbiAgKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fdG9QaXhlbHModmFsdWUsIGVsZW1lbnQsIGZvbnRTaXplKSAqIHRoaXMuX3RyYW5zZm9ybS5zY2FsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNaXJyb3JzIENTUyBib3JkZXItcmFkaXVzIG5vcm1hbGl6YXRpb24gc28gb3ZlcnNpemVkIHZhbHVlcyBsaWtlIGA5OTlweGBcbiAgICogY29sbGFwc2UgdG8gdGhlIGxhcmdlc3QgdmFsaWQgY2lyY3VsYXIgcmFkaWkgZm9yIHRoZSBjdXJyZW50IHJlY3QuXG4gICAqL1xuICBwcml2YXRlIF9ub3JtYWxpemVDaXJjdWxhckJvcmRlclJhZGlpKFxuICAgIHdpZHRoOiBudW1iZXIsXG4gICAgaGVpZ2h0OiBudW1iZXIsXG4gICAgcmFkaWk6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdLFxuICApOiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXSB7XG4gICAgY29uc3QgW3RvcExlZnQsIHRvcFJpZ2h0LCBib3R0b21SaWdodCwgYm90dG9tTGVmdF0gPSByYWRpaS5tYXAoKHZhbHVlKSA9PlxuICAgICAgTWF0aC5tYXgoMCwgdmFsdWUpLFxuICAgICkgYXMgW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl07XG5cbiAgICBjb25zdCBzY2FsZSA9IE1hdGgubWluKFxuICAgICAgMSxcbiAgICAgIHRoaXMuX2dldFJhZGl1c1NjYWxlRmFjdG9yKHdpZHRoLCB0b3BMZWZ0ICsgdG9wUmlnaHQpLFxuICAgICAgdGhpcy5fZ2V0UmFkaXVzU2NhbGVGYWN0b3IoaGVpZ2h0LCB0b3BSaWdodCArIGJvdHRvbVJpZ2h0KSxcbiAgICAgIHRoaXMuX2dldFJhZGl1c1NjYWxlRmFjdG9yKHdpZHRoLCBib3R0b21SaWdodCArIGJvdHRvbUxlZnQpLFxuICAgICAgdGhpcy5fZ2V0UmFkaXVzU2NhbGVGYWN0b3IoaGVpZ2h0LCBib3R0b21MZWZ0ICsgdG9wTGVmdCksXG4gICAgKTtcblxuICAgIHJldHVybiBbdG9wTGVmdCAqIHNjYWxlLCB0b3BSaWdodCAqIHNjYWxlLCBib3R0b21SaWdodCAqIHNjYWxlLCBib3R0b21MZWZ0ICogc2NhbGVdO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0UmFkaXVzU2NhbGVGYWN0b3IobGltaXQ6IG51bWJlciwgc3VtOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGlmIChzdW0gPD0gMCkge1xuICAgICAgcmV0dXJuIDE7XG4gICAgfVxuXG4gICAgaWYgKGxpbWl0IDw9IDApIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIHJldHVybiBsaW1pdCAvIHN1bTtcbiAgfVxuXG4gIHByaXZhdGUgX25vcm1hbGl6ZVBvc2l0aW9uKHJlY3Q6IElSb3VuZGVkUmVjdCk6IElQb2ludCB7XG4gICAgcmV0dXJuIGNhbGN1bGF0ZVBvaW50ZXJJbkZsb3cocmVjdCwgdGhpcy5fc3RvcmUuZmxvd0hvc3QsIHRoaXMuX3RyYW5zZm9ybSk7XG4gIH1cblxuICBwcml2YXRlIF91bnNjYWxlU2l6ZShyZWN0OiBJUm91bmRlZFJlY3QpOiBJU2l6ZSB7XG4gICAgcmV0dXJuIFNpemVFeHRlbnNpb25zLmluaXRpYWxpemUoXG4gICAgICByZWN0LndpZHRoIC8gdGhpcy5fdHJhbnNmb3JtLnNjYWxlLFxuICAgICAgcmVjdC5oZWlnaHQgLyB0aGlzLl90cmFuc2Zvcm0uc2NhbGUsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldFVuc2NhbGVkUmVjdChwb3NpdGlvbjogSVBvaW50LCBzaXplOiBJU2l6ZSwgcmVjdDogSVJvdW5kZWRSZWN0KTogSVJvdW5kZWRSZWN0IHtcbiAgICByZXR1cm4gbmV3IFJvdW5kZWRSZWN0KFxuICAgICAgcG9zaXRpb24ueCxcbiAgICAgIHBvc2l0aW9uLnksXG4gICAgICBzaXplLndpZHRoLFxuICAgICAgc2l6ZS5oZWlnaHQsXG4gICAgICB0aGlzLl91bnNjYWxlUmFkaXVzKHJlY3QucmFkaXVzMSksXG4gICAgICB0aGlzLl91bnNjYWxlUmFkaXVzKHJlY3QucmFkaXVzMiksXG4gICAgICB0aGlzLl91bnNjYWxlUmFkaXVzKHJlY3QucmFkaXVzMyksXG4gICAgICB0aGlzLl91bnNjYWxlUmFkaXVzKHJlY3QucmFkaXVzNCksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Vuc2NhbGVSYWRpdXMocmFkaXVzOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiByYWRpdXMgLyB0aGlzLl90cmFuc2Zvcm0uc2NhbGU7XG4gIH1cblxuICBwcml2YXRlIF9nZXRPZmZzZXRTaXplKGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCwgc2l6ZTogSVNpemUpOiBJU2l6ZSB7XG4gICAgcmV0dXJuIFNpemVFeHRlbnNpb25zLm9mZnNldEZyb21FbGVtZW50KGVsZW1lbnQpIHx8IHNpemU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Directive, ElementRef, inject } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class FAutoPanBase {
|
|
4
|
+
hostElement = inject((ElementRef)).nativeElement;
|
|
5
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FAutoPanBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: FAutoPanBase, ngImport: i0 });
|
|
7
|
+
}
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FAutoPanBase, decorators: [{
|
|
9
|
+
type: Directive
|
|
10
|
+
}] });
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1hdXRvLXBhbi1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWF1dG8tcGFuL2YtYXV0by1wYW4tYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQTRCLE1BQU0sZUFBZSxDQUFDOztBQUl4RixNQUFNLE9BQWdCLFlBQVk7SUFDaEIsV0FBVyxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDLGFBQWEsQ0FBQzt3R0FEeEQsWUFBWTs0RkFBWixZQUFZOzs0RkFBWixZQUFZO2tCQURqQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbmplY3QsIElucHV0U2lnbmFsV2l0aFRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUhhc0hvc3RFbGVtZW50IH0gZnJvbSAnLi4vaS1oYXMtaG9zdC1lbGVtZW50JztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRkF1dG9QYW5CYXNlIGltcGxlbWVudHMgSUhhc0hvc3RFbGVtZW50IHtcbiAgcHVibGljIHJlYWRvbmx5IGhvc3RFbGVtZW50ID0gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KS5uYXRpdmVFbGVtZW50O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmRWRnZVRocmVzaG9sZDogSW5wdXRTaWduYWxXaXRoVHJhbnNmb3JtPG51bWJlciwgdW5rbm93bj47XG5cbiAgcHVibGljIGFic3RyYWN0IGZTcGVlZDogSW5wdXRTaWduYWxXaXRoVHJhbnNmb3JtPG51bWJlciwgdW5rbm93bj47XG5cbiAgcHVibGljIGFic3RyYWN0IGZBY2NlbGVyYXRpb246IElucHV0U2lnbmFsV2l0aFRyYW5zZm9ybTxib29sZWFuLCB1bmtub3duPjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { booleanAttribute, Component, inject, numberAttribute, input, } from '@angular/core';
|
|
2
|
+
import { FMediator } from '@foblex/mediator';
|
|
3
|
+
import { FAutoPanBase } from './f-auto-pan-base';
|
|
4
|
+
import { INSTANCES, RegisterPluginInstanceRequest, RemovePluginInstanceRequest, } from '../f-storage';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class FAutoPan extends FAutoPanBase {
|
|
7
|
+
_mediator = inject(FMediator);
|
|
8
|
+
fEdgeThreshold = input(20, {
|
|
9
|
+
transform: (value) => numberAttribute(value, 20),
|
|
10
|
+
});
|
|
11
|
+
fSpeed = input(8, {
|
|
12
|
+
transform: (value) => numberAttribute(value, 8),
|
|
13
|
+
});
|
|
14
|
+
fAcceleration = input(false, {
|
|
15
|
+
transform: (value) => booleanAttribute(value),
|
|
16
|
+
});
|
|
17
|
+
ngOnInit() {
|
|
18
|
+
this._mediator.execute(new RegisterPluginInstanceRequest(INSTANCES.AUTO_PAN, this));
|
|
19
|
+
}
|
|
20
|
+
ngOnDestroy() {
|
|
21
|
+
this._mediator.execute(new RemovePluginInstanceRequest(INSTANCES.AUTO_PAN));
|
|
22
|
+
}
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FAutoPan, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
24
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: FAutoPan, isStandalone: true, selector: "f-auto-pan", inputs: { fEdgeThreshold: { classPropertyName: "fEdgeThreshold", publicName: "fEdgeThreshold", isSignal: true, isRequired: false, transformFunction: null }, fSpeed: { classPropertyName: "fSpeed", publicName: "fSpeed", isSignal: true, isRequired: false, transformFunction: null }, fAcceleration: { classPropertyName: "fAcceleration", publicName: "fAcceleration", isSignal: true, isRequired: false, transformFunction: null } }, host: { styleAttribute: "display: none;", classAttribute: "f-auto-pan f-component" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
|
25
|
+
}
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FAutoPan, decorators: [{
|
|
27
|
+
type: Component,
|
|
28
|
+
args: [{
|
|
29
|
+
selector: 'f-auto-pan',
|
|
30
|
+
template: ``,
|
|
31
|
+
standalone: true,
|
|
32
|
+
host: {
|
|
33
|
+
class: 'f-auto-pan f-component',
|
|
34
|
+
style: 'display: none;',
|
|
35
|
+
},
|
|
36
|
+
}]
|
|
37
|
+
}] });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1hdXRvLXBhbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1hdXRvLXBhbi9mLWF1dG8tcGFuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULE1BQU0sRUFDTixlQUFlLEVBR2YsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUNMLFNBQVMsRUFDVCw2QkFBNkIsRUFDN0IsMkJBQTJCLEdBQzVCLE1BQU0sY0FBYyxDQUFDOztBQVd0QixNQUFNLE9BQU8sUUFBUyxTQUFRLFlBQVk7SUFDdkIsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUUvQixjQUFjLEdBQUcsS0FBSyxDQUFDLEVBQUUsRUFBRTtRQUN6QyxTQUFTLEVBQUUsQ0FBQyxLQUFjLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO0tBQzFELENBQUMsQ0FBQztJQUVhLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxFQUFFO1FBQ2hDLFNBQVMsRUFBRSxDQUFDLEtBQWMsRUFBRSxFQUFFLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7S0FDekQsQ0FBQyxDQUFDO0lBRWEsYUFBYSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUU7UUFDM0MsU0FBUyxFQUFFLENBQUMsS0FBYyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7S0FDdkQsQ0FBQyxDQUFDO0lBRUksUUFBUTtRQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksNkJBQTZCLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksMkJBQTJCLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQzt3R0FyQlUsUUFBUTs0RkFBUixRQUFRLDZsQkFQVCxFQUFFOzs0RkFPRCxRQUFRO2tCQVRwQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO29CQUN0QixRQUFRLEVBQUUsRUFBRTtvQkFDWixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSx3QkFBd0I7d0JBQy9CLEtBQUssRUFBRSxnQkFBZ0I7cUJBQ3hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgQ29tcG9uZW50LFxuICBpbmplY3QsXG4gIG51bWJlckF0dHJpYnV0ZSxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIGlucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkF1dG9QYW5CYXNlIH0gZnJvbSAnLi9mLWF1dG8tcGFuLWJhc2UnO1xuaW1wb3J0IHtcbiAgSU5TVEFOQ0VTLFxuICBSZWdpc3RlclBsdWdpbkluc3RhbmNlUmVxdWVzdCxcbiAgUmVtb3ZlUGx1Z2luSW5zdGFuY2VSZXF1ZXN0LFxufSBmcm9tICcuLi9mLXN0b3JhZ2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLWF1dG8tcGFuJyxcbiAgdGVtcGxhdGU6IGBgLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdmLWF1dG8tcGFuIGYtY29tcG9uZW50JyxcbiAgICBzdHlsZTogJ2Rpc3BsYXk6IG5vbmU7JyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgRkF1dG9QYW4gZXh0ZW5kcyBGQXV0b1BhbkJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG5cbiAgcHVibGljIG92ZXJyaWRlIGZFZGdlVGhyZXNob2xkID0gaW5wdXQoMjAsIHtcbiAgICB0cmFuc2Zvcm06ICh2YWx1ZTogdW5rbm93bikgPT4gbnVtYmVyQXR0cmlidXRlKHZhbHVlLCAyMCksXG4gIH0pO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBmU3BlZWQgPSBpbnB1dCg4LCB7XG4gICAgdHJhbnNmb3JtOiAodmFsdWU6IHVua25vd24pID0+IG51bWJlckF0dHJpYnV0ZSh2YWx1ZSwgOCksXG4gIH0pO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBmQWNjZWxlcmF0aW9uID0gaW5wdXQoZmFsc2UsIHtcbiAgICB0cmFuc2Zvcm06ICh2YWx1ZTogdW5rbm93bikgPT4gYm9vbGVhbkF0dHJpYnV0ZSh2YWx1ZSksXG4gIH0pO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBSZWdpc3RlclBsdWdpbkluc3RhbmNlUmVxdWVzdChJTlNUQU5DRVMuQVVUT19QQU4sIHRoaXMpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBSZW1vdmVQbHVnaW5JbnN0YW5jZVJlcXVlc3QoSU5TVEFOQ0VTLkFVVE9fUEFOKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './f-auto-pan';
|
|
2
|
+
export * from './f-auto-pan-base';
|
|
3
|
+
export * from './providers';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtYXV0by1wYW4vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFFN0IsY0FBYyxtQkFBbUIsQ0FBQztBQUVsQyxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZi1hdXRvLXBhbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1hdXRvLXBhbi1iYXNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9wcm92aWRlcnMnO1xuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { FAutoPan } from './f-auto-pan';
|
|
2
|
+
export const F_AUTO_PAN_PROVIDERS = [FAutoPan];
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWF1dG8tcGFuL3Byb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXhDLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGQXV0b1BhbiB9IGZyb20gJy4vZi1hdXRvLXBhbic7XG5cbmV4cG9ydCBjb25zdCBGX0FVVE9fUEFOX1BST1ZJREVSUyA9IFtGQXV0b1Bhbl07XG4iXX0=
|
|
@@ -141,12 +141,12 @@ export class FCanvasComponent extends FCanvasBase {
|
|
|
141
141
|
.listen(this.destroyRef, callback);
|
|
142
142
|
}
|
|
143
143
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FCanvasComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
144
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: FCanvasComponent, isStandalone: true, selector: "f-canvas", inputs: { position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, scale: { classPropertyName: "scale", publicName: "scale", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { fCanvasChange: "fCanvasChange" }, host: { classAttribute: "f-component f-canvas" }, providers: [{ provide: F_CANVAS, useExisting: FCanvasComponent }], viewQueries: [{ propertyName: "fGroupsContainer", first: true, predicate: ["fGroupsContainer"], descendants: true, isSignal: true }, { propertyName: "fNodesContainer", first: true, predicate: ["fNodesContainer"], descendants: true, isSignal: true }, { propertyName: "fConnectionsContainer", first: true, predicate: ["fConnectionsContainer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup], [fGroups]\" />\n </div>\n <div #fConnectionsContainer class=\"f-connections-container\">\n <ng-content select=\"f-snap-connection\" />\n <ng-content select=\"f-connection, [fConnections]\" />\n <ng-content select=\"f-connection-for-create\" />\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode], [fNodes]\" />\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}:host.canvas-dragging{transform:translateZ(0)}.f-connections-container{position:absolute;z-index:2}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
144
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: FCanvasComponent, isStandalone: true, selector: "f-canvas", inputs: { position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, scale: { classPropertyName: "scale", publicName: "scale", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { fCanvasChange: "fCanvasChange" }, host: { classAttribute: "f-component f-canvas" }, providers: [{ provide: F_CANVAS, useExisting: FCanvasComponent }], viewQueries: [{ propertyName: "fGroupsContainer", first: true, predicate: ["fGroupsContainer"], descendants: true, isSignal: true }, { propertyName: "fNodesContainer", first: true, predicate: ["fNodesContainer"], descendants: true, isSignal: true }, { propertyName: "fConnectionsContainer", first: true, predicate: ["fConnectionsContainer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup], [fGroups]\" />\n </div>\n <div #fConnectionsContainer class=\"f-connections-container\">\n <ng-content select=\"f-snap-connection\" />\n <ng-content select=\"f-connection, [fConnections]\" />\n <ng-content select=\"f-connection-for-create\" />\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode], [fNodes]\" />\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}:host.f-canvas-dragging,:host.canvas-dragging{transform:translateZ(0)}.f-connections-container{position:absolute;z-index:2}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
145
145
|
}
|
|
146
146
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FCanvasComponent, decorators: [{
|
|
147
147
|
type: Component,
|
|
148
148
|
args: [{ selector: 'f-canvas', standalone: true, host: {
|
|
149
149
|
'class': 'f-component f-canvas',
|
|
150
|
-
}, providers: [{ provide: F_CANVAS, useExisting: FCanvasComponent }], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup], [fGroups]\" />\n </div>\n <div #fConnectionsContainer class=\"f-connections-container\">\n <ng-content select=\"f-snap-connection\" />\n <ng-content select=\"f-connection, [fConnections]\" />\n <ng-content select=\"f-connection-for-create\" />\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode], [fNodes]\" />\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}:host.canvas-dragging{transform:translateZ(0)}.f-connections-container{position:absolute;z-index:2}\n"] }]
|
|
150
|
+
}, providers: [{ provide: F_CANVAS, useExisting: FCanvasComponent }], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup], [fGroups]\" />\n </div>\n <div #fConnectionsContainer class=\"f-connections-container\">\n <ng-content select=\"f-snap-connection\" />\n <ng-content select=\"f-connection, [fConnections]\" />\n <ng-content select=\"f-connection-for-create\" />\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode], [fNodes]\" />\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}:host.f-canvas-dragging,:host.canvas-dragging{transform:translateZ(0)}.f-connections-container{position:absolute;z-index:2}\n"] }]
|
|
151
151
|
}] });
|
|
152
152
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNhbnZhcy9mLWNhbnZhcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY2FudmFzL2YtY2FudmFzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFVBQVUsRUFDVixNQUFNLEVBQ04sUUFBUSxFQUNSLEtBQUssRUFDTCxlQUFlLEVBR2YsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBVSxlQUFlLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFL0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLGdCQUFnQixFQUNoQixjQUFjLEVBQ2QsMEJBQTBCLEVBQzFCLHVCQUF1QixFQUN2QixRQUFRLEVBQ1IsNEJBQTRCLEVBQzVCLDBCQUEwQixFQUMxQixpQkFBaUIsRUFDakIsNkJBQTZCLEVBQzdCLGFBQWEsRUFDYixrQkFBa0IsR0FDbkIsTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUNMLGdCQUFnQixFQUNoQiwrQkFBK0IsRUFDL0IsNkJBQTZCLEdBQzlCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBZSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRXJEOzs7Ozs7OztHQVFHO0FBWUgsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFdBQVc7SUFDOUIsU0FBUyxHQUFHLE1B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S0FBSyxDQUFDLENBQUM7YUFDaEUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQzt3R0EvSlUsZ0JBQWdCOzRGQUFoQixnQkFBZ0Isd2lCQUhoQixDQUFDLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyw2YUM1RG5FLGtjQWNBOzs0RkRpRGEsZ0JBQWdCO2tCQVg1QixTQUFTOytCQUNFLFVBQVUsY0FHUixJQUFJLFFBQ1Y7d0JBQ0osT0FBTyxFQUFFLHNCQUFzQjtxQkFDaEMsYUFDVSxDQUFDLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLGtCQUFrQixFQUFFLENBQUMsbUJBQ2hELHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhZnRlck5leHRSZW5kZXIsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBlZmZlY3QsXG4gIEVsZW1lbnRSZWYsXG4gIGluamVjdCxcbiAgSW5qZWN0b3IsXG4gIGlucHV0LFxuICBudW1iZXJBdHRyaWJ1dGUsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBvdXRwdXQsXG4gIHZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGX0NBTlZBUywgRkNhbnZhc0Jhc2UgfSBmcm9tICcuL2YtY2FudmFzLWJhc2UnO1xuaW1wb3J0IHsgSVBvaW50LCBQb2ludEV4dGVuc2lvbnMsIFRyYW5zZm9ybU1vZGVsRXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkNhbnZhc0NoYW5nZUV2ZW50IH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgRk1lZGlhdG9yIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQge1xuICBBZGRDYW52YXNUb1N0b3JlUmVxdWVzdCxcbiAgQ2VudGVyR3JvdXBPck5vZGVSZXF1ZXN0LFxuICBGaXRUb0Zsb3dSZXF1ZXN0LFxuICBHZXRGbG93UmVxdWVzdCxcbiAgSW5wdXRDYW52YXNQb3NpdGlvblJlcXVlc3QsXG4gIElucHV0Q2FudmFzU2NhbGVSZXF1ZXN0LFxuICBpc01vYmlsZSxcbiAgUmVtb3ZlQ2FudmFzRnJvbVN0b3JlUmVxdWVzdCxcbiAgUmVzZXRTY2FsZUFuZENlbnRlclJlcXVlc3QsXG4gIFJlc2V0U2NhbGVSZXF1ZXN0LFxuICBTZXRCYWNrZ3JvdW5kVHJhbnNmb3JtUmVxdWVzdCxcbiAgdHJhbnNpdGlvbkVuZCxcbiAgVXBkYXRlU2NhbGVSZXF1ZXN0LFxufSBmcm9tICcuLi9kb21haW4nO1xuaW1wb3J0IHtcbiAgRkNvbXBvbmVudHNTdG9yZSxcbiAgTGlzdGVuQ29ubmVjdGlvbnNDaGFuZ2VzUmVxdWVzdCxcbiAgTm90aWZ5VHJhbnNmb3JtQ2hhbmdlZFJlcXVlc3QsXG59IGZyb20gJy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRmxvd0Jhc2UgfSBmcm9tICcuLi9mLWZsb3cnO1xuaW1wb3J0IHsgRkNoYW5uZWxIdWIsIHRha2VPbmUgfSBmcm9tICcuLi9yZWFjdGl2aXR5JztcblxuLyoqXG4gKiBDb21wb25lbnQgcmVwcmVzZW50aW5nIGEgY2FudmFzIGluIHRoZSBGLUZsb3cgZnJhbWV3b3JrLlxuICogSXQgaGFuZGxlcyB0aGUgcmVuZGVyaW5nIG9mIG5vZGVzLCBjb25uZWN0aW9ucywgYW5kIGdyb3VwcyxcbiAqIGFzIHdlbGwgYXMgdXNlciBpbnRlcmFjdGlvbnMgc3VjaCBhcyB6b29taW5nIGFuZCBwYW5uaW5nLlxuICogSXQgZXh0ZW5kcyB0aGUgRkNhbnZhc0Jhc2UgY2xhc3MgYW5kIGltcGxlbWVudHMgT25Jbml0IGFuZCBPbkRlc3Ryb3kgbGlmZWN5Y2xlIGhvb2tzLlxuICogSXQgcHJvdmlkZXMgbWV0aG9kcyB0byBtYW5pcHVsYXRlIHRoZSBjYW52YXMsIHN1Y2ggYXMgY2VudGVyaW5nIG5vZGVzIG9yIGdyb3VwcyxcbiAqIGZpdHRpbmcgdGhlIGNhbnZhcyB0byB0aGUgc2NyZWVuLCBhbmQgcmVzZXR0aW5nIHRoZSBzY2FsZS5cbiAqIEl0IGFsc28gZW1pdHMgZXZlbnRzIHdoZW4gdGhlIGNhbnZhcyBjaGFuZ2VzLCBhbGxvd2luZyBvdGhlciBjb21wb25lbnRzIHRvIHJlYWN0IHRvIHRoZXNlIGNoYW5nZXMuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2YtY2FudmFzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2YtY2FudmFzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZi1jYW52YXMuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgICdjbGFzcyc6ICdmLWNvbXBvbmVudCBmLWNhbnZhcycsXG4gIH0sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogRl9DQU5WQVMsIHVzZUV4aXN0aW5nOiBGQ2FudmFzQ29tcG9uZW50IH1dLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRkNhbnZhc0NvbXBvbmVudCBleHRlbmRzIEZDYW52YXNCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb21wb25lbnRzU3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWZlcmVuY2UgPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2luamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuICBwcml2YXRlIF9mbG93SWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZkNhbnZhc0NoYW5nZSA9IG91dHB1dDxGQ2FudmFzQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IHBvc2l0aW9uID0gaW5wdXQ8SVBvaW50LCBJUG9pbnQgfCBudWxsIHwgdW5kZWZpbmVkPihcbiAgICBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpLFxuICAgIHsgdHJhbnNmb3JtOiBQb2ludEV4dGVuc2lvbnMuY2FzdFRvUG9pbnQgfSxcbiAgKTtcbiAgcHVibGljIHJlYWRvbmx5IHNjYWxlID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPigxLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICBwdWJsaWMgcmVhZG9ubHkgZGVib3VuY2VUaW1lID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPigwLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICBwdWJsaWMgb3ZlcnJpZGUgZGVib3VuY2UgPSBjb21wdXRlZCgoKSA9PiAodGhpcy5kZWJvdW5jZVRpbWUoKSA8IDAgPyAwIDogdGhpcy5kZWJvdW5jZVRpbWUoKSkpO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaG9zdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZkdyb3Vwc0NvbnRhaW5lciA9XG4gICAgdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PignZkdyb3Vwc0NvbnRhaW5lcicpO1xuICBwdWJsaWMgb3ZlcnJpZGUgZk5vZGVzQ29udGFpbmVyID0gdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PignZk5vZGVzQ29udGFpbmVyJyk7XG4gIHB1YmxpYyBvdmVycmlkZSBmQ29ubmVjdGlvbnNDb250YWluZXIgPVxuICAgIHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ2ZDb25uZWN0aW9uc0NvbnRhaW5lcicpO1xuXG4gIHB1YmxpYyBnZXQgZmxvd0lkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2Zsb3dJZCB8fCAnJztcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9mbG93SWQgPSB0aGlzLl9tZWRpYXRvci5leGVjdXRlPEZGbG93QmFzZT4obmV3IEdldEZsb3dSZXF1ZXN0KCkpLmZJZCgpO1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IEFkZENhbnZhc1RvU3RvcmVSZXF1ZXN0KHRoaXMpKTtcbiAgICB0aGlzLl9wb3NpdGlvbkNoYW5nZSgpO1xuICAgIHRoaXMuX3NjYWxlQ2hhbmdlKCk7XG4gICAgc3VwZXIuc3Vic2NyaWJlT25DYW52YXNDaGFuZ2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Bvc2l0aW9uQ2hhbmdlKCk6IHZvaWQge1xuICAgIGVmZmVjdChcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgSW5wdXRDYW52YXNQb3NpdGlvblJlcXVlc3QodGhpcy50cmFuc2Zvcm0sIHRoaXMucG9zaXRpb24oKSkpO1xuICAgICAgfSxcbiAgICAgIHsgaW5qZWN0b3I6IHRoaXMuX2luamVjdG9yIH0sXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NjYWxlQ2hhbmdlKCk6IHZvaWQge1xuICAgIGVmZmVjdChcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgSW5wdXRDYW52YXNTY2FsZVJlcXVlc3QodGhpcy50cmFuc2Zvcm0sIHRoaXMuc2NhbGUoKSkpO1xuICAgICAgfSxcbiAgICAgIHsgaW5qZWN0b3I6IHRoaXMuX2luamVjdG9yIH0sXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWRyYXdzIHRoZSBjYW52YXMgYnkgYXBwbHlpbmcgdGhlIGN1cnJlbnQgdHJhbnNmb3JtYXRpb24uXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVkcmF3KCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IFNldEJhY2tncm91bmRUcmFuc2Zvcm1SZXF1ZXN0KHRoaXMudHJhbnNmb3JtKSk7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgndHJhbnNpdGlvbicpO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zLnRvU3RyaW5nKHRoaXMudHJhbnNmb3JtKTtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBOb3RpZnlUcmFuc2Zvcm1DaGFuZ2VkUmVxdWVzdCgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWRyYXdzIHRoZSBjYW52YXMgd2l0aCBhbiBhbmltYXRpb24gZWZmZWN0LlxuICAgKiBUaGlzIG1ldGhvZCBhcHBsaWVzIGEgQ1NTIHRyYW5zaXRpb24gdG8gdGhlIGNhbnZhcyBlbGVtZW50LFxuICAgKiBhbGxvd2luZyBmb3IgYSBzbW9vdGggdmlzdWFsIHVwZGF0ZSBvZiB0aGUgY2FudmFzJ3MgdHJhbnNmb3JtYXRpb24uXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVkcmF3V2l0aEFuaW1hdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBTZXRCYWNrZ3JvdW5kVHJhbnNmb3JtUmVxdWVzdCh0aGlzLnRyYW5zZm9ybSkpO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc3R5bGUudHJhbnNpdGlvbiA9IGB0cmFuc2Zvcm0gJHtpc01vYmlsZSgpID8gODAgOiAxNTB9bXMgZWFzZS1pbi1vdXRgO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zLnRvU3RyaW5nKHRoaXMudHJhbnNmb3JtKTtcbiAgICB0cmFuc2l0aW9uRW5kKHRoaXMuaG9zdEVsZW1lbnQsICgpID0+IHRoaXMucmVkcmF3KCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENlbnRlcnMgdGhlIHNwZWNpZmllZCBncm91cCBvciBub2RlIG9uIHRoZSBjYW52YXMuXG4gICAqIEBwYXJhbSBncm91cE9yTm9kZUlkIC0gVGhlIElEIG9mIHRoZSBncm91cCBvciBub2RlIHRvIGNlbnRlci5cbiAgICogQHBhcmFtIGFuaW1hdGVkIC0gSWYgdHJ1ZSwgdGhlIGNlbnRlcmluZyB3aWxsIGJlIGFuaW1hdGVkOyBvdGhlcndpc2UsIGl0IHdpbGwgYmUgaW5zdGFudGFuZW91cy5cbiAgICovXG4gIHB1YmxpYyBjZW50ZXJHcm91cE9yTm9kZShncm91cE9yTm9kZUlkOiBzdHJpbmcsIGFuaW1hdGVkOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgIHRoaXMuX2FmdGVyUmVkcmF3KCgpID0+IHtcbiAgICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IENlbnRlckdyb3VwT3JOb2RlUmVxdWVzdChncm91cE9yTm9kZUlkLCBhbmltYXRlZCkpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpdHMgdGhlIGNhbnZhcyB0byB0aGUgc2NyZWVuIGJ5IGFkanVzdGluZyB0aGUgc2NhbGUgYW5kIHBvc2l0aW9uLlxuICAgKiBAcGFyYW0gcGFkZGluZyAtIHBhZGRpbmdzIGZyb20gdGhlIGJvdW5kcyBvZiB0aGUgY2FudmFzXG4gICAqIEBwYXJhbSBhbmltYXRlZCAtIElmIHRydWUsIHRoZSBmaXQgd2lsbCBiZSBhbmltYXRlZDsgb3RoZXJ3aXNlLCBpdCB3aWxsIGJlIGluc3RhbnRhbmVvdXMuXG4gICAqL1xuICBwdWJsaWMgZml0VG9TY3JlZW4oXG4gICAgcGFkZGluZzogSVBvaW50ID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKSxcbiAgICBhbmltYXRlZDogYm9vbGVhbiA9IHRydWUsXG4gICk6IHZvaWQge1xuICAgIHRoaXMuX2FmdGVyUmVkcmF3KCgpID0+IHtcbiAgICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IEZpdFRvRmxvd1JlcXVlc3QocGFkZGluZywgYW5pbWF0ZWQpKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldHMgdGhlIHNjYWxlIGFuZCBjZW50ZXIgYWxsIG5vZGVzIGFuZCBncm91cHMgb24gdGhlIGNhbnZhcy5cbiAgICogVGhpcyBtZXRob2QgaXMgdXNlZCB0byByZXN0b3JlIHRoZSBjYW52YXMgdG8gaXRzIGRlZmF1bHQgc2NhbGUgYW5kIHBvc2l0aW9uLFxuICAgKiBhbGxvd2luZyB1c2VycyB0byBxdWlja2x5IHJldHVybiB0byBhIHN0YW5kYXJkIHZpZXcgb2YgdGhlIGNhbnZhcyBjb250ZW50LlxuICAgKiBAcGFyYW0gYW5pbWF0ZWQgLSBJZiB0cnVlLCB0aGUgcmVzZXQgd2lsbCBiZSBhbmltYXRlZDsgb3RoZXJ3aXNlLCBpdCB3aWxsIGJlIGluc3RhbnRhbmVvdXMuXG4gICAqIFRoaXMgaXMgdXNlZnVsIGZvciBwcm92aWRpbmcgYSBzbW9vdGggdXNlciBleHBlcmllbmNlIHdoZW4gcmVzZXR0aW5nIHRoZSB2aWV3LlxuICAgKi9cbiAgcHVibGljIHJlc2V0U2NhbGVBbmRDZW50ZXIoYW5pbWF0ZWQ6IGJvb2xlYW4gPSB0cnVlKTogdm9pZCB7XG4gICAgdGhpcy5fYWZ0ZXJSZWRyYXcoKCkgPT4ge1xuICAgICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgUmVzZXRTY2FsZUFuZENlbnRlclJlcXVlc3QoYW5pbWF0ZWQpKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgR2V0cyB0aGUgY3VycmVudCBzY2FsZSBvZiB0aGUgY2FudmFzLlxuICAgKi9cbiAgcHVibGljIGdldFNjYWxlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtLnNjYWxlIHx8IDE7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc2NhbGUgb2YgdGhlIGNhbnZhcyB0byBhIHNwZWNpZmllZCB2YWx1ZS5cbiAgICogVGhpcyBtZXRob2QgaXMgdXNlZCB0byB6b29tIGluIG9yIG91dCBvZiB0aGUgY2FudmFzLFxuICAgKiBhbGxvd2luZyB1c2VycyB0byBhZGp1c3QgdGhlIHZpZXcgb2YgdGhlIGNhbnZhcyBjb250ZW50LlxuICAgKiBAcGFyYW0gc2NhbGUgLSBUaGUgc2NhbGUgZmFjdG9yIHRvIHNldCBmb3IgdGhlIGNhbnZhcy5cbiAgICogQHBhcmFtIHRvUG9zaXRpb24gLSBUaGUgcG9zaXRpb24gdG8gd2hpY2ggdGhlIGNhbnZhcyBzaG91bGQgYmUgY2VudGVyZWQgYWZ0ZXIgc2NhbGluZy5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXRTY2FsZShzY2FsZTogbnVtYmVyLCB0b1Bvc2l0aW9uOiBJUG9pbnQgPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgVXBkYXRlU2NhbGVSZXF1ZXN0KHNjYWxlLCB0b1Bvc2l0aW9uKSk7XG4gIH1cblxuICAvKipcbiAgICogUmVzZXRzIHRoZSBzY2FsZSBvZiB0aGUgY2FudmFzIHRvIGl0cyBkZWZhdWx0IHZhbHVlLlxuICAgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIHJlc3RvcmUgdGhlIGNhbnZhcyB0byBpdHMgb3JpZ2luYWwgc2NhbGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVzZXRTY2FsZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBSZXNldFNjYWxlUmVxdWVzdCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBSZW1vdmVDYW52YXNGcm9tU3RvcmVSZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWZ0ZXJSZWRyYXcoY2FsbGJhY2s6ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fY29tcG9uZW50c1N0b3JlLmNvbm5lY3Rpb25zUmV2aXNpb24gPiAwKSB7XG4gICAgICBhZnRlck5leHRSZW5kZXIoY2FsbGJhY2ssIHsgaW5qZWN0b3I6IHRoaXMuX2luamVjdG9yIH0pO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fbWVkaWF0b3JcbiAgICAgIC5leGVjdXRlPEZDaGFubmVsSHViPihuZXcgTGlzdGVuQ29ubmVjdGlvbnNDaGFuZ2VzUmVxdWVzdChmYWxzZSkpXG4gICAgICAucGlwZSh0YWtlT25lKCkpXG4gICAgICAubGlzdGVuKHRoaXMuZGVzdHJveVJlZiwgY2FsbGJhY2spO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8ZGl2ICNmR3JvdXBzQ29udGFpbmVyPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmR3JvdXBdLCBbZkdyb3Vwc11cIiAvPlxuICA8L2Rpdj5cbiAgPGRpdiAjZkNvbm5lY3Rpb25zQ29udGFpbmVyIGNsYXNzPVwiZi1jb25uZWN0aW9ucy1jb250YWluZXJcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmLXNuYXAtY29ubmVjdGlvblwiIC8+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZi1jb25uZWN0aW9uLCBbZkNvbm5lY3Rpb25zXVwiIC8+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZi1jb25uZWN0aW9uLWZvci1jcmVhdGVcIiAvPlxuICA8L2Rpdj5cblxuICA8ZGl2ICNmTm9kZXNDb250YWluZXI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZOb2RlXSwgW2ZOb2Rlc11cIiAvPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -2,7 +2,6 @@ import { Directive, effect, inject, Injector, input, untracked } from '@angular/
|
|
|
2
2
|
import { EmitConnectionsChangesRequest } from '../../../f-storage';
|
|
3
3
|
import { FMediator } from '@foblex/mediator';
|
|
4
4
|
import { castToEnum } from '@foblex/utils';
|
|
5
|
-
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
|
6
5
|
import { F_CONNECTION_CONTENT, FConnectionContentBase } from './models';
|
|
7
6
|
import { PolylineContentAlign } from './utils';
|
|
8
7
|
import * as i0 from "@angular/core";
|
|
@@ -38,12 +37,12 @@ export class FConnectionContent extends FConnectionContentBase {
|
|
|
38
37
|
_injector = inject(Injector);
|
|
39
38
|
position = input(0.5, {
|
|
40
39
|
transform: (x) => {
|
|
41
|
-
const v =
|
|
40
|
+
const v = coerceConnectionContentNumber(x);
|
|
42
41
|
return v < 0 ? 0 : v > 1 ? 1 : v;
|
|
43
42
|
},
|
|
44
43
|
});
|
|
45
44
|
offset = input(0, {
|
|
46
|
-
transform: (x) =>
|
|
45
|
+
transform: (x) => coerceConnectionContentNumber(x),
|
|
47
46
|
});
|
|
48
47
|
align = input(PolylineContentAlign.NONE, {
|
|
49
48
|
transform: (x) => castToEnum(x, 'align', PolylineContentAlign),
|
|
@@ -73,4 +72,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
73
72
|
providers: [{ provide: F_CONNECTION_CONTENT, useExisting: FConnectionContent, multi: true }],
|
|
74
73
|
}]
|
|
75
74
|
}] });
|
|
76
|
-
|
|
75
|
+
function coerceConnectionContentNumber(value, fallbackValue = 0) {
|
|
76
|
+
return isNumberValue(value) ? Number(value) : fallbackValue;
|
|
77
|
+
}
|
|
78
|
+
function isNumberValue(value) {
|
|
79
|
+
if (typeof value === 'number') {
|
|
80
|
+
return !Number.isNaN(value);
|
|
81
|
+
}
|
|
82
|
+
if (typeof value === 'bigint') {
|
|
83
|
+
return true;
|
|
84
|
+
}
|
|
85
|
+
if (typeof value === 'string') {
|
|
86
|
+
return value.trim() !== '' && !Number.isNaN(Number(value));
|
|
87
|
+
}
|
|
88
|
+
return false;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9jb21wb25lbnRzL2Nvbm5lY3Rpb24tY29udGVudC9mLWNvbm5lY3Rpb24tY29udGVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFFL0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMEJHO0FBU0gsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHNCQUFzQjtJQUMzQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFckIsUUFBUSxHQUFHLEtBQUssQ0FBa0IsR0FBRyxFQUFFO1FBQzlELFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2YsTUFBTSxDQUFDLEdBQUcsNkJBQTZCLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFM0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25DLENBQUM7S0FDRixDQUFDLENBQUM7SUFFc0IsTUFBTSxHQUFHLEtBQUssQ0FBa0IsQ0FBQyxFQUFFO1FBQzFELFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsNkJBQTZCLENBQUMsQ0FBQyxDQUFDO0tBQ25ELENBQUMsQ0FBQztJQUVzQixLQUFLLEdBQUcsS0FBSyxDQUFnQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUU7UUFDL0YsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQXVCLENBQUMsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLENBQUM7S0FDckYsQ0FBQyxDQUFDO0lBRUksUUFBUTtRQUNiLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU8sY0FBYztRQUNwQixNQUFNLENBQ0osR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2QsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNiLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLDZCQUE2QixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9FLENBQUMsRUFDRCxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQzdCLENBQUM7SUFDSixDQUFDO3dHQWxDVSxrQkFBa0I7NEZBQWxCLGtCQUFrQixxZkFGbEIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDOzs0RkFFakYsa0JBQWtCO2tCQVI5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0osT0FBTyxFQUFFLHNCQUFzQjtxQkFDaEM7b0JBQ0QsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7aUJBQzdGOztBQXNDRCxTQUFTLDZCQUE2QixDQUFDLEtBQWMsRUFBRSxnQkFBd0IsQ0FBQztJQUM5RSxPQUFPLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7QUFDOUQsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLEtBQWM7SUFDbkMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QixPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzlCLE9BQU8sS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgZWZmZWN0LCBpbmplY3QsIEluamVjdG9yLCBpbnB1dCwgT25Jbml0LCB1bnRyYWNrZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVtaXRDb25uZWN0aW9uc0NoYW5nZXNSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgY2FzdFRvRW51bSB9IGZyb20gJ0Bmb2JsZXgvdXRpbHMnO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OX0NPTlRFTlQsIEZDb25uZWN0aW9uQ29udGVudEJhc2UgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBQb2x5bGluZUNvbnRlbnRBbGlnbiB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSBmb3IgcGxhY2luZyBjdXN0b20gdXNlciBjb250ZW50ICh0ZXh0LCBpY29ucywgYnV0dG9ucywgZXRjLilcbiAqIGFsb25nIGEgY29ubmVjdGlvbiBsaW5lLlxuICpcbiAqIEl0IGFsbG93cyB5b3UgdG8gc3BlY2lmeSB0aGUgcG9zaXRpb24gYWxvbmcgdGhlIGNvbm5lY3Rpb24sXG4gKiBzaGlmdCB0aGUgY29udGVudCBzaWRld2F5cyAocGVycGVuZGljdWxhciB0byB0aGUgcGF0aCksXG4gKiBhcHBseSBhIG1hcmdpbiBuZWFyIHRoZSBlZGdlcywgYW5kIGNvbnRyb2wgb3JpZW50YXRpb24uXG4gKlxuICogIyMjIFVzYWdlIGV4YW1wbGVzXG4gKlxuICogYGBgaHRtbFxuICogPCEtLSBUZXh0IGNlbnRlcmVkIG9uIHRoZSBjb25uZWN0aW9uIC0tPlxuICogPGRpdiBmQ29ubmVjdGlvbkNvbnRlbnQgW3Bvc2l0aW9uXT1cIjAuNVwiPlxuICogICBIZWxsb1xuICogPC9kaXY+XG4gKlxuICogPCEtLSBCdXR0b24gbmVhciB0aGUgc3RhcnQgb2YgdGhlIGNvbm5lY3Rpb24sIHNoaWZ0ZWQgdXB3YXJkIGJ5IDEycHggLS0+XG4gKiA8YnV0dG9uIGZDb25uZWN0aW9uQ29udGVudCBbcG9zaXRpb25dPVwiMC4yXCIgW29mZnNldF09XCItMTJcIj5cbiAqICAgK1xuICogPC9idXR0b24+XG4gKlxuICogPCEtLSBJY29uIGF0IHRoZSBlbmQgb2YgdGhlIGNvbm5lY3Rpb24sIHdpdGggNnB4IG1hcmdpbiBhbmQgcm90YXRlZCBhbG9uZyB0aGUgcGF0aCAtLT5cbiAqIDxzcGFuIGZDb25uZWN0aW9uQ29udGVudCBbcG9zaXRpb25dPVwiMVwiIFttYXJnaW5dPVwiNlwiIGFsaWduPVwiYWxvbmdcIj5cbiAqICAg4q6VXG4gKiA8L3NwYW4+XG4gKiBgYGBcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2ZDb25uZWN0aW9uQ29udGVudF0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ2NsYXNzJzogJ2YtY29ubmVjdGlvbi1jb250ZW50JyxcbiAgfSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBGX0NPTk5FQ1RJT05fQ09OVEVOVCwgdXNlRXhpc3Rpbmc6IEZDb25uZWN0aW9uQ29udGVudCwgbXVsdGk6IHRydWUgfV0sXG59KVxuZXhwb3J0IGNsYXNzIEZDb25uZWN0aW9uQ29udGVudCBleHRlbmRzIEZDb25uZWN0aW9uQ29udGVudEJhc2UgaW1wbGVtZW50cyBPbkluaXQge1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlYWRvbmx5IHBvc2l0aW9uID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPigwLjUsIHtcbiAgICB0cmFuc2Zvcm06ICh4KSA9PiB7XG4gICAgICBjb25zdCB2ID0gY29lcmNlQ29ubmVjdGlvbkNvbnRlbnROdW1iZXIoeCk7XG5cbiAgICAgIHJldHVybiB2IDwgMCA/IDAgOiB2ID4gMSA/IDEgOiB2O1xuICAgIH0sXG4gIH0pO1xuXG4gIHB1YmxpYyBvdmVycmlkZSByZWFkb25seSBvZmZzZXQgPSBpbnB1dDxudW1iZXIsIHVua25vd24+KDAsIHtcbiAgICB0cmFuc2Zvcm06ICh4KSA9PiBjb2VyY2VDb25uZWN0aW9uQ29udGVudE51bWJlcih4KSxcbiAgfSk7XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlYWRvbmx5IGFsaWduID0gaW5wdXQ8UG9seWxpbmVDb250ZW50QWxpZ24sIHVua25vd24+KFBvbHlsaW5lQ29udGVudEFsaWduLk5PTkUsIHtcbiAgICB0cmFuc2Zvcm06ICh4KSA9PiBjYXN0VG9FbnVtPFBvbHlsaW5lQ29udGVudEFsaWduPih4LCAnYWxpZ24nLCBQb2x5bGluZUNvbnRlbnRBbGlnbiksXG4gIH0pO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9saXN0ZW5DaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIF9saXN0ZW5DaGFuZ2VzKCk6IHZvaWQge1xuICAgIGVmZmVjdChcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy5vZmZzZXQoKTtcbiAgICAgICAgdGhpcy5wb3NpdGlvbigpO1xuICAgICAgICB0aGlzLmFsaWduKCk7XG4gICAgICAgIHVudHJhY2tlZCgoKSA9PiB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBFbWl0Q29ubmVjdGlvbnNDaGFuZ2VzUmVxdWVzdCgpKSk7XG4gICAgICB9LFxuICAgICAgeyBpbmplY3RvcjogdGhpcy5faW5qZWN0b3IgfSxcbiAgICApO1xuICB9XG59XG5cbmZ1bmN0aW9uIGNvZXJjZUNvbm5lY3Rpb25Db250ZW50TnVtYmVyKHZhbHVlOiB1bmtub3duLCBmYWxsYmFja1ZhbHVlOiBudW1iZXIgPSAwKTogbnVtYmVyIHtcbiAgcmV0dXJuIGlzTnVtYmVyVmFsdWUodmFsdWUpID8gTnVtYmVyKHZhbHVlKSA6IGZhbGxiYWNrVmFsdWU7XG59XG5cbmZ1bmN0aW9uIGlzTnVtYmVyVmFsdWUodmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBudW1iZXIgfCBzdHJpbmcgfCBiaWdpbnQge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiAhTnVtYmVyLmlzTmFOKHZhbHVlKTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiB2YWx1ZS50cmltKCkgIT09ICcnICYmICFOdW1iZXIuaXNOYU4oTnVtYmVyKHZhbHVlKSk7XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG4iXX0=
|
package/esm2022/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder-request.mjs
CHANGED
|
@@ -4,12 +4,16 @@ export class ConnectionBehaviourBuilderRequest {
|
|
|
4
4
|
connection;
|
|
5
5
|
sourceConnectableSide;
|
|
6
6
|
targetConnectableSide;
|
|
7
|
-
|
|
7
|
+
sourceRotationContext;
|
|
8
|
+
targetRotationContext;
|
|
9
|
+
constructor(sourceRect, targetRect, connection, sourceConnectableSide, targetConnectableSide, sourceRotationContext, targetRotationContext) {
|
|
8
10
|
this.sourceRect = sourceRect;
|
|
9
11
|
this.targetRect = targetRect;
|
|
10
12
|
this.connection = connection;
|
|
11
13
|
this.sourceConnectableSide = sourceConnectableSide;
|
|
12
14
|
this.targetConnectableSide = targetConnectableSide;
|
|
15
|
+
this.sourceRotationContext = sourceRotationContext;
|
|
16
|
+
this.targetRotationContext = targetRotationContext;
|
|
13
17
|
}
|
|
14
18
|
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi1iZWhhdmlvdXItYnVpbGRlci1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24tdjIvdXRpbHMvY29ubmVjdGlvbi1iZWhhdmlvdXIvY29ubmVjdGlvbi1iZWhhdmlvdXItYnVpbGRlci1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE1BQU0sT0FBTyxpQ0FBaUM7SUFFMUI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFQbEIsWUFDa0IsVUFBd0IsRUFDeEIsVUFBd0IsRUFDeEIsVUFBdUMsRUFDdkMscUJBQXdDLEVBQ3hDLHFCQUF3QyxFQUN4QyxxQkFBMEQsRUFDMUQscUJBQTBEO1FBTjFELGVBQVUsR0FBVixVQUFVLENBQWM7UUFDeEIsZUFBVSxHQUFWLFVBQVUsQ0FBYztRQUN4QixlQUFVLEdBQVYsVUFBVSxDQUE2QjtRQUN2QywwQkFBcUIsR0FBckIscUJBQXFCLENBQW1CO1FBQ3hDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBbUI7UUFDeEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFxQztRQUMxRCwwQkFBcUIsR0FBckIscUJBQXFCLENBQXFDO0lBQ3pFLENBQUM7Q0FDTCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElSb3VuZGVkUmVjdCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRUZDb25uZWN0YWJsZVNpZGUgfSBmcm9tICcuLi8uLi9lbnVtcyc7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbkNvbXBvbmVudHNQYXJlbnQgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgSUNvbm5lY3Rpb25FbmRwb2ludFJvdGF0aW9uQ29udGV4dCB9IGZyb20gJy4vbW9kZWxzJztcblxuZXhwb3J0IGNsYXNzIENvbm5lY3Rpb25CZWhhdmlvdXJCdWlsZGVyUmVxdWVzdCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBzb3VyY2VSZWN0OiBJUm91bmRlZFJlY3QsXG4gICAgcHVibGljIHJlYWRvbmx5IHRhcmdldFJlY3Q6IElSb3VuZGVkUmVjdCxcbiAgICBwdWJsaWMgcmVhZG9ubHkgY29ubmVjdGlvbjogRkNvbm5lY3Rpb25Db21wb25lbnRzUGFyZW50LFxuICAgIHB1YmxpYyByZWFkb25seSBzb3VyY2VDb25uZWN0YWJsZVNpZGU6IEVGQ29ubmVjdGFibGVTaWRlLFxuICAgIHB1YmxpYyByZWFkb25seSB0YXJnZXRDb25uZWN0YWJsZVNpZGU6IEVGQ29ubmVjdGFibGVTaWRlLFxuICAgIHB1YmxpYyByZWFkb25seSBzb3VyY2VSb3RhdGlvbkNvbnRleHQ/OiBJQ29ubmVjdGlvbkVuZHBvaW50Um90YXRpb25Db250ZXh0LFxuICAgIHB1YmxpYyByZWFkb25seSB0YXJnZXRSb3RhdGlvbkNvbnRleHQ/OiBJQ29ubmVjdGlvbkVuZHBvaW50Um90YXRpb25Db250ZXh0LFxuICApIHt9XG59XG4iXX0=
|
|
@@ -38,6 +38,8 @@ export class ConnectionBehaviourBuilder {
|
|
|
38
38
|
targetRect: request.targetRect,
|
|
39
39
|
sourceConnectableSide: sourceSide,
|
|
40
40
|
targetConnectableSide: targetSide,
|
|
41
|
+
sourceRotationContext: request.sourceRotationContext,
|
|
42
|
+
targetRotationContext: request.targetRotationContext,
|
|
41
43
|
});
|
|
42
44
|
}
|
|
43
45
|
/**
|
|
@@ -133,4 +135,4 @@ export class ConnectionBehaviourBuilder {
|
|
|
133
135
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConnectionBehaviourBuilder, decorators: [{
|
|
134
136
|
type: Injectable
|
|
135
137
|
}] });
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi1iZWhhdmlvdXItYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL3V0aWxzL2Nvbm5lY3Rpb24tYmVoYXZpb3VyL2Nvbm5lY3Rpb24tYmVoYXZpb3VyLWJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFaEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFM0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUM7QUFPcEI7O0dBRUc7QUFDSCxNQUFNLGlCQUFpQixHQUFvQztJQUN6RCxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxFQUFFLGdCQUFnQjtJQUNqRCxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxFQUFFLG1CQUFtQjtJQUN4RCxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxFQUFFLHFCQUFxQjtDQUNwRCxDQUFDO0FBWUY7Ozs7R0FJRztBQUVILE1BQU0sT0FBTywwQkFBMEI7SUFDckM7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsT0FBMEM7UUFDdEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLDRCQUE0QixDQUMvQyxPQUFPLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEVBQ2xDLE9BQU8sQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsRUFDbEMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUNsQyxPQUFPLENBQUMsVUFB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O3dHQTlKVSwwQkFBMEI7NEdBQTFCLDBCQUEwQjs7NEZBQTFCLDBCQUEwQjtrQkFEdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbm5lY3Rpb25CZWhhdmlvdXJCdWlsZGVyUmVxdWVzdCB9IGZyb20gJy4vY29ubmVjdGlvbi1iZWhhdmlvdXItYnVpbGRlci1yZXF1ZXN0JztcbmltcG9ydCB7IElMaW5lIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBmaXhlZENlbnRlckJlaGF2aW9yLCBmaXhlZE91dGJvdW5kQmVoYXZpb3IsIGZsb2F0aW5nQmVoYXZpb3IgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEVGQ29ubmVjdGlvbkJlaGF2aW9yLCBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUgfSBmcm9tICcuL2VudW1zJztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlIH0gZnJvbSAnLi4vLi4vZW51bXMnO1xuaW1wb3J0IHsgSUNhbGN1bGF0ZUJlaGF2aW9yUmVxdWVzdCB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBTbWFsbCBlcHNpbG9uIHRvIHRyZWF0IG5lYXItemVybyBkaWZmZXJlbmNlcyBhcyBuZWdsaWdpYmxlLlxuICovXG5jb25zdCBFUFNJTE9OID0gMC41O1xuXG4vKipcbiAqIEZ1bmN0aW9uIHNpZ25hdHVyZSBmb3IgYmVoYXZpb3Itc3BlY2lmaWMgY29ubmVjdGlvbiBsaW5lIGhhbmRsZXJzLlxuICovXG50eXBlIEJlaGF2aW9ySGFuZGxlciA9IChhcmdzOiBJQ2FsY3VsYXRlQmVoYXZpb3JSZXF1ZXN0KSA9PiBJTGluZTtcblxuLyoqXG4gKiBSZWdpc3RyeSBvZiBhbGwgY29ubmVjdGlvbiBiZWhhdmlvciBoYW5kbGVycy5cbiAqL1xuY29uc3QgQkVIQVZJT1JfSEFORExFUlM6IFJlY29yZDxzdHJpbmcsIEJlaGF2aW9ySGFuZGxlcj4gPSB7XG4gIFtFRkNvbm5lY3Rpb25CZWhhdmlvci5GTE9BVElOR106IGZsb2F0aW5nQmVoYXZpb3IsXG4gIFtFRkNvbm5lY3Rpb25CZWhhdmlvci5GSVhFRF9DRU5URVJdOiBmaXhlZENlbnRlckJlaGF2aW9yLFxuICBbRUZDb25uZWN0aW9uQmVoYXZpb3IuRklYRURdOiBmaXhlZE91dGJvdW5kQmVoYXZpb3IsXG59O1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGRpcmVjdGlvbmFsIGRlbHRhcyBiZXR3ZWVuIHR3byByZWN0YW5nbGVzLlxuICovXG5pbnRlcmZhY2UgSURpcmVjdGlvbmFsVmVjdG9ycyB7XG4gIHNvdXJjZVRvVGFyZ2V0WDogbnVtYmVyO1xuICBzb3VyY2VUb1RhcmdldFk6IG51bWJlcjtcbiAgdGFyZ2V0VG9Tb3VyY2VYOiBudW1iZXI7XG4gIHRhcmdldFRvU291cmNlWTogbnVtYmVyO1xufVxuXG4vKipcbiAqIENhbGN1bGF0ZXMgY29ubmVjdGlvbiBsaW5lcyBiYXNlZCBvbiBiZWhhdmlvciBydWxlcy5cbiAqIEl0IGRldGVybWluZXMgd2hpY2ggc2lkZXMgb2YgdGhlIHNvdXJjZSBhbmQgdGFyZ2V0IHNob3VsZCBjb25uZWN0LFxuICogdGhlbiBkZWxlZ2F0ZXMgdG8gYSByZWdpc3RlcmVkIGJlaGF2aW9yIGhhbmRsZXIuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlciB7XG4gIC8qKlxuICAgKiBNYWluIGV4ZWN1dGlvbiBlbnRyeSBwb2ludC5cbiAgICpcbiAgICogQHBhcmFtIHJlcXVlc3QgVGhlIHJlcXVlc3QgY29udGFpbmluZyBzb3VyY2UsIHRhcmdldCwgYW5kIGNvbm5lY3Rpb24gZGV0YWlscy5cbiAgICogQHJldHVybnMgQSBjYWxjdWxhdGVkIGNvbm5lY3Rpb24gbGluZSAoSUxpbmUpLlxuICAgKi9cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlclJlcXVlc3QpOiBJTGluZSB7XG4gICAgY29uc3QgdmVjdG9ycyA9IHRoaXMuX2NhbGN1bGF0ZURpcmVjdGlvbmFsVmVjdG9ycyhcbiAgICAgIHJlcXVlc3Quc291cmNlUmVjdC5ncmF2aXR5Q2VudGVyLngsXG4gICAgICByZXF1ZXN0LnNvdXJjZVJlY3QuZ3Jhdml0eUNlbnRlci55LFxuICAgICAgcmVxdWVzdC50YXJnZXRSZWN0LmdyYXZpdHlDZW50ZXIueCxcbiAgICAgIHJlcXVlc3QudGFyZ2V0UmVjdC5ncmF2aXR5Q2VudGVyLnksXG4gICAgKTtcblxuICAgIGNvbnN0IHNvdXJjZVNpZGUgPSB0aGlzLl9kZXRlcm1pbmVTb3VyY2VTaWRlKHJlcXVlc3QsIHZlY3RvcnMpO1xuICAgIGNvbnN0IHRhcmdldFNpZGUgPSB0aGlzLl9kZXRlcm1pbmVUYXJnZXRTaWRlKHJlcXVlc3QsIHZlY3RvcnMpO1xuXG4gICAgcmVxdWVzdC5jb25uZWN0aW9uLl9hcHBseVJlc29sdmVkU2lkZXNUb0Nvbm5lY3Rpb24oc291cmNlU2lkZSwgdGFyZ2V0U2lkZSk7XG5cbiAgICBjb25zdCBoYW5kbGVyID0gdGhpcy5fZ2V0QmVoYXZpb3JIYW5kbGVyKHJlcXVlc3QuY29ubmVjdGlvbi5mQmVoYXZpb3IpO1xuXG4gICAgcmV0dXJuIGhhbmRsZXIoe1xuICAgICAgc291cmNlUmVjdDogcmVxdWVzdC5zb3VyY2VSZWN0LFxuICAgICAgdGFyZ2V0UmVjdDogcmVxdWVzdC50YXJnZXRSZWN0LFxuICAgICAgc291cmNlQ29ubmVjdGFibGVTaWRlOiBzb3VyY2VTaWRlLFxuICAgICAgdGFyZ2V0Q29ubmVjdGFibGVTaWRlOiB0YXJnZXRTaWRlLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGVzIHRoZSBkaXJlY3Rpb25hbCBkZWx0YXMgYmV0d2VlbiB0d28gcmVjdGFuZ2xlcy5cbiAgICovXG4gIHByaXZhdGUgX2NhbGN1bGF0ZURpcmVjdGlvbmFsVmVjdG9ycyhcbiAgICBzb3VyY2VYOiBudW1iZXIsXG4gICAgc291cmNlWTogbnVtYmVyLFxuICAgIHRhcmdldFg6IG51bWJlcixcbiAgICB0YXJnZXRZOiBudW1iZXIsXG4gICk6IElEaXJlY3Rpb25hbFZlY3RvcnMge1xuICAgIGNvbnN0IHNvdXJjZVRvVGFyZ2V0WCA9IHRhcmdldFggLSBzb3VyY2VYO1xuICAgIGNvbnN0IHNvdXJjZVRvVGFyZ2V0WSA9IHRhcmdldFkgLSBzb3VyY2VZO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHNvdXJjZVRvVGFyZ2V0WCxcbiAgICAgIHNvdXJjZVRvVGFyZ2V0WSxcbiAgICAgIHRhcmdldFRvU291cmNlWDogLXNvdXJjZVRvVGFyZ2V0WCxcbiAgICAgIHRhcmdldFRvU291cmNlWTogLXNvdXJjZVRvVGFyZ2V0WSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgdGhlIHNpZGUgZm9yIHRoZSBzb3VyY2UgZWxlbWVudC5cbiAgICovXG4gIHByaXZhdGUgX2RldGVybWluZVNvdXJjZVNpZGUoXG4gICAgcmVxdWVzdDogQ29ubmVjdGlvbkJlaGF2aW91ckJ1aWxkZXJSZXF1ZXN0LFxuICAgIHZlY3RvcnM6IElEaXJlY3Rpb25hbFZlY3RvcnMsXG4gICk6IEVGQ29ubmVjdGFibGVTaWRlIHtcbiAgICByZXR1cm4gdGhpcy5fcmVzb2x2ZUNvbm5lY3RhYmxlU2lkZShcbiAgICAgIHJlcXVlc3QuY29ubmVjdGlvbi5mT3V0cHV0U2lkZSgpLFxuICAgICAgdmVjdG9ycy5zb3VyY2VUb1RhcmdldFgsXG4gICAgICB2ZWN0b3JzLnNvdXJjZVRvVGFyZ2V0WSxcbiAgICAgIHJlcXVlc3Quc291cmNlQ29ubmVjdGFibGVTaWRlLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB0aGUgc2lkZSBmb3IgdGhlIHRhcmdldCBlbGVtZW50LlxuICAgKi9cbiAgcHJpdmF0ZSBfZGV0ZXJtaW5lVGFyZ2V0U2lkZShcbiAgICByZXF1ZXN0OiBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlclJlcXVlc3QsXG4gICAgdmVjdG9yczogSURpcmVjdGlvbmFsVmVjdG9ycyxcbiAgKTogRUZDb25uZWN0YWJsZVNpZGUge1xuICAgIHJldHVybiB0aGlzLl9yZXNvbHZlQ29ubmVjdGFibGVTaWRlKFxuICAgICAgcmVxdWVzdC5jb25uZWN0aW9uLmZJbnB1dFNpZGUoKSxcbiAgICAgIHZlY3RvcnMudGFyZ2V0VG9Tb3VyY2VYLFxuICAgICAgdmVjdG9ycy50YXJnZXRUb1NvdXJjZVksXG4gICAgICByZXF1ZXN0LnRhcmdldENvbm5lY3RhYmxlU2lkZSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmVzIHdoaWNoIHNpZGUgb2YgYSBzaGFwZSB0byBjb25uZWN0IHRvIGJhc2VkIG9uIGRpcmVjdGlvbiwgZmFsbGJhY2ssIGFuZCBjb25uZWN0aW9uIG1vZGUuXG4gICAqXG4gICAqIEBwYXJhbSByZXF1ZXN0ZWRTaWRlIFRoZSBzaWRlIG1vZGUgKGUuZy4gQ0FMQ1VMQVRFLCBDQUxDVUxBVEVfSE9SSVpPTlRBTCwgRklYRUQsIGV0Yy4pLlxuICAgKiBAcGFyYW0gZGVsdGFYIERpZmZlcmVuY2UgaW4gWCBiZXR3ZWVuIHNvdXJjZSBhbmQgdGFyZ2V0LlxuICAgKiBAcGFyYW0gZGVsdGFZIERpZmZlcmVuY2UgaW4gWSBiZXR3ZWVuIHNvdXJjZSBhbmQgdGFyZ2V0LlxuICAgKiBAcGFyYW0gZmFsbGJhY2tTaWRlIFRoZSBkZWZhdWx0IGZhbGxiYWNrIHNpZGUgaWYgY2FsY3VsYXRpb24gaXMgYW1iaWd1b3VzLlxuICAgKi9cbiAgcHJpdmF0ZSBfcmVzb2x2ZUNvbm5lY3RhYmxlU2lkZShcbiAgICByZXF1ZXN0ZWRTaWRlOiBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUsXG4gICAgZGVsdGFYOiBudW1iZXIsXG4gICAgZGVsdGFZOiBudW1iZXIsXG4gICAgZmFsbGJhY2tTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZSxcbiAgKTogRUZDb25uZWN0YWJsZVNpZGUge1xuICAgIGlmIChyZXF1ZXN0ZWRTaWRlID09PSBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUuREVGQVVMVCkge1xuICAgICAgcmV0dXJuIGZhbGxiYWNrU2lkZTtcbiAgICB9XG5cbiAgICBjb25zdCBhYnNvbHV0ZVggPSBNYXRoLmFicyhkZWx0YVgpO1xuICAgIGNvbnN0IGFic29sdXRlWSA9IE1hdGguYWJzKGRlbHRhWSk7XG4gICAgY29uc3QgaXNOZWFyWmVybyA9IGFic29sdXRlWCA8IEVQU0lMT04gJiYgYWJzb2x1dGVZIDwgRVBTSUxPTjtcblxuICAgIGlmIChpc05lYXJaZXJvKSB7XG4gICAgICByZXR1cm4gZmFsbGJhY2tTaWRlO1xuICAgIH1cblxuICAgIGNvbnN0IGlzSG9yaXpvbnRhbERvbWluYW50ID0gYWJzb2x1dGVYID49IGFic29sdXRlWTtcblxuICAgIHN3aXRjaCAocmVxdWVzdGVkU2lkZSkge1xuICAgICAgY2FzZSBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUuQ0FMQ1VMQVRFOlxuICAgICAgICByZXR1cm4gaXNIb3Jpem9udGFsRG9taW5hbnRcbiAgICAgICAgICA/IGRlbHRhWCA+PSAwXG4gICAgICAgICAgICA/IEVGQ29ubmVjdGFibGVTaWRlLlJJR0hUXG4gICAgICAgICAgICA6IEVGQ29ubmVjdGFibGVTaWRlLkxFRlRcbiAgICAgICAgICA6IGRlbHRhWSA+PSAwXG4gICAgICAgICAgICA/IEVGQ29ubmVjdGFibGVTaWRlLkJPVFRPTVxuICAgICAgICAgICAgOiBFRkNvbm5lY3RhYmxlU2lkZS5UT1A7XG5cbiAgICAgIGNhc2UgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlLkNBTENVTEFURV9IT1JJWk9OVEFMOlxuICAgICAgICBpZiAoYWJzb2x1dGVYIDwgRVBTSUxPTikge1xuICAgICAgICAgIHJldHVybiBmYWxsYmFja1NpZGU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZGVsdGFYID49IDAgPyBFRkNvbm5lY3RhYmxlU2lkZS5SSUdIVCA6IEVGQ29ubmVjdGFibGVTaWRlLkxFRlQ7XG5cbiAgICAgIGNhc2UgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlLkNBTENVTEFURV9WRVJUSUNBTDpcbiAgICAgICAgaWYgKGFic29sdXRlWSA8IEVQU0lMT04pIHtcbiAgICAgICAgICByZXR1cm4gZmFsbGJhY2tTaWRlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRlbHRhWSA+PSAwID8gRUZDb25uZWN0YWJsZVNpZGUuQk9UVE9NIDogRUZDb25uZWN0YWJsZVNpZGUuVE9QO1xuXG4gICAgICBjYXNlIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZS5UT1A6XG4gICAgICAgIHJldHVybiBFRkNvbm5lY3RhYmxlU2lkZS5UT1A7XG4gICAgICBjYXNlIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZS5CT1RUT006XG4gICAgICAgIHJldHVybiBFRkNvbm5lY3RhYmxlU2lkZS5CT1RUT007XG4gICAgICBjYXNlIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZS5MRUZUOlxuICAgICAgICByZXR1cm4gRUZDb25uZWN0YWJsZVNpZGUuTEVGVDtcbiAgICAgIGNhc2UgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlLlJJR0hUOlxuICAgICAgICByZXR1cm4gRUZDb25uZWN0YWJsZVNpZGUuUklHSFQ7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBmYWxsYmFja1NpZGU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIGhhbmRsZXIgZm9yIHRoZSBnaXZlbiBjb25uZWN0aW9uIGJlaGF2aW9yLlxuICAgKlxuICAgKiBAdGhyb3dzIEVycm9yIGlmIG5vIGhhbmRsZXIgaXMgcmVnaXN0ZXJlZCBmb3IgdGhlIGJlaGF2aW9yLlxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0QmVoYXZpb3JIYW5kbGVyKGJlaGF2aW9yOiBFRkNvbm5lY3Rpb25CZWhhdmlvcik6IEJlaGF2aW9ySGFuZGxlciB7XG4gICAgY29uc3QgaGFuZGxlciA9IEJFSEFWSU9SX0hBTkRMRVJTW2JlaGF2aW9yXTtcbiAgICBpZiAoIWhhbmRsZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgW0JlaGF2aW9yXSBObyBoYW5kbGVyIGZvciBiZWhhdmlvcjogJHtiZWhhdmlvcn1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaGFuZGxlcjtcbiAgfVxufVxuIl19
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi1iZWhhdmlvdXItYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL3V0aWxzL2Nvbm5lY3Rpb24tYmVoYXZpb3VyL2Nvbm5lY3Rpb24tYmVoYXZpb3VyLWJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFaEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFM0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUM7QUFPcEI7O0dBRUc7QUFDSCxNQUFNLGlCQUFpQixHQUFvQztJQUN6RCxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxFQUFFLGdCQUFnQjtJQUNqRCxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxFQUFFLG1CQUFtQjtJQUN4RCxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxFQUFFLHFCQUFxQjtDQUNwRCxDQUFDO0FBWUY7Ozs7R0FJRztBQUVILE1BQU0sT0FBTywwQkFBMEI7SUFDckM7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsT0FBMEM7UUFDdEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLDRCQUE0QixDQUMvQyxPQUFPLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEVBQ2xDLE9BQU8sQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsRUFDbEMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUNsQyxPQUFPLENBQUMsVUFB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Qyx1Q0FBdUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNyRSxDQUFDO1FBRUQsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzt3R0FoS1UsMEJBQTBCOzRHQUExQiwwQkFBMEI7OzRGQUExQiwwQkFBMEI7a0JBRHRDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlclJlcXVlc3QgfSBmcm9tICcuL2Nvbm5lY3Rpb24tYmVoYXZpb3VyLWJ1aWxkZXItcmVxdWVzdCc7XG5pbXBvcnQgeyBJTGluZSB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgZml4ZWRDZW50ZXJCZWhhdmlvciwgZml4ZWRPdXRib3VuZEJlaGF2aW9yLCBmbG9hdGluZ0JlaGF2aW9yIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBFRkNvbm5lY3Rpb25CZWhhdmlvciwgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlIH0gZnJvbSAnLi9lbnVtcyc7XG5pbXBvcnQgeyBFRkNvbm5lY3RhYmxlU2lkZSB9IGZyb20gJy4uLy4uL2VudW1zJztcbmltcG9ydCB7IElDYWxjdWxhdGVCZWhhdmlvclJlcXVlc3QgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogU21hbGwgZXBzaWxvbiB0byB0cmVhdCBuZWFyLXplcm8gZGlmZmVyZW5jZXMgYXMgbmVnbGlnaWJsZS5cbiAqL1xuY29uc3QgRVBTSUxPTiA9IDAuNTtcblxuLyoqXG4gKiBGdW5jdGlvbiBzaWduYXR1cmUgZm9yIGJlaGF2aW9yLXNwZWNpZmljIGNvbm5lY3Rpb24gbGluZSBoYW5kbGVycy5cbiAqL1xudHlwZSBCZWhhdmlvckhhbmRsZXIgPSAoYXJnczogSUNhbGN1bGF0ZUJlaGF2aW9yUmVxdWVzdCkgPT4gSUxpbmU7XG5cbi8qKlxuICogUmVnaXN0cnkgb2YgYWxsIGNvbm5lY3Rpb24gYmVoYXZpb3IgaGFuZGxlcnMuXG4gKi9cbmNvbnN0IEJFSEFWSU9SX0hBTkRMRVJTOiBSZWNvcmQ8c3RyaW5nLCBCZWhhdmlvckhhbmRsZXI+ID0ge1xuICBbRUZDb25uZWN0aW9uQmVoYXZpb3IuRkxPQVRJTkddOiBmbG9hdGluZ0JlaGF2aW9yLFxuICBbRUZDb25uZWN0aW9uQmVoYXZpb3IuRklYRURfQ0VOVEVSXTogZml4ZWRDZW50ZXJCZWhhdmlvcixcbiAgW0VGQ29ubmVjdGlvbkJlaGF2aW9yLkZJWEVEXTogZml4ZWRPdXRib3VuZEJlaGF2aW9yLFxufTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBkaXJlY3Rpb25hbCBkZWx0YXMgYmV0d2VlbiB0d28gcmVjdGFuZ2xlcy5cbiAqL1xuaW50ZXJmYWNlIElEaXJlY3Rpb25hbFZlY3RvcnMge1xuICBzb3VyY2VUb1RhcmdldFg6IG51bWJlcjtcbiAgc291cmNlVG9UYXJnZXRZOiBudW1iZXI7XG4gIHRhcmdldFRvU291cmNlWDogbnVtYmVyO1xuICB0YXJnZXRUb1NvdXJjZVk6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBDYWxjdWxhdGVzIGNvbm5lY3Rpb24gbGluZXMgYmFzZWQgb24gYmVoYXZpb3IgcnVsZXMuXG4gKiBJdCBkZXRlcm1pbmVzIHdoaWNoIHNpZGVzIG9mIHRoZSBzb3VyY2UgYW5kIHRhcmdldCBzaG91bGQgY29ubmVjdCxcbiAqIHRoZW4gZGVsZWdhdGVzIHRvIGEgcmVnaXN0ZXJlZCBiZWhhdmlvciBoYW5kbGVyLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ29ubmVjdGlvbkJlaGF2aW91ckJ1aWxkZXIge1xuICAvKipcbiAgICogTWFpbiBleGVjdXRpb24gZW50cnkgcG9pbnQuXG4gICAqXG4gICAqIEBwYXJhbSByZXF1ZXN0IFRoZSByZXF1ZXN0IGNvbnRhaW5pbmcgc291cmNlLCB0YXJnZXQsIGFuZCBjb25uZWN0aW9uIGRldGFpbHMuXG4gICAqIEByZXR1cm5zIEEgY2FsY3VsYXRlZCBjb25uZWN0aW9uIGxpbmUgKElMaW5lKS5cbiAgICovXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogQ29ubmVjdGlvbkJlaGF2aW91ckJ1aWxkZXJSZXF1ZXN0KTogSUxpbmUge1xuICAgIGNvbnN0IHZlY3RvcnMgPSB0aGlzLl9jYWxjdWxhdGVEaXJlY3Rpb25hbFZlY3RvcnMoXG4gICAgICByZXF1ZXN0LnNvdXJjZVJlY3QuZ3Jhdml0eUNlbnRlci54LFxuICAgICAgcmVxdWVzdC5zb3VyY2VSZWN0LmdyYXZpdHlDZW50ZXIueSxcbiAgICAgIHJlcXVlc3QudGFyZ2V0UmVjdC5ncmF2aXR5Q2VudGVyLngsXG4gICAgICByZXF1ZXN0LnRhcmdldFJlY3QuZ3Jhdml0eUNlbnRlci55LFxuICAgICk7XG5cbiAgICBjb25zdCBzb3VyY2VTaWRlID0gdGhpcy5fZGV0ZXJtaW5lU291cmNlU2lkZShyZXF1ZXN0LCB2ZWN0b3JzKTtcbiAgICBjb25zdCB0YXJnZXRTaWRlID0gdGhpcy5fZGV0ZXJtaW5lVGFyZ2V0U2lkZShyZXF1ZXN0LCB2ZWN0b3JzKTtcblxuICAgIHJlcXVlc3QuY29ubmVjdGlvbi5fYXBwbHlSZXNvbHZlZFNpZGVzVG9Db25uZWN0aW9uKHNvdXJjZVNpZGUsIHRhcmdldFNpZGUpO1xuXG4gICAgY29uc3QgaGFuZGxlciA9IHRoaXMuX2dldEJlaGF2aW9ySGFuZGxlcihyZXF1ZXN0LmNvbm5lY3Rpb24uZkJlaGF2aW9yKTtcblxuICAgIHJldHVybiBoYW5kbGVyKHtcbiAgICAgIHNvdXJjZVJlY3Q6IHJlcXVlc3Quc291cmNlUmVjdCxcbiAgICAgIHRhcmdldFJlY3Q6IHJlcXVlc3QudGFyZ2V0UmVjdCxcbiAgICAgIHNvdXJjZUNvbm5lY3RhYmxlU2lkZTogc291cmNlU2lkZSxcbiAgICAgIHRhcmdldENvbm5lY3RhYmxlU2lkZTogdGFyZ2V0U2lkZSxcbiAgICAgIHNvdXJjZVJvdGF0aW9uQ29udGV4dDogcmVxdWVzdC5zb3VyY2VSb3RhdGlvbkNvbnRleHQsXG4gICAgICB0YXJnZXRSb3RhdGlvbkNvbnRleHQ6IHJlcXVlc3QudGFyZ2V0Um90YXRpb25Db250ZXh0LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGVzIHRoZSBkaXJlY3Rpb25hbCBkZWx0YXMgYmV0d2VlbiB0d28gcmVjdGFuZ2xlcy5cbiAgICovXG4gIHByaXZhdGUgX2NhbGN1bGF0ZURpcmVjdGlvbmFsVmVjdG9ycyhcbiAgICBzb3VyY2VYOiBudW1iZXIsXG4gICAgc291cmNlWTogbnVtYmVyLFxuICAgIHRhcmdldFg6IG51bWJlcixcbiAgICB0YXJnZXRZOiBudW1iZXIsXG4gICk6IElEaXJlY3Rpb25hbFZlY3RvcnMge1xuICAgIGNvbnN0IHNvdXJjZVRvVGFyZ2V0WCA9IHRhcmdldFggLSBzb3VyY2VYO1xuICAgIGNvbnN0IHNvdXJjZVRvVGFyZ2V0WSA9IHRhcmdldFkgLSBzb3VyY2VZO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHNvdXJjZVRvVGFyZ2V0WCxcbiAgICAgIHNvdXJjZVRvVGFyZ2V0WSxcbiAgICAgIHRhcmdldFRvU291cmNlWDogLXNvdXJjZVRvVGFyZ2V0WCxcbiAgICAgIHRhcmdldFRvU291cmNlWTogLXNvdXJjZVRvVGFyZ2V0WSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgdGhlIHNpZGUgZm9yIHRoZSBzb3VyY2UgZWxlbWVudC5cbiAgICovXG4gIHByaXZhdGUgX2RldGVybWluZVNvdXJjZVNpZGUoXG4gICAgcmVxdWVzdDogQ29ubmVjdGlvbkJlaGF2aW91ckJ1aWxkZXJSZXF1ZXN0LFxuICAgIHZlY3RvcnM6IElEaXJlY3Rpb25hbFZlY3RvcnMsXG4gICk6IEVGQ29ubmVjdGFibGVTaWRlIHtcbiAgICByZXR1cm4gdGhpcy5fcmVzb2x2ZUNvbm5lY3RhYmxlU2lkZShcbiAgICAgIHJlcXVlc3QuY29ubmVjdGlvbi5mT3V0cHV0U2lkZSgpLFxuICAgICAgdmVjdG9ycy5zb3VyY2VUb1RhcmdldFgsXG4gICAgICB2ZWN0b3JzLnNvdXJjZVRvVGFyZ2V0WSxcbiAgICAgIHJlcXVlc3Quc291cmNlQ29ubmVjdGFibGVTaWRlLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB0aGUgc2lkZSBmb3IgdGhlIHRhcmdldCBlbGVtZW50LlxuICAgKi9cbiAgcHJpdmF0ZSBfZGV0ZXJtaW5lVGFyZ2V0U2lkZShcbiAgICByZXF1ZXN0OiBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlclJlcXVlc3QsXG4gICAgdmVjdG9yczogSURpcmVjdGlvbmFsVmVjdG9ycyxcbiAgKTogRUZDb25uZWN0YWJsZVNpZGUge1xuICAgIHJldHVybiB0aGlzLl9yZXNvbHZlQ29ubmVjdGFibGVTaWRlKFxuICAgICAgcmVxdWVzdC5jb25uZWN0aW9uLmZJbnB1dFNpZGUoKSxcbiAgICAgIHZlY3RvcnMudGFyZ2V0VG9Tb3VyY2VYLFxuICAgICAgdmVjdG9ycy50YXJnZXRUb1NvdXJjZVksXG4gICAgICByZXF1ZXN0LnRhcmdldENvbm5lY3RhYmxlU2lkZSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmVzIHdoaWNoIHNpZGUgb2YgYSBzaGFwZSB0byBjb25uZWN0IHRvIGJhc2VkIG9uIGRpcmVjdGlvbiwgZmFsbGJhY2ssIGFuZCBjb25uZWN0aW9uIG1vZGUuXG4gICAqXG4gICAqIEBwYXJhbSByZXF1ZXN0ZWRTaWRlIFRoZSBzaWRlIG1vZGUgKGUuZy4gQ0FMQ1VMQVRFLCBDQUxDVUxBVEVfSE9SSVpPTlRBTCwgRklYRUQsIGV0Yy4pLlxuICAgKiBAcGFyYW0gZGVsdGFYIERpZmZlcmVuY2UgaW4gWCBiZXR3ZWVuIHNvdXJjZSBhbmQgdGFyZ2V0LlxuICAgKiBAcGFyYW0gZGVsdGFZIERpZmZlcmVuY2UgaW4gWSBiZXR3ZWVuIHNvdXJjZSBhbmQgdGFyZ2V0LlxuICAgKiBAcGFyYW0gZmFsbGJhY2tTaWRlIFRoZSBkZWZhdWx0IGZhbGxiYWNrIHNpZGUgaWYgY2FsY3VsYXRpb24gaXMgYW1iaWd1b3VzLlxuICAgKi9cbiAgcHJpdmF0ZSBfcmVzb2x2ZUNvbm5lY3RhYmxlU2lkZShcbiAgICByZXF1ZXN0ZWRTaWRlOiBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUsXG4gICAgZGVsdGFYOiBudW1iZXIsXG4gICAgZGVsdGFZOiBudW1iZXIsXG4gICAgZmFsbGJhY2tTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZSxcbiAgKTogRUZDb25uZWN0YWJsZVNpZGUge1xuICAgIGlmIChyZXF1ZXN0ZWRTaWRlID09PSBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUuREVGQVVMVCkge1xuICAgICAgcmV0dXJuIGZhbGxiYWNrU2lkZTtcbiAgICB9XG5cbiAgICBjb25zdCBhYnNvbHV0ZVggPSBNYXRoLmFicyhkZWx0YVgpO1xuICAgIGNvbnN0IGFic29sdXRlWSA9IE1hdGguYWJzKGRlbHRhWSk7XG4gICAgY29uc3QgaXNOZWFyWmVybyA9IGFic29sdXRlWCA8IEVQU0lMT04gJiYgYWJzb2x1dGVZIDwgRVBTSUxPTjtcblxuICAgIGlmIChpc05lYXJaZXJvKSB7XG4gICAgICByZXR1cm4gZmFsbGJhY2tTaWRlO1xuICAgIH1cblxuICAgIGNvbnN0IGlzSG9yaXpvbnRhbERvbWluYW50ID0gYWJzb2x1dGVYID49IGFic29sdXRlWTtcblxuICAgIHN3aXRjaCAocmVxdWVzdGVkU2lkZSkge1xuICAgICAgY2FzZSBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUuQ0FMQ1VMQVRFOlxuICAgICAgICByZXR1cm4gaXNIb3Jpem9udGFsRG9taW5hbnRcbiAgICAgICAgICA/IGRlbHRhWCA+PSAwXG4gICAgICAgICAgICA/IEVGQ29ubmVjdGFibGVTaWRlLlJJR0hUXG4gICAgICAgICAgICA6IEVGQ29ubmVjdGFibGVTaWRlLkxFRlRcbiAgICAgICAgICA6IGRlbHRhWSA+PSAwXG4gICAgICAgICAgICA/IEVGQ29ubmVjdGFibGVTaWRlLkJPVFRPTVxuICAgICAgICAgICAgOiBFRkNvbm5lY3RhYmxlU2lkZS5UT1A7XG5cbiAgICAgIGNhc2UgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlLkNBTENVTEFURV9IT1JJWk9OVEFMOlxuICAgICAgICBpZiAoYWJzb2x1dGVYIDwgRVBTSUxPTikge1xuICAgICAgICAgIHJldHVybiBmYWxsYmFja1NpZGU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZGVsdGFYID49IDAgPyBFRkNvbm5lY3RhYmxlU2lkZS5SSUdIVCA6IEVGQ29ubmVjdGFibGVTaWRlLkxFRlQ7XG5cbiAgICAgIGNhc2UgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlLkNBTENVTEFURV9WRVJUSUNBTDpcbiAgICAgICAgaWYgKGFic29sdXRlWSA8IEVQU0lMT04pIHtcbiAgICAgICAgICByZXR1cm4gZmFsbGJhY2tTaWRlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRlbHRhWSA+PSAwID8gRUZDb25uZWN0YWJsZVNpZGUuQk9UVE9NIDogRUZDb25uZWN0YWJsZVNpZGUuVE9QO1xuXG4gICAgICBjYXNlIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZS5UT1A6XG4gICAgICAgIHJldHVybiBFRkNvbm5lY3RhYmxlU2lkZS5UT1A7XG4gICAgICBjYXNlIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZS5CT1RUT006XG4gICAgICAgIHJldHVybiBFRkNvbm5lY3RhYmxlU2lkZS5CT1RUT007XG4gICAgICBjYXNlIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZS5MRUZUOlxuICAgICAgICByZXR1cm4gRUZDb25uZWN0YWJsZVNpZGUuTEVGVDtcbiAgICAgIGNhc2UgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlLlJJR0hUOlxuICAgICAgICByZXR1cm4gRUZDb25uZWN0YWJsZVNpZGUuUklHSFQ7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBmYWxsYmFja1NpZGU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIGhhbmRsZXIgZm9yIHRoZSBnaXZlbiBjb25uZWN0aW9uIGJlaGF2aW9yLlxuICAgKlxuICAgKiBAdGhyb3dzIEVycm9yIGlmIG5vIGhhbmRsZXIgaXMgcmVnaXN0ZXJlZCBmb3IgdGhlIGJlaGF2aW9yLlxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0QmVoYXZpb3JIYW5kbGVyKGJlaGF2aW9yOiBFRkNvbm5lY3Rpb25CZWhhdmlvcik6IEJlaGF2aW9ySGFuZGxlciB7XG4gICAgY29uc3QgaGFuZGxlciA9IEJFSEFWSU9SX0hBTkRMRVJTW2JlaGF2aW9yXTtcbiAgICBpZiAoIWhhbmRsZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgW0JlaGF2aW9yXSBObyBoYW5kbGVyIGZvciBiZWhhdmlvcjogJHtiZWhhdmlvcn1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaGFuZGxlcjtcbiAgfVxufVxuIl19
|
package/esm2022/f-connection-v2/utils/connection-behaviour/models/i-calculate-behavior-request.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1jYWxjdWxhdGUtYmVoYXZpb3ItcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL3V0aWxzL2Nvbm5lY3Rpb24tYmVoYXZpb3VyL21vZGVscy9pLWNhbGN1bGF0ZS1iZWhhdmlvci1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnQsIElSb3VuZGVkUmVjdCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRUZDb25uZWN0YWJsZVNpZGUgfSBmcm9tICcuLi8uLi8uLi9lbnVtcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvbm5lY3Rpb25FbmRwb2ludFJvdGF0aW9uQ29udGV4dCB7XG4gIHJvdGF0aW9uRGVnOiBudW1iZXI7XG4gIHBpdm90OiBJUG9pbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNhbGN1bGF0ZUJlaGF2aW9yUmVxdWVzdCB7XG4gIHNvdXJjZVJlY3Q6IElSb3VuZGVkUmVjdDtcbiAgdGFyZ2V0UmVjdDogSVJvdW5kZWRSZWN0O1xuICBzb3VyY2VDb25uZWN0YWJsZVNpZGU6IEVGQ29ubmVjdGFibGVTaWRlO1xuICB0YXJnZXRDb25uZWN0YWJsZVNpZGU6IEVGQ29ubmVjdGFibGVTaWRlO1xuICBzb3VyY2VSb3RhdGlvbkNvbnRleHQ/OiBJQ29ubmVjdGlvbkVuZHBvaW50Um90YXRpb25Db250ZXh0O1xuICB0YXJnZXRSb3RhdGlvbkNvbnRleHQ/OiBJQ29ubmVjdGlvbkVuZHBvaW50Um90YXRpb25Db250ZXh0O1xufVxuIl19
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getRotatedRoundedRectIntersection } from './get-rotated-rounded-rect-intersection';
|
|
2
2
|
/**
|
|
3
3
|
* Floating behavior calculates the connection line
|
|
4
4
|
* It constructs a line between the intersections of the connectors rectangles and line from the centers of the connector rectangles
|
|
5
5
|
* @param payload
|
|
6
6
|
*/
|
|
7
|
-
export function floatingBehavior({ sourceRect, targetRect }) {
|
|
8
|
-
return _getIntersectionsLine(_fromRoundedRectIntersections(sourceRect, targetRect), _toRoundedRectIntersections(sourceRect, targetRect), sourceRect, targetRect);
|
|
7
|
+
export function floatingBehavior({ sourceRect, targetRect, sourceRotationContext, targetRotationContext, }) {
|
|
8
|
+
return _getIntersectionsLine(_fromRoundedRectIntersections(sourceRect, targetRect, sourceRotationContext), _toRoundedRectIntersections(sourceRect, targetRect, targetRotationContext), sourceRect, targetRect);
|
|
9
9
|
}
|
|
10
|
-
function _fromRoundedRectIntersections(sourceRect, targetRect) {
|
|
11
|
-
return
|
|
10
|
+
function _fromRoundedRectIntersections(sourceRect, targetRect, rotationContext) {
|
|
11
|
+
return getRotatedRoundedRectIntersection(sourceRect.gravityCenter, targetRect.gravityCenter, sourceRect, rotationContext);
|
|
12
12
|
}
|
|
13
|
-
function _toRoundedRectIntersections(sourceRect, targetRect) {
|
|
14
|
-
return
|
|
13
|
+
function _toRoundedRectIntersections(sourceRect, targetRect, rotationContext) {
|
|
14
|
+
return getRotatedRoundedRectIntersection(targetRect.gravityCenter, sourceRect.gravityCenter, targetRect, rotationContext);
|
|
15
15
|
}
|
|
16
16
|
function _getIntersectionsLine(from, to, sourceRect, targetRect) {
|
|
17
17
|
return {
|
|
@@ -19,4 +19,4 @@ function _getIntersectionsLine(from, to, sourceRect, targetRect) {
|
|
|
19
19
|
point2: to ? to : targetRect.gravityCenter,
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvYXRpbmctYmVoYXZpb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi91dGlscy9jb25uZWN0aW9uLWJlaGF2aW91ci91dGlscy9mbG9hdGluZy1iZWhhdmlvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUU1Rjs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEVBQy9CLFVBQVUsRUFDVixVQUFVLEVBQ1YscUJBQXFCLEVBQ3JCLHFCQUFxQixHQUNLO0lBQzFCLE9BQU8scUJBQXFCLENBQzFCLDZCQUE2QixDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUscUJBQXFCLENBQUMsRUFDNUUsMkJBQTJCLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxxQkFBcUIsQ0FBQyxFQUMxRSxVQUFVLEVBQ1YsVUFBVSxDQUNYLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBUyw2QkFBNkIsQ0FDcEMsVUFBd0IsRUFDeEIsVUFBd0IsRUFDeEIsZUFBbUU7SUFFbkUsT0FBTyxpQ0FBaUMsQ0FDdEMsVUFBVSxDQUFDLGFBQWEsRUFDeEIsVUFBVSxDQUFDLGFBQWEsRUFDeEIsVUFBVSxFQUNWLGVBQWUsQ0FDaEIsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLDJCQUEyQixDQUNsQyxVQUF3QixFQUN4QixVQUF3QixFQUN4QixlQUFtRTtJQUVuRSxPQUFPLGlDQUFpQyxDQUN0QyxVQUFVLENBQUMsYUFBYSxFQUN4QixVQUFVLENBQUMsYUFBYSxFQUN4QixVQUFVLEVBQ1YsZUFBZSxDQUNoQixDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQzVCLElBQXdCLEVBQ3hCLEVBQXNCLEVBQ3RCLFVBQXdCLEVBQ3hCLFVBQXdCO0lBRXhCLE9BQU87UUFDTCxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxhQUFhO1FBQzlDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLGFBQWE7S0FDM0MsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTGluZSwgSVBvaW50LCBJUm91bmRlZFJlY3QgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IElDYWxjdWxhdGVCZWhhdmlvclJlcXVlc3QgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgZ2V0Um90YXRlZFJvdW5kZWRSZWN0SW50ZXJzZWN0aW9uIH0gZnJvbSAnLi9nZXQtcm90YXRlZC1yb3VuZGVkLXJlY3QtaW50ZXJzZWN0aW9uJztcblxuLyoqXG4gKiBGbG9hdGluZyBiZWhhdmlvciBjYWxjdWxhdGVzIHRoZSBjb25uZWN0aW9uIGxpbmVcbiAqIEl0IGNvbnN0cnVjdHMgYSBsaW5lIGJldHdlZW4gdGhlIGludGVyc2VjdGlvbnMgb2YgdGhlIGNvbm5lY3RvcnMgcmVjdGFuZ2xlcyBhbmQgbGluZSBmcm9tIHRoZSBjZW50ZXJzIG9mIHRoZSBjb25uZWN0b3IgcmVjdGFuZ2xlc1xuICogQHBhcmFtIHBheWxvYWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZsb2F0aW5nQmVoYXZpb3Ioe1xuICBzb3VyY2VSZWN0LFxuICB0YXJnZXRSZWN0LFxuICBzb3VyY2VSb3RhdGlvbkNvbnRleHQsXG4gIHRhcmdldFJvdGF0aW9uQ29udGV4dCxcbn06IElDYWxjdWxhdGVCZWhhdmlvclJlcXVlc3QpOiBJTGluZSB7XG4gIHJldHVybiBfZ2V0SW50ZXJzZWN0aW9uc0xpbmUoXG4gICAgX2Zyb21Sb3VuZGVkUmVjdEludGVyc2VjdGlvbnMoc291cmNlUmVjdCwgdGFyZ2V0UmVjdCwgc291cmNlUm90YXRpb25Db250ZXh0KSxcbiAgICBfdG9Sb3VuZGVkUmVjdEludGVyc2VjdGlvbnMoc291cmNlUmVjdCwgdGFyZ2V0UmVjdCwgdGFyZ2V0Um90YXRpb25Db250ZXh0KSxcbiAgICBzb3VyY2VSZWN0LFxuICAgIHRhcmdldFJlY3QsXG4gICk7XG59XG5cbmZ1bmN0aW9uIF9mcm9tUm91bmRlZFJlY3RJbnRlcnNlY3Rpb25zKFxuICBzb3VyY2VSZWN0OiBJUm91bmRlZFJlY3QsXG4gIHRhcmdldFJlY3Q6IElSb3VuZGVkUmVjdCxcbiAgcm90YXRpb25Db250ZXh0OiBJQ2FsY3VsYXRlQmVoYXZpb3JSZXF1ZXN0Wydzb3VyY2VSb3RhdGlvbkNvbnRleHQnXSxcbikge1xuICByZXR1cm4gZ2V0Um90YXRlZFJvdW5kZWRSZWN0SW50ZXJzZWN0aW9uKFxuICAgIHNvdXJjZVJlY3QuZ3Jhdml0eUNlbnRlcixcbiAgICB0YXJnZXRSZWN0LmdyYXZpdHlDZW50ZXIsXG4gICAgc291cmNlUmVjdCxcbiAgICByb3RhdGlvbkNvbnRleHQsXG4gICk7XG59XG5cbmZ1bmN0aW9uIF90b1JvdW5kZWRSZWN0SW50ZXJzZWN0aW9ucyhcbiAgc291cmNlUmVjdDogSVJvdW5kZWRSZWN0LFxuICB0YXJnZXRSZWN0OiBJUm91bmRlZFJlY3QsXG4gIHJvdGF0aW9uQ29udGV4dDogSUNhbGN1bGF0ZUJlaGF2aW9yUmVxdWVzdFsndGFyZ2V0Um90YXRpb25Db250ZXh0J10sXG4pIHtcbiAgcmV0dXJuIGdldFJvdGF0ZWRSb3VuZGVkUmVjdEludGVyc2VjdGlvbihcbiAgICB0YXJnZXRSZWN0LmdyYXZpdHlDZW50ZXIsXG4gICAgc291cmNlUmVjdC5ncmF2aXR5Q2VudGVyLFxuICAgIHRhcmdldFJlY3QsXG4gICAgcm90YXRpb25Db250ZXh0LFxuICApO1xufVxuXG5mdW5jdGlvbiBfZ2V0SW50ZXJzZWN0aW9uc0xpbmUoXG4gIGZyb206IElQb2ludCB8IHVuZGVmaW5lZCxcbiAgdG86IElQb2ludCB8IHVuZGVmaW5lZCxcbiAgc291cmNlUmVjdDogSVJvdW5kZWRSZWN0LFxuICB0YXJnZXRSZWN0OiBJUm91bmRlZFJlY3QsXG4pOiBJTGluZSB7XG4gIHJldHVybiB7XG4gICAgcG9pbnQxOiBmcm9tID8gZnJvbSA6IHNvdXJjZVJlY3QuZ3Jhdml0eUNlbnRlcixcbiAgICBwb2ludDI6IHRvID8gdG8gOiB0YXJnZXRSZWN0LmdyYXZpdHlDZW50ZXIsXG4gIH07XG59XG4iXX0=
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { GetIntersections, RoundedRect } from '@foblex/2d';
|
|
2
|
+
export function getRotatedRoundedRectIntersection(from, to, rect, rotationContext) {
|
|
3
|
+
if (!rotationContext || !rotationContext.rotationDeg) {
|
|
4
|
+
return GetIntersections.getRoundedRectIntersections(from, to, rect)[0];
|
|
5
|
+
}
|
|
6
|
+
const localFrom = _rotatePoint(from, -rotationContext.rotationDeg, rotationContext.pivot);
|
|
7
|
+
const localTo = _rotatePoint(to, -rotationContext.rotationDeg, rotationContext.pivot);
|
|
8
|
+
const localRect = _rotateRect(rect, -rotationContext.rotationDeg, rotationContext.pivot);
|
|
9
|
+
const intersection = GetIntersections.getRoundedRectIntersections(localFrom, localTo, localRect)[0];
|
|
10
|
+
return intersection
|
|
11
|
+
? _rotatePoint(intersection, rotationContext.rotationDeg, rotationContext.pivot)
|
|
12
|
+
: undefined;
|
|
13
|
+
}
|
|
14
|
+
function _rotateRect(rect, rotationDeg, pivot) {
|
|
15
|
+
const center = _rotatePoint(_getRectCenter(rect), rotationDeg, pivot);
|
|
16
|
+
return new RoundedRect(center.x - rect.width / 2, center.y - rect.height / 2, rect.width, rect.height, rect.radius1, rect.radius2, rect.radius3, rect.radius4);
|
|
17
|
+
}
|
|
18
|
+
function _getRectCenter(rect) {
|
|
19
|
+
return {
|
|
20
|
+
x: rect.x + rect.width / 2,
|
|
21
|
+
y: rect.y + rect.height / 2,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
function _rotatePoint(point, rotationDeg, pivot) {
|
|
25
|
+
const translatedX = point.x - pivot.x;
|
|
26
|
+
const translatedY = point.y - pivot.y;
|
|
27
|
+
const theta = (rotationDeg * Math.PI) / 180;
|
|
28
|
+
const cosTheta = Math.cos(theta);
|
|
29
|
+
const sinTheta = Math.sin(theta);
|
|
30
|
+
return {
|
|
31
|
+
x: translatedX * cosTheta - translatedY * sinTheta + pivot.x,
|
|
32
|
+
y: translatedX * sinTheta + translatedY * cosTheta + pivot.y,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXJvdGF0ZWQtcm91bmRlZC1yZWN0LWludGVyc2VjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL3V0aWxzL2Nvbm5lY3Rpb24tYmVoYXZpb3VyL3V0aWxzL2dldC1yb3RhdGVkLXJvdW5kZWQtcmVjdC1pbnRlcnNlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUF3QixXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFHakYsTUFBTSxVQUFVLGlDQUFpQyxDQUMvQyxJQUFZLEVBQ1osRUFBVSxFQUNWLElBQWtCLEVBQ2xCLGVBQW9EO0lBRXBELElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckQsT0FBTyxnQkFBZ0IsQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDLFdBQVcsRUFBRSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUYsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxXQUFXLEVBQUUsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RGLE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RixNQUFNLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQywyQkFBMkIsQ0FDL0QsU0FBUyxFQUNULE9BQU8sRUFDUCxTQUFTLENBQ1YsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVMLE9BQU8sWUFBWTtRQUNqQixDQUFDLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsV0FBVyxFQUFFLGVBQWUsQ0FBQyxLQUFLLENBQUM7UUFDaEYsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUNoQixDQUFDO0FBRUQsU0FBUyxXQUFXLENBQUMsSUFBa0IsRUFBRSxXQUFtQixFQUFFLEtBQWE7SUFDekUsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFdEUsT0FBTyxJQUFJLFdBQVcsQ0FDcEIsTUFBTSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsRUFDekIsTUFBTSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDMUIsSUFBSSxDQUFDLEtBQUssRUFDVixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxPQUFPLEVBQ1osSUFBSSxDQUFDLE9BQU8sRUFDWixJQUFJLENBQUMsT0FBTyxFQUNaLElBQUksQ0FBQyxPQUFPLENBQ2IsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxJQUFrQjtJQUN4QyxPQUFPO1FBQ0wsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDO1FBQzFCLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQztLQUM1QixDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLEtBQWEsRUFBRSxXQUFtQixFQUFFLEtBQWE7SUFDckUsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3RDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUV0QyxNQUFNLEtBQUssR0FBRyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQzVDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVqQyxPQUFPO1FBQ0wsQ0FBQyxFQUFFLFdBQVcsR0FBRyxRQUFRLEdBQUcsV0FBVyxHQUFHLFFBQVEsR0FBRyxLQUFLLENBQUMsQ0FBQztRQUM1RCxDQUFDLEVBQUUsV0FBVyxHQUFHLFFBQVEsR0FBRyxXQUFXLEdBQUcsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDO0tBQzdELENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2V0SW50ZXJzZWN0aW9ucywgSVBvaW50LCBJUm91bmRlZFJlY3QsIFJvdW5kZWRSZWN0IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBJQ29ubmVjdGlvbkVuZHBvaW50Um90YXRpb25Db250ZXh0IH0gZnJvbSAnLi4vbW9kZWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJvdGF0ZWRSb3VuZGVkUmVjdEludGVyc2VjdGlvbihcbiAgZnJvbTogSVBvaW50LFxuICB0bzogSVBvaW50LFxuICByZWN0OiBJUm91bmRlZFJlY3QsXG4gIHJvdGF0aW9uQ29udGV4dD86IElDb25uZWN0aW9uRW5kcG9pbnRSb3RhdGlvbkNvbnRleHQsXG4pOiBJUG9pbnQgfCB1bmRlZmluZWQge1xuICBpZiAoIXJvdGF0aW9uQ29udGV4dCB8fCAhcm90YXRpb25Db250ZXh0LnJvdGF0aW9uRGVnKSB7XG4gICAgcmV0dXJuIEdldEludGVyc2VjdGlvbnMuZ2V0Um91bmRlZFJlY3RJbnRlcnNlY3Rpb25zKGZyb20sIHRvLCByZWN0KVswXTtcbiAgfVxuXG4gIGNvbnN0IGxvY2FsRnJvbSA9IF9yb3RhdGVQb2ludChmcm9tLCAtcm90YXRpb25Db250ZXh0LnJvdGF0aW9uRGVnLCByb3RhdGlvbkNvbnRleHQucGl2b3QpO1xuICBjb25zdCBsb2NhbFRvID0gX3JvdGF0ZVBvaW50KHRvLCAtcm90YXRpb25Db250ZXh0LnJvdGF0aW9uRGVnLCByb3RhdGlvbkNvbnRleHQucGl2b3QpO1xuICBjb25zdCBsb2NhbFJlY3QgPSBfcm90YXRlUmVjdChyZWN0LCAtcm90YXRpb25Db250ZXh0LnJvdGF0aW9uRGVnLCByb3RhdGlvbkNvbnRleHQucGl2b3QpO1xuICBjb25zdCBpbnRlcnNlY3Rpb24gPSBHZXRJbnRlcnNlY3Rpb25zLmdldFJvdW5kZWRSZWN0SW50ZXJzZWN0aW9ucyhcbiAgICBsb2NhbEZyb20sXG4gICAgbG9jYWxUbyxcbiAgICBsb2NhbFJlY3QsXG4gIClbMF07XG5cbiAgcmV0dXJuIGludGVyc2VjdGlvblxuICAgID8gX3JvdGF0ZVBvaW50KGludGVyc2VjdGlvbiwgcm90YXRpb25Db250ZXh0LnJvdGF0aW9uRGVnLCByb3RhdGlvbkNvbnRleHQucGl2b3QpXG4gICAgOiB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIF9yb3RhdGVSZWN0KHJlY3Q6IElSb3VuZGVkUmVjdCwgcm90YXRpb25EZWc6IG51bWJlciwgcGl2b3Q6IElQb2ludCk6IElSb3VuZGVkUmVjdCB7XG4gIGNvbnN0IGNlbnRlciA9IF9yb3RhdGVQb2ludChfZ2V0UmVjdENlbnRlcihyZWN0KSwgcm90YXRpb25EZWcsIHBpdm90KTtcblxuICByZXR1cm4gbmV3IFJvdW5kZWRSZWN0KFxuICAgIGNlbnRlci54IC0gcmVjdC53aWR0aCAvIDIsXG4gICAgY2VudGVyLnkgLSByZWN0LmhlaWdodCAvIDIsXG4gICAgcmVjdC53aWR0aCxcbiAgICByZWN0LmhlaWdodCxcbiAgICByZWN0LnJhZGl1czEsXG4gICAgcmVjdC5yYWRpdXMyLFxuICAgIHJlY3QucmFkaXVzMyxcbiAgICByZWN0LnJhZGl1czQsXG4gICk7XG59XG5cbmZ1bmN0aW9uIF9nZXRSZWN0Q2VudGVyKHJlY3Q6IElSb3VuZGVkUmVjdCk6IElQb2ludCB7XG4gIHJldHVybiB7XG4gICAgeDogcmVjdC54ICsgcmVjdC53aWR0aCAvIDIsXG4gICAgeTogcmVjdC55ICsgcmVjdC5oZWlnaHQgLyAyLFxuICB9O1xufVxuXG5mdW5jdGlvbiBfcm90YXRlUG9pbnQocG9pbnQ6IElQb2ludCwgcm90YXRpb25EZWc6IG51bWJlciwgcGl2b3Q6IElQb2ludCk6IElQb2ludCB7XG4gIGNvbnN0IHRyYW5zbGF0ZWRYID0gcG9pbnQueCAtIHBpdm90Lng7XG4gIGNvbnN0IHRyYW5zbGF0ZWRZID0gcG9pbnQueSAtIHBpdm90Lnk7XG5cbiAgY29uc3QgdGhldGEgPSAocm90YXRpb25EZWcgKiBNYXRoLlBJKSAvIDE4MDtcbiAgY29uc3QgY29zVGhldGEgPSBNYXRoLmNvcyh0aGV0YSk7XG4gIGNvbnN0IHNpblRoZXRhID0gTWF0aC5zaW4odGhldGEpO1xuXG4gIHJldHVybiB7XG4gICAgeDogdHJhbnNsYXRlZFggKiBjb3NUaGV0YSAtIHRyYW5zbGF0ZWRZICogc2luVGhldGEgKyBwaXZvdC54LFxuICAgIHk6IHRyYW5zbGF0ZWRYICogc2luVGhldGEgKyB0cmFuc2xhdGVkWSAqIGNvc1RoZXRhICsgcGl2b3QueSxcbiAgfTtcbn1cbiJdfQ==
|