@aurigma/design-atoms
Version:
Design Atoms is a part of Customer's Canvas SDK which allows for manipulating individual design elements through your code.
172 lines • 8.53 kB
JavaScript
import { EqualsOfFloatNumbers } from "@aurigma/design-atoms-model";
export var GripsResizeType;
(function (GripsResizeType) {
GripsResizeType["increaseRight"] = "increaseRight";
GripsResizeType["decreaseRight"] = "decreaseRight";
GripsResizeType["increaseLeft"] = "increaseLeft";
GripsResizeType["decreaseLeft"] = "decreaseLeft";
GripsResizeType["increaseTop"] = "increaseTop";
GripsResizeType["decreaseTop"] = "decreaseTop";
GripsResizeType["increaseBottom"] = "increaseBottom";
GripsResizeType["decreaseBottom"] = "decreaseBottom";
GripsResizeType["cornerTopLeftIncrease"] = "cornerTopLeftIncrease";
GripsResizeType["cornerTopLeftDecrease"] = "cornerTopLeftDecrease";
GripsResizeType["cornerTopRightIncrease"] = "cornerTopRightIncrease";
GripsResizeType["cornerTopRightDecrease"] = "cornerTopRightDecrease";
GripsResizeType["cornerBottomLeftIncrease"] = "cornerBottomLeftIncrease";
GripsResizeType["cornerBottomLeftDecrease"] = "cornerBottomLeftDecrease";
GripsResizeType["cornerBottomRightIncrease"] = "cornerBottomRightIncrease";
GripsResizeType["cornerBottomRightDecrease"] = "cornerBottomRightDecrease";
GripsResizeType["none"] = "none";
})(GripsResizeType || (GripsResizeType = {}));
var ResizeHelper = /** @class */ (function () {
function ResizeHelper() {
}
ResizeHelper.isLeftResizeGrip = function (index) {
return index === 1 || index === 4 || index === 5;
};
ResizeHelper.isTopResizeGrip = function (index) {
return index === 1 || index === 2 || index === 6;
};
ResizeHelper.isRightResizeGrip = function (index) {
return index === 2 || index === 3 || index === 7;
};
ResizeHelper.isBottomResizeGrip = function (index) {
return index === 3 || index === 4 || index === 8;
};
ResizeHelper.isCornerResizeGrip = function (index) {
return index === 1 || index === 2 || index === 3 || index === 4;
};
ResizeHelper.isEdgeResizeGrip = function (index) {
return index === 5 || index === 6 || index === 7 || index === 8;
};
ResizeHelper.isTopLeftResizeGrip = function (index) {
return index === 1;
};
ResizeHelper.isTopRightResizeGrip = function (index) {
return index === 2;
};
ResizeHelper.isBottomRightResizeGrip = function (index) {
return index === 3;
};
ResizeHelper.isBottomLeftResizeGrip = function (index) {
return index === 4;
};
ResizeHelper.geTypeOfResizeByGrips = function (currentRect, prevRect, resizeIndex) {
if (resizeIndex == null || prevRect == null)
return GripsResizeType.none;
var previousWidth = prevRect.width, previousHeight = prevRect.height;
var currentWidth = currentRect.width, currentHeight = currentRect.height;
var _a = prevRect.bounds, previousTop = _a.top, previousRight = _a.right, previousBottom = _a.bottom, previousLeft = _a.left;
var _b = currentRect.bounds, currentTop = _b.top, currentRight = _b.right, currentLeft = _b.left, currentBottom = _b.bottom;
if (ResizeHelper.isTopResizeGrip(resizeIndex)) {
if (currentTop > previousTop && EqualsOfFloatNumbers(previousWidth, currentWidth)) {
return GripsResizeType.decreaseTop;
}
if (currentTop < previousTop && EqualsOfFloatNumbers(previousWidth, currentWidth)) {
return GripsResizeType.increaseTop;
}
}
if (ResizeHelper.isBottomResizeGrip(resizeIndex)) {
if (currentBottom > previousBottom && EqualsOfFloatNumbers(previousWidth, currentWidth)) {
return GripsResizeType.increaseBottom;
}
if (currentBottom < previousBottom && EqualsOfFloatNumbers(previousWidth, currentWidth)) {
return GripsResizeType.decreaseBottom;
}
}
if (ResizeHelper.isRightResizeGrip(resizeIndex)) {
if (currentRight > previousRight && EqualsOfFloatNumbers(previousHeight, currentHeight)) {
return GripsResizeType.increaseRight;
}
if (currentRight < previousRight && EqualsOfFloatNumbers(previousHeight, currentHeight)) {
return GripsResizeType.decreaseRight;
}
}
if (ResizeHelper.isLeftResizeGrip(resizeIndex)) {
if (currentLeft > previousLeft && EqualsOfFloatNumbers(previousHeight, currentHeight)) {
return GripsResizeType.decreaseLeft;
}
if (currentLeft < previousLeft && EqualsOfFloatNumbers(previousHeight, currentHeight)) {
return GripsResizeType.increaseLeft;
}
}
if (ResizeHelper.isTopLeftResizeGrip(resizeIndex)) {
if (currentLeft < previousLeft && currentTop < previousTop) {
return GripsResizeType.cornerTopLeftIncrease;
}
else if (currentLeft > previousLeft && currentTop > previousTop) {
return GripsResizeType.cornerTopLeftDecrease;
}
}
if (ResizeHelper.isTopRightResizeGrip(resizeIndex)) {
if (currentRight > previousRight && currentTop < previousTop) {
return GripsResizeType.cornerTopRightIncrease;
}
else if (currentRight < previousRight && currentTop > previousTop) {
return GripsResizeType.cornerTopRightDecrease;
}
}
if (ResizeHelper.isBottomRightResizeGrip(resizeIndex)) {
if (currentBottom > previousBottom && currentRight > previousRight) {
return GripsResizeType.cornerBottomRightIncrease;
}
else if (currentBottom < previousBottom && currentRight < previousRight) {
return GripsResizeType.cornerBottomRightDecrease;
}
}
if (ResizeHelper.isBottomLeftResizeGrip(resizeIndex)) {
if (currentBottom > previousBottom && currentLeft < previousLeft) {
return GripsResizeType.cornerBottomLeftIncrease;
}
else if (currentBottom < previousBottom && currentLeft > previousLeft) {
return GripsResizeType.cornerBottomLeftDecrease;
}
}
return GripsResizeType.none;
};
ResizeHelper.getTypeResize = function (currentRect, prevRect) {
var previousWidth = prevRect.width, previousHeight = prevRect.height;
var currentWidth = currentRect.width, currentHeight = currentRect.height;
if (EqualsOfFloatNumbers(previousWidth, currentWidth) && previousHeight > currentHeight) {
return ResizeType.decHeight;
}
if (EqualsOfFloatNumbers(previousWidth, currentWidth) && previousHeight < currentHeight) {
return ResizeType.incHeight;
}
if (EqualsOfFloatNumbers(previousHeight, currentHeight) && previousWidth > currentWidth) {
return ResizeType.decWidth;
}
if (EqualsOfFloatNumbers(previousHeight, currentHeight) && previousWidth < currentWidth) {
return ResizeType.incWidth;
}
if (previousHeight < currentHeight && previousWidth < currentWidth) {
return ResizeType.decHeightAndWidth;
}
if (previousHeight > currentHeight && previousWidth > currentWidth) {
return ResizeType.incHeightAndWidth;
}
if (previousHeight > currentHeight && previousWidth < currentWidth) {
return ResizeType.incWidthAndDecHeight;
}
if (previousHeight < currentHeight && previousWidth > currentWidth) {
return ResizeType.incHeightAndDecWidth;
}
return ResizeType.none;
};
return ResizeHelper;
}());
export { ResizeHelper };
export var ResizeType;
(function (ResizeType) {
ResizeType["incHeight"] = "incHeight";
ResizeType["decHeight"] = "decHeight";
ResizeType["incWidth"] = "incWidth";
ResizeType["decWidth"] = "decWidth";
ResizeType["incHeightAndWidth"] = "incHeightAndWidth";
ResizeType["decHeightAndWidth"] = "decHeightAndWidth";
ResizeType["incWidthAndDecHeight"] = "incWidthAndDecHeight";
ResizeType["incHeightAndDecWidth"] = "incHeightAndDecWidth";
ResizeType["none"] = "none";
})(ResizeType || (ResizeType = {}));
//# sourceMappingURL=Grips.js.map