@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.
22 lines • 3.2 kB
JavaScript
import { BaseConnectionDragHandler } from './base-connection.drag-handler';
export class SourceTargetConnectionDragHandler extends BaseConnectionDragHandler {
_callTracker = new Map();
constructor(injector, fConnection) {
super(injector, fConnection);
}
setSourceDifference(difference) {
super.setSourceDifference(difference);
this._checkAndTriggerAction();
}
setTargetDifference(difference) {
super.setTargetDifference(difference);
this._checkAndTriggerAction();
}
_checkAndTriggerAction() {
if ([...this._callTracker.values()].every(Boolean)) {
this._callTracker.clear();
this.redraw();
}
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLXRhcmdldC1jb25uZWN0aW9uLmRyYWctaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzL3NvdXJjZS10YXJnZXQtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFLM0UsTUFBTSxPQUFPLGlDQUFrQyxTQUFRLHlCQUF5QjtJQUU3RCxZQUFZLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUM7SUFFM0QsWUFBWSxRQUFrQixFQUFFLFdBQTRCO1FBQzFELEtBQUssQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVlLG1CQUFtQixDQUFDLFVBQWtCO1FBQ3BELEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRWUsbUJBQW1CLENBQUMsVUFBa0I7UUFDcEQsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ25ELElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hCLENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29ubmVjdGlvbkRyYWdIYW5kbGVyIH0gZnJvbSAnLi9iYXNlLWNvbm5lY3Rpb24uZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBTb3VyY2VUYXJnZXRDb25uZWN0aW9uRHJhZ0hhbmRsZXIgZXh0ZW5kcyBCYXNlQ29ubmVjdGlvbkRyYWdIYW5kbGVyIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jYWxsVHJhY2tlciA9IG5ldyBNYXA8c3RyaW5nLCBib29sZWFuPigpO1xuXG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3RvciwgZkNvbm5lY3Rpb246IEZDb25uZWN0aW9uQmFzZSkge1xuICAgIHN1cGVyKGluamVjdG9yLCBmQ29ubmVjdGlvbik7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgc2V0U291cmNlRGlmZmVyZW5jZShkaWZmZXJlbmNlOiBJUG9pbnQpIHtcbiAgICBzdXBlci5zZXRTb3VyY2VEaWZmZXJlbmNlKGRpZmZlcmVuY2UpO1xuICAgIHRoaXMuX2NoZWNrQW5kVHJpZ2dlckFjdGlvbigpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHNldFRhcmdldERpZmZlcmVuY2UoZGlmZmVyZW5jZTogSVBvaW50KSB7XG4gICAgc3VwZXIuc2V0VGFyZ2V0RGlmZmVyZW5jZShkaWZmZXJlbmNlKTtcbiAgICB0aGlzLl9jaGVja0FuZFRyaWdnZXJBY3Rpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrQW5kVHJpZ2dlckFjdGlvbigpIHtcbiAgICBpZiAoWy4uLnRoaXMuX2NhbGxUcmFja2VyLnZhbHVlcygpXS5ldmVyeShCb29sZWFuKSkge1xuICAgICAgdGhpcy5fY2FsbFRyYWNrZXIuY2xlYXIoKTtcbiAgICAgIHRoaXMucmVkcmF3KCk7XG4gICAgfVxuICB9XG59XG5cbiJdfQ==