UNPKG

@foblex/flow

Version:

An Angular library designed to simplify the creation and manipulation of dynamic flow. Provides components for flows, nodes, and connections, automating node manipulation and inter-node connections.

36 lines 5.84 kB
import { __decorate } from "tslib"; import { GetFlowStateRequest } from './get-flow-state.request'; import { inject, Injectable } from '@angular/core'; import { FExecutionRegister, FMediator } from '@foblex/mediator'; import { FComponentsStore } from '../../../f-storage'; import { FGroupDirective, FNodeDirective } from '../../../f-node'; import { PointExtensions } from '@foblex/2d'; import { GetFlowStateNodesRequest } from './get-flow-state-nodes'; import { GetFlowStateConnectionsRequest } from './get-flow-state-connections'; import * as i0 from "@angular/core"; let GetFlowStateExecution = class GetFlowStateExecution { _fMediator = inject(FMediator); _fComponentsStore = inject(FComponentsStore); handle(payload) { return { position: this._getCanvasPosition(this._fComponentsStore.fCanvas.transform), scale: this._fComponentsStore.fCanvas.transform.scale, nodes: this._fMediator.execute(new GetFlowStateNodesRequest(FNodeDirective)), groups: this._fMediator.execute(new GetFlowStateNodesRequest(FGroupDirective)), connections: this._fMediator.execute(new GetFlowStateConnectionsRequest()) }; } _getCanvasPosition(transform) { return PointExtensions.sum(transform.position, transform.scaledPosition); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetFlowStateExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetFlowStateExecution }); }; GetFlowStateExecution = __decorate([ FExecutionRegister(GetFlowStateRequest) ], GetFlowStateExecution); export { GetFlowStateExecution }; i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetFlowStateExecution, decorators: [{ type: Injectable }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZsb3ctc3RhdGUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1mbG93L2dldC1mbG93LXN0YXRlL2dldC1mbG93LXN0YXRlLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBRTdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUEyQixlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBSXZFLElBQU0scUJBQXFCLEdBQTNCLE1BQU0scUJBQXFCO0lBRXhCLFVBQVUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0IsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFOUMsTUFBTSxDQUFDLE9BQTRCO1FBQ3hDLE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO1lBQzVFLEtBQUssRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLO1lBQ3RELEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLHdCQUF3QixDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzVFLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLHdCQUF3QixDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQzlFLFdBQVcsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLDhCQUE4QixFQUFFLENBQUM7U0FDM0UsQ0FBQTtJQUNILENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxTQUEwQjtRQUNuRCxPQUFPLGVBQWUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDM0UsQ0FBQzt3R0FqQlUscUJBQXFCOzRHQUFyQixxQkFBcUI7O0FBQXJCLHFCQUFxQjtJQURqQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQztHQUMzQixxQkFBcUIsQ0FrQmpDOzs0RkFsQlkscUJBQXFCO2tCQUZqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2V0Rmxvd1N0YXRlUmVxdWVzdCB9IGZyb20gJy4vZ2V0LWZsb3ctc3RhdGUucmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJRkZsb3dTdGF0ZSB9IGZyb20gJy4vaS1mLWZsb3ctc3RhdGUnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGR3JvdXBEaXJlY3RpdmUsIEZOb2RlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IElQb2ludCwgSVRyYW5zZm9ybU1vZGVsLCBQb2ludEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEdldEZsb3dTdGF0ZU5vZGVzUmVxdWVzdCB9IGZyb20gJy4vZ2V0LWZsb3ctc3RhdGUtbm9kZXMnO1xuaW1wb3J0IHsgR2V0Rmxvd1N0YXRlQ29ubmVjdGlvbnNSZXF1ZXN0IH0gZnJvbSAnLi9nZXQtZmxvdy1zdGF0ZS1jb25uZWN0aW9ucyc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoR2V0Rmxvd1N0YXRlUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRGbG93U3RhdGVFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPEdldEZsb3dTdGF0ZVJlcXVlc3QsIElGRmxvd1N0YXRlPiB7XG5cbiAgcHJpdmF0ZSBfZk1lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgX2ZDb21wb25lbnRzU3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHVibGljIGhhbmRsZShwYXlsb2FkOiBHZXRGbG93U3RhdGVSZXF1ZXN0KTogSUZGbG93U3RhdGUge1xuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogdGhpcy5fZ2V0Q2FudmFzUG9zaXRpb24odGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm0pLFxuICAgICAgc2NhbGU6IHRoaXMuX2ZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtLnNjYWxlLFxuICAgICAgbm9kZXM6IHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlKG5ldyBHZXRGbG93U3RhdGVOb2Rlc1JlcXVlc3QoRk5vZGVEaXJlY3RpdmUpKSxcbiAgICAgIGdyb3VwczogdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGUobmV3IEdldEZsb3dTdGF0ZU5vZGVzUmVxdWVzdChGR3JvdXBEaXJlY3RpdmUpKSxcbiAgICAgIGNvbm5lY3Rpb25zOiB0aGlzLl9mTWVkaWF0b3IuZXhlY3V0ZShuZXcgR2V0Rmxvd1N0YXRlQ29ubmVjdGlvbnNSZXF1ZXN0KCkpXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2FudmFzUG9zaXRpb24odHJhbnNmb3JtOiBJVHJhbnNmb3JtTW9kZWwpOiBJUG9pbnQge1xuICAgIHJldHVybiBQb2ludEV4dGVuc2lvbnMuc3VtKHRyYW5zZm9ybS5wb3NpdGlvbiwgdHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uKTtcbiAgfVxufVxuXG5cblxuIl19