@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.
31 lines • 4.84 kB
JavaScript
import { __decorate } from "tslib";
import { inject, Injectable } from '@angular/core';
import { FExecutionRegister } from '@foblex/mediator';
import { CalculateInputConnectionsRequest } from './calculate-input-connections-request';
import { FComponentsStore } from '../../../f-storage';
import * as i0 from "@angular/core";
let CalculateInputConnectionsExecution = class CalculateInputConnectionsExecution {
_fComponentsStore = inject(FComponentsStore);
handle(request) {
return this._calculateConnections(new Set(this._calculateConnectors(request.fNode)));
}
_calculateConnectors(fNode) {
return this._fComponentsStore.fInputs
.filter((x) => fNode.isContains(x.hostElement))
.map((x) => x.fId);
}
_calculateConnections(ids) {
return this._fComponentsStore.fConnections
.filter((x) => ids.has(x.fInputId));
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateInputConnectionsExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateInputConnectionsExecution });
};
CalculateInputConnectionsExecution = __decorate([
FExecutionRegister(CalculateInputConnectionsRequest)
], CalculateInputConnectionsExecution);
export { CalculateInputConnectionsExecution };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateInputConnectionsExecution, decorators: [{
type: Injectable
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWlucHV0LWNvbm5lY3Rpb25zLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2Ytbm9kZS9jYWxjdWxhdGUtaW5wdXQtY29ubmVjdGlvbnMvY2FsY3VsYXRlLWlucHV0LWNvbm5lY3Rpb25zLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDekYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBTS9DLElBQU0sa0NBQWtDLEdBQXhDLE1BQU0sa0NBQWtDO0lBRTVCLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRXZELE1BQU0sQ0FBQyxPQUF5QztRQUNyRCxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FDL0IsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNsRCxDQUFDO0lBQ0osQ0FBQztJQUVPLG9CQUFvQixDQUFDLEtBQWdCO1FBQzNDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU87YUFDbEMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUM5QyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRU8scUJBQXFCLENBQUMsR0FBZ0I7UUFDNUMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWTthQUN2QyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDeEMsQ0FBQzt3R0FuQlUsa0NBQWtDOzRHQUFsQyxrQ0FBa0M7O0FBQWxDLGtDQUFrQztJQUQ5QyxrQkFBa0IsQ0FBQyxnQ0FBZ0MsQ0FBQztHQUN4QyxrQ0FBa0MsQ0FvQjlDOzs0RkFwQlksa0NBQWtDO2tCQUY5QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IENhbGN1bGF0ZUlucHV0Q29ubmVjdGlvbnNSZXF1ZXN0IH0gZnJvbSAnLi9jYWxjdWxhdGUtaW5wdXQtY29ubmVjdGlvbnMtcmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbkJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3Rpb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKENhbGN1bGF0ZUlucHV0Q29ubmVjdGlvbnNSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZUlucHV0Q29ubmVjdGlvbnNFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPENhbGN1bGF0ZUlucHV0Q29ubmVjdGlvbnNSZXF1ZXN0LCBGQ29ubmVjdGlvbkJhc2VbXT4ge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZDb21wb25lbnRzU3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDYWxjdWxhdGVJbnB1dENvbm5lY3Rpb25zUmVxdWVzdCk6IEZDb25uZWN0aW9uQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fY2FsY3VsYXRlQ29ubmVjdGlvbnMoXG4gICAgICBuZXcgU2V0KHRoaXMuX2NhbGN1bGF0ZUNvbm5lY3RvcnMocmVxdWVzdC5mTm9kZSkpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZUNvbm5lY3RvcnMoZk5vZGU6IEZOb2RlQmFzZSk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mSW5wdXRzXG4gICAgICAuZmlsdGVyKCh4KSA9PiBmTm9kZS5pc0NvbnRhaW5zKHguaG9zdEVsZW1lbnQpKVxuICAgICAgLm1hcCgoeCkgPT4geC5mSWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlQ29ubmVjdGlvbnMoaWRzOiBTZXQ8c3RyaW5nPik6IEZDb25uZWN0aW9uQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mQ29ubmVjdGlvbnNcbiAgICAgIC5maWx0ZXIoKHgpID0+IGlkcy5oYXMoeC5mSW5wdXRJZCkpO1xuICB9XG59XG4iXX0=