UNPKG

@applitools/eyes

Version:
136 lines (135 loc) 3.72 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.RegionData = void 0; const utils = __importStar(require("@applitools/utils")); class RegionData { constructor(regionOrLocationOrX, sizeOrY, width, height) { let region; if (utils.types.isNumber(regionOrLocationOrX)) { region = { x: regionOrLocationOrX, y: sizeOrY, width: width, height: height }; } else if (!utils.types.has(regionOrLocationOrX, ['width', 'height'])) { region = { ...regionOrLocationOrX, ...sizeOrY }; } else { region = regionOrLocationOrX; } utils.guard.isNumber(region.x, { name: 'x' }); utils.guard.isNumber(region.y, { name: 'y' }); utils.guard.isNumber(region.width, { name: 'width', gte: 0 }); utils.guard.isNumber(region.height, { name: 'height', gte: 0 }); this._region = region; } get x() { return this._region.x; } set x(x) { utils.guard.isNumber(x, { name: 'x' }); this._region.x = x; } get left() { return this.x; } set left(left) { this.x = left; } getX() { return this.x; } setX(x) { this.x = x; } getLeft() { return this.x; } setLeft(left) { this.x = left; } get y() { return this._region.y; } set y(y) { utils.guard.isNumber(y, { name: 'y' }); this._region.y = y; } get top() { return this.y; } set top(top) { this.y = top; } getY() { return this.y; } setY(y) { this.y = y; } getTop() { return this.y; } setTop(top) { this.y = top; } get width() { return this._region.width; } set width(width) { utils.guard.isNumber(width, { name: 'width', gte: 0 }); this._region.width = width; } getWidth() { return this._region.width; } setWidth(width) { this.width = width; } get height() { return this._region.height; } set height(height) { utils.guard.isNumber(height, { name: 'height', gte: 0 }); this._region.height = height; } getHeight() { return this._region.height; } setHeight(height) { this.height = height; } /** @internal */ toObject() { return this._region; } /** @internal */ toJSON() { return utils.general.toJSON(this._region); } /** @internal */ toString() { return `(${this.x}, ${this.y}) ${this.width}x${this.height}`; } } exports.RegionData = RegionData;