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.

38 lines 4.83 kB
import { LineElement } from './line-element'; export class LineService { hostElement; fHorizontalLine; fVerticalLine; constructor(fBrowser, hostElement) { this.hostElement = hostElement; this.fHorizontalLine = new LineElement(fBrowser, this.hostElement); this.fVerticalLine = new LineElement(fBrowser, this.hostElement); this.fHorizontalLine.hide(); this.fVerticalLine.hide(); } drawVerticalLine(x, size, transform) { this.fVerticalLine.show(); this.fVerticalLine.draw({ left: x * transform.scale + transform.position.x + transform.scaledPosition.x, top: 0, width: 1, height: size.height }); } drawHorizontalLine(y, size, transform) { this.fHorizontalLine.show(); this.fHorizontalLine.draw({ left: 0, top: y * transform.scale + transform.position.y + transform.scaledPosition.y, width: size.width, height: 1 }); } hideVerticalLine() { this.fVerticalLine.hide(); } hideHorizontalLine() { this.fHorizontalLine.hide(); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWxpbmUtYWxpZ25tZW50L2RvbWFpbi9saW5lLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzdDLE1BQU0sT0FBTyxXQUFXO0lBS3dCO0lBSHRDLGVBQWUsQ0FBYztJQUM3QixhQUFhLENBQWM7SUFFbkMsWUFBWSxRQUF3QixFQUFVLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3BFLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxXQUFXLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxDQUFTLEVBQUUsSUFBVyxFQUFFLFNBQTBCO1FBQ3hFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUM7WUFDdEIsSUFBSSxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUM3RSxHQUFHLEVBQUUsQ0FBQztZQUNOLEtBQUssRUFBRSxDQUFDO1lBQ1IsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxDQUFTLEVBQUUsSUFBVyxFQUFFLFNBQTBCO1FBQzFFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7WUFDeEIsSUFBSSxFQUFFLENBQUM7WUFDUCxHQUFHLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzVFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixNQUFNLEVBQUUsQ0FBQztTQUNWLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVNpemUsIElUcmFuc2Zvcm1Nb2RlbCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgTGluZUVsZW1lbnQgfSBmcm9tICcuL2xpbmUtZWxlbWVudCc7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJ0Bmb2JsZXgvcGxhdGZvcm0nO1xuXG5leHBvcnQgY2xhc3MgTGluZVNlcnZpY2Uge1xuXG4gIHByaXZhdGUgZkhvcml6b250YWxMaW5lOiBMaW5lRWxlbWVudDtcbiAgcHJpdmF0ZSBmVmVydGljYWxMaW5lOiBMaW5lRWxlbWVudDtcblxuICBjb25zdHJ1Y3RvcihmQnJvd3NlcjogQnJvd3NlclNlcnZpY2UsIHByaXZhdGUgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy5mSG9yaXpvbnRhbExpbmUgPSBuZXcgTGluZUVsZW1lbnQoZkJyb3dzZXIsIHRoaXMuaG9zdEVsZW1lbnQpO1xuICAgIHRoaXMuZlZlcnRpY2FsTGluZSA9IG5ldyBMaW5lRWxlbWVudChmQnJvd3NlciwgdGhpcy5ob3N0RWxlbWVudCk7XG4gICAgdGhpcy5mSG9yaXpvbnRhbExpbmUuaGlkZSgpO1xuICAgIHRoaXMuZlZlcnRpY2FsTGluZS5oaWRlKCk7XG4gIH1cblxuICBwdWJsaWMgZHJhd1ZlcnRpY2FsTGluZSh4OiBudW1iZXIsIHNpemU6IElTaXplLCB0cmFuc2Zvcm06IElUcmFuc2Zvcm1Nb2RlbCk6IHZvaWQge1xuICAgIHRoaXMuZlZlcnRpY2FsTGluZS5zaG93KCk7XG4gICAgdGhpcy5mVmVydGljYWxMaW5lLmRyYXcoe1xuICAgICAgbGVmdDogeCAqIHRyYW5zZm9ybS5zY2FsZSArIHRyYW5zZm9ybS5wb3NpdGlvbi54ICsgdHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uLngsXG4gICAgICB0b3A6IDAsXG4gICAgICB3aWR0aDogMSxcbiAgICAgIGhlaWdodDogc2l6ZS5oZWlnaHRcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBkcmF3SG9yaXpvbnRhbExpbmUoeTogbnVtYmVyLCBzaXplOiBJU2l6ZSwgdHJhbnNmb3JtOiBJVHJhbnNmb3JtTW9kZWwpOiB2b2lkIHtcbiAgICB0aGlzLmZIb3Jpem9udGFsTGluZS5zaG93KCk7XG4gICAgdGhpcy5mSG9yaXpvbnRhbExpbmUuZHJhdyh7XG4gICAgICBsZWZ0OiAwLFxuICAgICAgdG9wOiB5ICogdHJhbnNmb3JtLnNjYWxlICsgdHJhbnNmb3JtLnBvc2l0aW9uLnkgKyB0cmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24ueSxcbiAgICAgIHdpZHRoOiBzaXplLndpZHRoLFxuICAgICAgaGVpZ2h0OiAxXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgaGlkZVZlcnRpY2FsTGluZSgpOiB2b2lkIHtcbiAgICB0aGlzLmZWZXJ0aWNhbExpbmUuaGlkZSgpO1xuICB9XG5cbiAgcHVibGljIGhpZGVIb3Jpem9udGFsTGluZSgpOiB2b2lkIHtcbiAgICB0aGlzLmZIb3Jpem9udGFsTGluZS5oaWRlKCk7XG4gIH1cbn1cbiJdfQ==