UNPKG

@applitools/eyes

Version:
194 lines (193 loc) 6.25 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.RemoteSessionEventHandler = exports.SessionEventHandlers = exports.SessionEventHandler = void 0; const utils = __importStar(require("@applitools/utils")); const RectangleSize_1 = require("./input/RectangleSize"); const TestResults_1 = require("./output/TestResults"); const ValidationInfo_1 = require("./output/ValidationInfo"); const ValidationResult_1 = require("./output/ValidationResult"); /** @deprecated */ class SessionEventHandler { /** @internal */ attach(eyes) { this._detach = eyes.on((name, data = {}) => { if (!utils.types.isFunction(this, name)) return; const args = []; if (name === 'setSizeWillStart') { args.push(new RectangleSize_1.RectangleSizeData(data.viewportSize)); } else if (['testStarted', 'validationWillStart', 'validationEnded', 'testEnded'].includes(name)) { args.push(data.sessionId); if (name === 'validationWillStart') { args.push(new ValidationInfo_1.ValidationInfoData(data.validationInfo)); } else if (name === 'validationEnded') { args.push(data.validationId, new ValidationResult_1.ValidationResultData(data.validationResult)); } else if (name === 'testEnded') { args.push(new TestResults_1.TestResultsData(data.testResults)); } } this[name](...args); }); } /** @internal */ detach() { if (this._detach) this._detach(); } } exports.SessionEventHandler = SessionEventHandler; /** @deprecated */ class SessionEventHandlers extends SessionEventHandler { constructor() { super(...arguments); this._handlers = new Set(); } addEventHandler(handler) { if (handler === this) return; this._handlers.add(handler); } removeEventHandler(handler) { if (handler === this) return; this._handlers.delete(handler); } clearEventHandlers() { this._handlers.clear(); } initStarted() { this._handlers.forEach(handler => handler.initStarted()); } initEnded() { this._handlers.forEach(handler => handler.initEnded()); } setSizeWillStart(viewportSize) { this._handlers.forEach(handler => handler.setSizeWillStart(viewportSize)); } setSizeEnded() { this._handlers.forEach(handler => handler.setSizeEnded()); } testStarted(sessionId) { this._handlers.forEach(handler => handler.testStarted(sessionId)); } testEnded(sessionId, testResults) { this._handlers.forEach(handler => handler.testEnded(sessionId, testResults)); } validationWillStart(sessionId, validationInfo) { this._handlers.forEach(handler => handler.validationWillStart(sessionId, validationInfo)); } validationEnded(sessionId, validationId, validationResult) { this._handlers.forEach(handler => handler.validationEnded(sessionId, validationId, validationResult)); } } exports.SessionEventHandlers = SessionEventHandlers; /** * @undocumented * @deprecated */ class RemoteSessionEventHandler extends SessionEventHandler { constructor(optionsOrServerUrl, accessKey, timeout) { super(); const options = utils.types.isObject(optionsOrServerUrl) ? optionsOrServerUrl : { serverUrl: optionsOrServerUrl, accessKey, timeout }; this._serverUrl = options.serverUrl; this._accessKey = options.accessKey; this._timeout = options.timeout; } get serverUrl() { return this._serverUrl; } set serverUrl(serverUrl) { this._serverUrl = serverUrl; } getServerUrl() { return this._serverUrl; } setServerUrl(serverUrl) { this.serverUrl = serverUrl; } get accessKey() { return this._accessKey; } set accessKey(accessKey) { this._accessKey = accessKey; } getAccessKey() { return this.accessKey; } setAccessKey(accessKey) { this._accessKey = accessKey; } get timeout() { return this._timeout; } set timeout(timeout) { this._timeout = timeout; } setTimeout(timeout) { this._timeout = timeout; } getTimeout() { return this._timeout; } initStarted() { return undefined; } initEnded() { return undefined; } setSizeWillStart() { return undefined; } setSizeEnded() { return undefined; } testStarted() { return undefined; } testEnded() { return undefined; } validationWillStart() { return undefined; } validationEnded() { return undefined; } /** @internal */ toJSON() { return utils.general.toJSON(this, ['serverUrl', 'accessKey']); } /** @internal */ toString() { return utils.general.toString(this); } } exports.RemoteSessionEventHandler = RemoteSessionEventHandler;