@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.
34 lines • 5.36 kB
JavaScript
import { __decorate } from "tslib";
import { Injectable } from '@angular/core';
import { CalculateChangedSizeRequest } from './calculate-changed-size.request';
import { RectExtensions } from '@foblex/2d';
import { FExecutionRegister } from '@foblex/mediator';
import { RESIZE_DIRECTIONS } from '../resize-direction';
import * as i0 from "@angular/core";
let CalculateChangedSizeExecution = class CalculateChangedSizeExecution {
handle(request) {
return this.change(request.originalRect, request.difference, RESIZE_DIRECTIONS[request.fResizeHandleType]);
}
change(rect, difference, direction) {
const result = RectExtensions.initialize(0, 0, rect.width + direction.x * difference.x, rect.height + direction.y * difference.y);
if (result.width < 0) {
result.x = result.width;
result.width = Math.abs(result.width);
}
if (result.height < 0) {
result.y = result.height;
result.height = Math.abs(result.height);
}
return RectExtensions.copy(result);
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateChangedSizeExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateChangedSizeExecution });
};
CalculateChangedSizeExecution = __decorate([
FExecutionRegister(CalculateChangedSizeRequest)
], CalculateChangedSizeExecution);
export { CalculateChangedSizeExecution };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateChangedSizeExecution, decorators: [{
type: Injectable
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNoYW5nZWQtc2l6ZS5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1yZXNpemUvY2FsY3VsYXRlLWNoYW5nZWQtc2l6ZS9jYWxjdWxhdGUtY2hhbmdlZC1zaXplLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLEVBQWlCLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFJakQsSUFBTSw2QkFBNkIsR0FBbkMsTUFBTSw2QkFBNkI7SUFHakMsTUFBTSxDQUFDLE9BQW9DO1FBQ2hELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FDaEIsT0FBTyxDQUFDLFlBQVksRUFDcEIsT0FBTyxDQUFDLFVBQVUsRUFDbEIsaUJBQWlCLENBQUUsT0FBTyxDQUFDLGlCQUFpQixDQUFFLENBQy9DLENBQUM7SUFDSixDQUFDO0lBRU8sTUFBTSxDQUNaLElBQVcsRUFBRSxVQUFrQixFQUFFLFNBQWlCO1FBRWxELE1BQU0sTUFBTSxHQUFHLGNBQWMsQ0FBQyxVQUFVLENBQ3RDLENBQUMsRUFBRSxDQUFDLEVBQ0osSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDLEVBQ3ZDLElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUN6QyxDQUFDO1FBRUYsSUFBSSxNQUFNLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3JCLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUN4QixNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hDLENBQUM7UUFFRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdEIsTUFBTSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1lBQ3pCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUVELE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyQyxDQUFDO3dHQS9CVSw2QkFBNkI7NEdBQTdCLDZCQUE2Qjs7QUFBN0IsNkJBQTZCO0lBRHpDLGtCQUFrQixDQUFDLDJCQUEyQixDQUFDO0dBQ25DLDZCQUE2QixDQWdDekM7OzRGQWhDWSw2QkFBNkI7a0JBRnpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYWxjdWxhdGVDaGFuZ2VkU2l6ZVJlcXVlc3QgfSBmcm9tICcuL2NhbGN1bGF0ZS1jaGFuZ2VkLXNpemUucmVxdWVzdCc7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0LCBSZWN0RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBSRVNJWkVfRElSRUNUSU9OUyB9IGZyb20gJy4uL3Jlc2l6ZS1kaXJlY3Rpb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKENhbGN1bGF0ZUNoYW5nZWRTaXplUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDYWxjdWxhdGVDaGFuZ2VkU2l6ZUV4ZWN1dGlvblxuICBpbXBsZW1lbnRzIElFeGVjdXRpb248Q2FsY3VsYXRlQ2hhbmdlZFNpemVSZXF1ZXN0LCBJUmVjdD4ge1xuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogQ2FsY3VsYXRlQ2hhbmdlZFNpemVSZXF1ZXN0KTogSVJlY3Qge1xuICAgIHJldHVybiB0aGlzLmNoYW5nZShcbiAgICAgIHJlcXVlc3Qub3JpZ2luYWxSZWN0LFxuICAgICAgcmVxdWVzdC5kaWZmZXJlbmNlLFxuICAgICAgUkVTSVpFX0RJUkVDVElPTlNbIHJlcXVlc3QuZlJlc2l6ZUhhbmRsZVR5cGUgXSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGFuZ2UoXG4gICAgcmVjdDogSVJlY3QsIGRpZmZlcmVuY2U6IElQb2ludCwgZGlyZWN0aW9uOiBJUG9pbnRcbiAgKTogSVJlY3Qge1xuICAgIGNvbnN0IHJlc3VsdCA9IFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoXG4gICAgICAwLCAwLFxuICAgICAgcmVjdC53aWR0aCArIGRpcmVjdGlvbi54ICogZGlmZmVyZW5jZS54LFxuICAgICAgcmVjdC5oZWlnaHQgKyBkaXJlY3Rpb24ueSAqIGRpZmZlcmVuY2UueVxuICAgICk7XG5cbiAgICBpZiAocmVzdWx0LndpZHRoIDwgMCkge1xuICAgICAgcmVzdWx0LnggPSByZXN1bHQud2lkdGg7XG4gICAgICByZXN1bHQud2lkdGggPSBNYXRoLmFicyhyZXN1bHQud2lkdGgpO1xuICAgIH1cblxuICAgIGlmIChyZXN1bHQuaGVpZ2h0IDwgMCkge1xuICAgICAgcmVzdWx0LnkgPSByZXN1bHQuaGVpZ2h0O1xuICAgICAgcmVzdWx0LmhlaWdodCA9IE1hdGguYWJzKHJlc3VsdC5oZWlnaHQpO1xuICAgIH1cblxuICAgIHJldHVybiBSZWN0RXh0ZW5zaW9ucy5jb3B5KHJlc3VsdCk7XG4gIH1cbn1cbiJdfQ==