Socket
Socket
Sign inDemoInstall

@applitools/core-base

Package Overview
Dependencies
Maintainers
34
Versions
100
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@applitools/core-base - npm Package Compare versions

Comparing version 1.1.32 to 1.1.33

2

dist/close-batch.js

@@ -30,3 +30,3 @@ "use strict";

return async function closeBatch({ settings, logger = defaultLogger, }) {
logger === null || logger === void 0 ? void 0 : logger.log('Command "closeBatch" is called with settings', settings);
logger.log('Command "closeBatch" is called with settings', settings);
settings = utils.types.isArray(settings) ? settings : [settings];

@@ -33,0 +33,0 @@ const results = await Promise.allSettled(settings.map(settings => (settings.batchId ? requests.closeBatch({ settings, logger }) : null)));

@@ -10,5 +10,5 @@ "use strict";

const delete_test_1 = require("./delete-test");
function makeCore({ agentId = 'core-base', cwd = process.cwd(), logger }) {
function makeCore({ agentId = 'core-base', cwd = process.cwd(), logger: defaultLogger }) {
var _a;
logger = (_a = logger === null || logger === void 0 ? void 0 : logger.extend({ label: 'core-base' })) !== null && _a !== void 0 ? _a : (0, logger_1.makeLogger)({ label: 'core-base' });
const logger = (_a = defaultLogger === null || defaultLogger === void 0 ? void 0 : defaultLogger.extend({ label: 'core-base' })) !== null && _a !== void 0 ? _a : (0, logger_1.makeLogger)({ label: 'core-base' });
logger.log(`Core is initialized in directory ${cwd} for agent ${agentId}`);

@@ -15,0 +15,0 @@ const coreRequests = (0, requests_1.makeCoreRequests)({ agentId, logger });

@@ -36,24 +36,22 @@ "use strict";

function makeOpenEyes({ requests, cwd = process.cwd(), logger: defaultLogger }) {
return async function openEyes({ settings, logger = defaultLogger }) {
return async function openEyes({ settings, logger = defaultLogger, }) {
var _a;
logger.log('Command "openEyes" is called with settings', settings);
if (!settings.ignoreGitBranching) {
if (!settings.gitBranchingTimestamp) {
let branches = { branchName: settings.branchName, parentBranchName: settings.parentBranchName };
try {
if (((_a = settings.batch) === null || _a === void 0 ? void 0 : _a.id) &&
!settings.batch.id.startsWith('generated') &&
!branches.branchName &&
!branches.parentBranchName) {
branches = await requests.getBatchBranches({ settings: { ...settings, batchId: settings.batch.id } });
}
if (branches.branchName && branches.parentBranchName && branches.branchName !== branches.parentBranchName) {
settings.gitBranchingTimestamp = await (0, extract_branching_timestamp_1.extractBranchingTimestamp)(branches, { cwd });
logger.log('Branching timestamp successfully extracted', settings.gitBranchingTimestamp);
}
if (!settings.ignoreGitBranching && !settings.gitBranchingTimestamp) {
let branchName = settings.branchName;
let parentBranchName = settings.parentBranchName;
try {
if (!branchName && !parentBranchName && ((_a = settings.batch) === null || _a === void 0 ? void 0 : _a.id) && !settings.batch.id.startsWith('generated')) {
const branches = await requests.getBatchBranches({ settings: { ...settings, batchId: settings.batch.id } });
branchName = branches.branchName;
parentBranchName = branches.parentBranchName;
}
catch (err) {
logger.error('Error during extracting merge timestamp', err);
if (branchName && parentBranchName && branchName !== parentBranchName) {
settings.gitBranchingTimestamp = await (0, extract_branching_timestamp_1.extractBranchingTimestamp)({ branchName, parentBranchName }, { cwd });
logger.log('Branching timestamp successfully extracted', settings.gitBranchingTimestamp);
}
}
catch (err) {
logger.error('Error during extracting merge timestamp', err);
}
}

@@ -68,8 +66,8 @@ else {

check: utils.general.wrap((0, check_1.makeCheck)({ requests: eyesRequests, logger }), async (check, options) => {
var _a, _b, _c;
var _d;
const index = (_a = options.settings) === null || _a === void 0 ? void 0 : _a.stepIndex;
(_b = queue[index]) !== null && _b !== void 0 ? _b : (queue[index] = utils.promises.makeControlledPromise());
var _a, _b, _c, _d;
var _e;
const index = (_b = (_a = options.settings) === null || _a === void 0 ? void 0 : _a.stepIndex) !== null && _b !== void 0 ? _b : -1;
(_c = queue[index]) !== null && _c !== void 0 ? _c : (queue[index] = utils.promises.makeControlledPromise());
if (index > 0)
await Promise.race([((_c = queue[_d = index - 1]) !== null && _c !== void 0 ? _c : (queue[_d] = utils.promises.makeControlledPromise())), aborted]);
await Promise.race([((_d = queue[_e = index - 1]) !== null && _d !== void 0 ? _d : (queue[_e] = utils.promises.makeControlledPromise())), aborted]);
return Promise.race([check(options), aborted]).finally(queue[index].resolve);

@@ -76,0 +74,0 @@ }),

@@ -52,3 +52,3 @@ "use strict";

{
timeout: [].concat(Array(5).fill(2000) /* 5x2s */, Array(4).fill(5000) /* 4x5s */, 10000 /* 10s */),
timeout: [...Array(5).fill(2000) /* 5x2s */, ...Array(4).fill(5000) /* 4x5s */, 10000 /* 10s */],
statuses: [503],

@@ -68,3 +68,3 @@ },

var _a;
const logger = (_a = options.logger) !== null && _a !== void 0 ? _a : defaultLogger;
const logger = (_a = options === null || options === void 0 ? void 0 : options.logger) !== null && _a !== void 0 ? _a : defaultLogger;
let requestId = request.headers.get('x-applitools-eyes-client-request-id');

@@ -75,3 +75,3 @@ if (!requestId) {

}
logger === null || logger === void 0 ? void 0 : logger.log(`Request "${options.name}" [${requestId}] will be sent to the address "[${request.method}]${request.url}" with body`, options.body);
logger === null || logger === void 0 ? void 0 : logger.log(`Request "${options === null || options === void 0 ? void 0 : options.name}" [${requestId}] will be sent to the address "[${request.method}]${request.url}" with body`, options === null || options === void 0 ? void 0 : options.body);
},

@@ -87,11 +87,11 @@ beforeRetry({ request, attempt }) {

var _a;
const logger = (_a = options.logger) !== null && _a !== void 0 ? _a : defaultLogger;
const logger = (_a = options === null || options === void 0 ? void 0 : options.logger) !== null && _a !== void 0 ? _a : defaultLogger;
const requestId = request.headers.get('x-applitools-eyes-client-request-id');
logger === null || logger === void 0 ? void 0 : logger.log(`Request "${options.name}" [${requestId}] that was sent to the address "[${request.method}]${request.url}" respond with ${response.statusText}(${response.status})`, !response.ok ? `and body ${JSON.stringify(await response.clone().text())}` : '');
logger === null || logger === void 0 ? void 0 : logger.log(`Request "${options === null || options === void 0 ? void 0 : options.name}" [${requestId}] that was sent to the address "[${request.method}]${request.url}" respond with ${response.statusText}(${response.status})`, !response.ok ? `and body ${JSON.stringify(await response.clone().text())}` : '');
},
afterError({ request, error, options }) {
var _a;
const logger = (_a = options.logger) !== null && _a !== void 0 ? _a : defaultLogger;
const logger = (_a = options === null || options === void 0 ? void 0 : options.logger) !== null && _a !== void 0 ? _a : defaultLogger;
const requestId = request.headers.get('x-applitools-eyes-client-request-id');
logger === null || logger === void 0 ? void 0 : logger.error(`Request "${options.name}" [${requestId}] that was sent to the address "[${request.method}]${request.url}" failed with error`, error);
logger === null || logger === void 0 ? void 0 : logger.error(`Request "${options === null || options === void 0 ? void 0 : options.name}" [${requestId}] that was sent to the address "[${request.method}]${request.url}" failed with error`, error);
},

@@ -103,5 +103,7 @@ };

async afterResponse({ request, response, options }) {
const { expected, name } = options;
if (expected && (utils.types.isArray(expected) ? !expected.includes(response.status) : expected !== response.status)) {
throw new Error(`Request "${name}" that was sent to the address "[${request.method}]${request.url}" failed due to unexpected status ${response.statusText}(${response.status})`);
if ((options === null || options === void 0 ? void 0 : options.expected) &&
(utils.types.isArray(options === null || options === void 0 ? void 0 : options.expected)
? !options.expected.includes(response.status)
: options.expected !== response.status)) {
throw new Error(`Request "${options === null || options === void 0 ? void 0 : options.name}" that was sent to the address "[${request.method}]${request.url}" failed due to unexpected status ${response.statusText}(${response.status})`);
}

@@ -124,9 +126,9 @@ },

// polling for result
const pollResponse = await req(response.headers.get('Location'), (0, req_1.mergeOptions)(options, {
const pollResponse = await req(response.headers.get('Location'), (0, req_1.mergeOptions)(options !== null && options !== void 0 ? options : {}, {
method: 'GET',
body: null,
expected: null,
body: undefined,
expected: undefined,
retry: {
statuses: [200],
timeout: [].concat(Array(5).fill(1000) /* 5x1s */, Array(5).fill(2000) /* 5x2s */, 5000 /* 5s */),
timeout: [...Array(5).fill(1000) /* 5x1s */, ...Array(5).fill(2000) /* 5x2s */, 5000 /* 5s */],
},

@@ -142,9 +144,9 @@ hooks: {

// getting result of the initial request
const resultResponse = await req(pollResponse.headers.get('Location'), (0, req_1.mergeOptions)(options, {
const resultResponse = await req(pollResponse.headers.get('Location'), (0, req_1.mergeOptions)(options !== null && options !== void 0 ? options : {}, {
method: 'DELETE',
expected: null,
expected: undefined,
hooks: {
beforeRetry({ response, stop }) {
// if the long request is blocked due to concurrency the whole long request should start over
if (response.status === 503)
if ((response === null || response === void 0 ? void 0 : response.status) === 503)
return stop;

@@ -151,0 +153,0 @@ },

@@ -31,5 +31,5 @@ "use strict";

const utils = __importStar(require("@applitools/utils"));
const to_self_healing_report_1 = require("../utils/to-self-healing-report");
function makeCoreRequests({ agentId: defaultAgentId, fetch, logger: defaultLogger, }) {
defaultLogger !== null && defaultLogger !== void 0 ? defaultLogger : (defaultLogger = (0, logger_1.makeLogger)());
function makeCoreRequests({ agentId: defaultAgentId, fetch, logger, }) {
var _a;
const defaultLogger = (_a = logger === null || logger === void 0 ? void 0 : logger.extend({ label: 'core-requests' })) !== null && _a !== void 0 ? _a : (0, logger_1.makeLogger)({ label: 'core-requests' });
const getAccountInfoWithCache = utils.general.cachify(getAccountInfo, ([{ settings }]) => {

@@ -50,3 +50,3 @@ return [settings.serverUrl, settings.apiKey, settings.proxy];

};
async function openEyes({ settings, logger = defaultLogger }) {
async function openEyes({ settings, logger = defaultLogger, }) {
var _a, _b, _c;

@@ -86,3 +86,3 @@ const agentId = `${defaultAgentId} ${settings.agentId ? `[${settings.agentId}]` : ''}`.trim();

deviceInfo: settings.environment.deviceName,
displaySize: utils.geometry.round(settings.environment.viewportSize),
displaySize: settings.environment.viewportSize && utils.geometry.round(settings.environment.viewportSize),
inferred: settings.environment.userAgent && `useragent:${settings.environment.userAgent}`,

@@ -106,3 +106,3 @@ }),

const test = await response.json().then(async (result) => {
var _a, _b, _c, _d, _e;
var _a, _b, _c, _d, _e, _f;
const test = {

@@ -117,7 +117,6 @@ testId: result.id,

isNew: (_c = result.isNew) !== null && _c !== void 0 ? _c : response.status === 201,
keepBatchOpen: settings.keepBatchOpen,
keepBatchOpen: (_d = settings.keepBatchOpen) !== null && _d !== void 0 ? _d : false,
server: { serverUrl: settings.serverUrl, apiKey: settings.apiKey, proxy: settings.proxy },
rendererId: (_d = settings.environment) === null || _d === void 0 ? void 0 : _d.rendererId,
rendererInfo: (_e = settings.environment) === null || _e === void 0 ? void 0 : _e.rendererInfo,
account: null,
rendererId: (_e = settings.environment) === null || _e === void 0 ? void 0 : _e.rendererId,
rendererInfo: (_f = settings.environment) === null || _f === void 0 ? void 0 : _f.rendererInfo,
};

@@ -184,8 +183,9 @@ if (result.renderingInfo) {

method: 'GET',
expected: 200,
logger,
});
const result = await response.json().then(result => {
return { branchName: result.scmSourceBranch, parentBranchName: result.scmTargetBranch };
});
const result = response.status === 200
? await response.json().then(result => {
return { branchName: result.scmSourceBranch, parentBranchName: result.scmTargetBranch };
})
: { branchName: undefined, parentBranchName: undefined };
logger.log('Request "getBatchBranches" finished successfully with body', result);

@@ -221,3 +221,3 @@ return result;

}
async function logEvent({ settings, logger = defaultLogger }) {
async function logEvent({ settings, logger = defaultLogger, }) {
settings = utils.types.isArray(settings) ? settings : [settings];

@@ -267,2 +267,3 @@ const [config] = settings;

extractText,
report,
close,

@@ -275,3 +276,3 @@ abort,

upload({ name: 'image', resource: target.image }),
upload({ name: 'dom', resource: target.dom, gzip: true }),
target.dom && upload({ name: 'dom', resource: target.dom, gzip: true }),
]);

@@ -299,3 +300,3 @@ const response = await req(`/api/sessions/running/${encodeURIComponent(test.testId)}`, {

upload({ name: 'image', resource: target.image }),
upload({ name: 'dom', resource: target.dom, gzip: true }),
target.dom && upload({ name: 'dom', resource: target.dom, gzip: true }),
]);

@@ -321,3 +322,3 @@ const matchOptions = transformCheckOptions({ target, settings });

beforeRetry({ response, stop }) {
if (response.status === 404)
if ((response === null || response === void 0 ? void 0 : response.status) === 404)
return stop;

@@ -342,3 +343,3 @@ },

upload({ name: 'image', resource: target.image }),
upload({ name: 'dom', resource: target.dom, gzip: true }),
target.dom && upload({ name: 'dom', resource: target.dom, gzip: true }),
]);

@@ -352,3 +353,3 @@ const response = await req('/api/sessions/running/images/textregions', {

domUrl: target.dom,
location: utils.geometry.round(target.locationInViewport),
location: target.locationInViewport && utils.geometry.round(target.locationInViewport),
},

@@ -371,3 +372,3 @@ patterns: settings.patterns,

upload({ name: 'image', resource: target.image }),
upload({ name: 'dom', resource: target.dom, gzip: true }),
target.dom && upload({ name: 'dom', resource: target.dom, gzip: true }),
]);

@@ -381,5 +382,5 @@ const response = await req('/api/sessions/running/images/text', {

domUrl: target.dom,
location: utils.geometry.round(target.locationInViewport),
location: target.locationInViewport && utils.geometry.round(target.locationInViewport),
},
regions: [{ left: 0, top: 0, ...utils.geometry.round(target.size), expected: settings.hint }],
regions: target.size && [{ left: 0, top: 0, ...utils.geometry.round(target.size), expected: settings.hint }],
minMatch: settings.minMatch,

@@ -402,4 +403,4 @@ language: settings.language,

}
const sendSelfHealingReport = reportSelfHealing({ settings, logger });
closed = true;
const reportPromise = report({ settings, logger });
const response = await req(`/api/sessions/running/${encodeURIComponent(test.testId)}`, {

@@ -422,3 +423,3 @@ name: 'close',

logger.log('Request "close" finished successfully with body', result);
await sendSelfHealingReport;
await reportPromise;
return [result];

@@ -432,4 +433,4 @@ }

}
const sendSelfHealingReport = reportSelfHealing({ settings, logger });
aborted = true;
const reportPromise = report({ settings, logger });
const response = await req(`/api/sessions/running/${encodeURIComponent(test.testId)}`, {

@@ -447,14 +448,18 @@ name: 'abort',

logger.log('Request "abort" finished successfully with body', result);
await sendSelfHealingReport;
await reportPromise;
return [result];
}
async function reportSelfHealing({ settings, logger = defaultLogger, }) {
async function report({ settings, logger = defaultLogger, }) {
logger.log(`Request "report" called for test ${test.testId} with settings`, settings);
if (!(settings === null || settings === void 0 ? void 0 : settings.testMetadata) || utils.types.isEmpty(settings.testMetadata))
return;
try {
if (utils.types.isNull(settings === null || settings === void 0 ? void 0 : settings.testMetadata) || utils.types.isEmpty(settings === null || settings === void 0 ? void 0 : settings.testMetadata))
return;
logger.log('Request "reportSelfHealing" called');
await req(`/api/sessions/running/${encodeURIComponent(test.testId)}/selfhealdata`, {
name: 'reportSelfHealing',
method: 'PUT',
body: (0, to_self_healing_report_1.toSelfHealingReport)(settings.testMetadata),
body: {
operations: settings.testMetadata.map(item => {
return { old: item === null || item === void 0 ? void 0 : item.originalSelector, new: item === null || item === void 0 ? void 0 : item.successfulSelector, timestamp: new Date().toISOString() };
}),
},
expected: 200,

@@ -477,7 +482,7 @@ logger,

domUrl: target.dom,
location: utils.geometry.round(target.locationInViewport),
location: target.locationInViewport && utils.geometry.round(target.locationInViewport),
pageCoverageInfo: settings.pageId && {
pageId: settings.pageId,
imagePositionInPage: utils.geometry.round(target.locationInView),
...utils.geometry.round(target.fullViewSize),
imagePositionInPage: target.locationInView && utils.geometry.round(target.locationInView),
...(target.fullViewSize && utils.geometry.round(target.fullViewSize)),
},

@@ -513,2 +518,3 @@ },

return regions === null || regions === void 0 ? void 0 : regions.map(region => {
var _a;
const options = {};

@@ -527,3 +533,3 @@ if (utils.types.has(region, 'region')) {

}
region = utils.geometry.round(utils.geometry.padding(region.region, region.padding));
region = utils.geometry.round(utils.geometry.padding(region.region, (_a = region.padding) !== null && _a !== void 0 ? _a : 0));
}

@@ -530,0 +536,0 @@ return { left: region.x, top: region.y, width: region.width, height: region.height, ...options };

@@ -32,3 +32,3 @@ "use strict";

return async function upload({ name, resource, gzip }) {
logger.log(`Upload called for ${name} resource`);
logger === null || logger === void 0 ? void 0 : logger.log(`Upload called for ${name} resource`);
if (utils.types.isNull(resource) || utils.types.isHttpUrl(resource))

@@ -57,3 +57,5 @@ return resource;

beforeRetry({ response, error, attempt }) {
logger.warn(`Upload of ${name} resource will be retried due to ${error ? `an error with message "${error.message}"` : `unexpected status ${response.statusText}(${response.status})`} in previous attempt (${attempt})`);
logger === null || logger === void 0 ? void 0 : logger.warn(`Upload of ${name} resource will be retried due to ${error
? `an error with message "${error.message}"`
: `unexpected status ${response.statusText}(${response.status})`} in previous attempt (${attempt})`);
},

@@ -65,3 +67,3 @@ },

}
logger.log(`Upload of ${name} resource finished successfully in location`, url);
logger === null || logger === void 0 ? void 0 : logger.log(`Upload of ${name} resource finished successfully in location`, url);
return url;

@@ -68,0 +70,0 @@ };

@@ -28,3 +28,4 @@ "use strict";

const utils = __importStar(require("@applitools/utils"));
exports.extractBranchingTimestamp = utils.general.cachify(async ({ branchName, parentBranchName }, options) => {
exports.extractBranchingTimestamp = utils.general.cachify(extractGitBranchingTimestamp);
async function extractGitBranchingTimestamp({ branchName, parentBranchName }, options) {
var _a;

@@ -47,2 +48,2 @@ const command = `HASH=$(git merge-base ${branchName} ${parentBranchName}) && git show -q --format=%cI $HASH`;

return timestamp;
});
}

@@ -31,3 +31,3 @@ "use strict";

const utils = __importStar(require("@applitools/utils"));
async function transformTarget({ target, settings }) {
async function transformTarget({ target, settings, }) {
if (target.image instanceof URL)

@@ -63,3 +63,3 @@ target.image = target.image.href;

target.image = await image.toPng();
if (!target.size || settings.normalization || settings.region) {
if (!target.size || (settings === null || settings === void 0 ? void 0 : settings.normalization) || (settings === null || settings === void 0 ? void 0 : settings.region)) {
target.size = image.size;

@@ -66,0 +66,0 @@ }

{
"name": "@applitools/core-base",
"version": "1.1.32",
"version": "1.1.33",
"homepage": "https://applitools.com",

@@ -40,4 +40,4 @@ "bugs": {

"scripts": {
"lint": "eslint '**/*.ts'",
"build": "tsc",
"lint": "node ../../node_modules/.bin/eslint '**/*.ts'",
"build": "node ../../node_modules/.bin/tsc --project ./tsconfig.build.json",
"test": "mocha --no-timeouts -r ts-node/register --parallel --jobs 15 './test/**/*.spec.ts'",

@@ -53,33 +53,16 @@ "test:sanity": "yarn test:unit",

},
"husky": {
"hooks": {
"pre-push": "yarn bongo lint"
}
},
"dependencies": {
"@applitools/image": "1.0.22",
"@applitools/logger": "1.1.42",
"@applitools/req": "1.1.28",
"@applitools/utils": "1.3.28"
"@applitools/image": "1.0.25",
"@applitools/logger": "1.1.45",
"@applitools/req": "1.1.30",
"@applitools/utils": "1.3.30"
},
"devDependencies": {
"@applitools/bongo": "^2.2.2",
"@applitools/test-server": "^1.1.22",
"@applitools/test-utils": "^1.5.10",
"@applitools/test-server": "^1.1.24",
"@applitools/test-utils": "^1.5.12",
"@types/mocha": "^9.1.1",
"@types/node": "12",
"@types/node-fetch": "^2.6.2",
"@typescript-eslint/eslint-plugin": "^5.22.0",
"@typescript-eslint/parser": "^5.22.0",
"eslint": "^8.14.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-mocha-no-only": "^1.1.1",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^4.0.0",
"husky": "^4.3.7",
"mocha": "^10.0.0",
"nock": "^13.2.8",
"prettier": "^2.6.2",
"ts-node": "^10.7.0",
"typescript": "^4.6.4"
"nock": "^13.2.8"
},

@@ -86,0 +69,0 @@ "engines": {

import type { AbortSettings, TestResult } from './types';
import { type Logger } from '@applitools/logger';
import { type EyesRequests } from './server/requests';
declare type Options = {
type Options = {
requests: EyesRequests;

@@ -9,5 +9,5 @@ logger: Logger;

export declare function makeAbort({ requests, logger: defaultLogger }: Options): ({ settings, logger, }?: {
settings?: AbortSettings;
logger?: Logger;
settings?: AbortSettings | undefined;
logger?: Logger | undefined;
}) => Promise<TestResult[]>;
export {};
import type { ImageTarget, CheckSettings, CloseSettings, TestResult } from './types';
import { type Logger } from '@applitools/logger';
import { type EyesRequests } from './server/requests';
declare type Options = {
type Options = {
requests: EyesRequests;

@@ -10,5 +10,5 @@ logger: Logger;

target: ImageTarget;
settings?: CheckSettings & CloseSettings;
logger?: Logger;
settings?: (CheckSettings<import("@applitools/utils").Region> & CloseSettings) | undefined;
logger?: Logger | undefined;
}) => Promise<TestResult[]>;
export {};
import type { ImageTarget, CheckSettings, CheckResult } from './types';
import { type Logger } from '@applitools/logger';
import { type EyesRequests } from './server/requests';
declare type Options = {
type Options = {
requests: EyesRequests;

@@ -10,5 +10,5 @@ logger: Logger;

target: ImageTarget;
settings?: CheckSettings;
logger?: Logger;
settings?: CheckSettings<import("@applitools/utils").Region> | undefined;
logger?: Logger | undefined;
}) => Promise<CheckResult[]>;
export {};

@@ -5,10 +5,10 @@ import type { CloseBatchSettings } from './types';

import { type CoreRequests } from './server/requests';
declare type Options = {
type Options = {
requests: CoreRequests;
logger?: Logger;
logger: Logger;
};
export declare function makeCloseBatch({ requests, logger: defaultLogger }: Options): ({ settings, logger, }: {
settings: MaybeArray<CloseBatchSettings>;
logger?: Logger;
logger?: Logger | undefined;
}) => Promise<void>;
export {};
import type { CloseSettings, TestResult } from './types';
import { type Logger } from '@applitools/logger';
import { type EyesRequests } from './server/requests';
declare type Options = {
type Options = {
requests: EyesRequests;

@@ -9,5 +9,5 @@ logger: Logger;

export declare function makeClose({ requests, logger: defaultLogger }: Options): ({ settings, logger, }?: {
settings?: CloseSettings;
logger?: Logger;
settings?: CloseSettings | undefined;
logger?: Logger | undefined;
}) => Promise<TestResult[]>;
export {};
import type { Core } from './types';
import { type Logger } from '@applitools/logger';
declare type Options = {
type Options = {
agentId?: string;

@@ -8,3 +8,3 @@ cwd?: string;

};
export declare function makeCore({ agentId, cwd, logger }: Options): Core;
export declare function makeCore({ agentId, cwd, logger: defaultLogger }: Options): Core;
export {};

@@ -5,3 +5,3 @@ import type { DeleteTestSettings } from './types';

import { type CoreRequests } from './server/requests';
declare type Options = {
type Options = {
requests: CoreRequests;

@@ -12,4 +12,4 @@ logger: Logger;

settings: MaybeArray<DeleteTestSettings>;
logger?: Logger;
logger?: Logger | undefined;
}) => Promise<void>;
export {};

@@ -11,6 +11,6 @@ export declare class CoreError extends Error {

message: string;
stack: string;
stack: string | undefined;
reason: string;
info: Record<string, any>;
info: Record<string, any> | undefined;
};
}

@@ -5,3 +5,3 @@ import type { ImageTarget, ExtractTextSettings } from './types';

import { type EyesRequests } from './server/requests';
declare type Options = {
type Options = {
requests: EyesRequests;

@@ -12,5 +12,5 @@ logger: Logger;

target: ImageTarget;
settings?: MaybeArray<ExtractTextSettings>;
logger?: Logger;
settings: MaybeArray<ExtractTextSettings>;
logger?: Logger | undefined;
}) => Promise<string[]>;
export {};
import type { ImageTarget, LocateTextSettings, LocateTextResult } from './types';
import { type Logger } from '@applitools/logger';
import { type EyesRequests } from './server/requests';
declare type Options = {
type Options = {
requests: EyesRequests;

@@ -10,5 +10,5 @@ logger: Logger;

target: ImageTarget;
settings?: LocateTextSettings<TPattern, import("@applitools/utils").Region>;
logger?: Logger;
settings: LocateTextSettings<TPattern, import("@applitools/utils").Region>;
logger?: Logger | undefined;
}) => Promise<LocateTextResult<TPattern>>;
export {};
import type { ImageTarget, LocateSettings, LocateResult } from './types';
import { type Logger } from '@applitools/logger';
import { type CoreRequests } from './server/requests';
declare type Options = {
type Options = {
requests: CoreRequests;

@@ -11,4 +11,4 @@ logger: Logger;

settings: LocateSettings<TLocator, import("@applitools/utils").Region>;
logger?: Logger;
logger?: Logger | undefined;
}) => Promise<LocateResult<TLocator>>;
export {};
import type { OpenSettings, Eyes } from './types';
import { type Logger } from '@applitools/logger';
import { type CoreRequests } from './server/requests';
declare type Options = {
type Options = {
requests: CoreRequests;

@@ -9,6 +9,6 @@ cwd: string;

};
export declare function makeOpenEyes({ requests, cwd, logger: defaultLogger }: Options): ({ settings, logger }: {
export declare function makeOpenEyes({ requests, cwd, logger: defaultLogger }: Options): ({ settings, logger, }: {
settings: OpenSettings;
logger?: Logger;
logger?: Logger | undefined;
}) => Promise<Eyes>;
export {};
import { type Req, type Options, type Proxy, type Fetch } from '@applitools/req';
import { Logger } from '@applitools/logger';
export declare type ReqEyesConfig = {
export type ReqEyesConfig = {
serverUrl: string;

@@ -11,3 +11,3 @@ apiKey: string;

};
export declare type ReqEyesOptions = Options & {
export type ReqEyesOptions = Options & {
name?: string;

@@ -17,3 +17,3 @@ expected?: number | number[];

};
export declare type ReqEyes = Req<ReqEyesOptions>;
export type ReqEyes = Req<ReqEyesOptions>;
export declare function makeReqEyes({ config, fetch, logger }: {

@@ -20,0 +20,0 @@ config: ReqEyesConfig;

@@ -1,3 +0,2 @@

import type { MaybeArray } from '@applitools/utils';
import type { ImageTarget, Core, Eyes, ServerSettings, CheckSettings, LocateSettings, LocateTextSettings, ExtractTextSettings, CloseSettings, CloseBatchSettings, DeleteTestSettings, LogEventSettings, TestInfo, AccountInfo, LocateResult, CheckResult, LocateTextResult, TestResult, OpenSettings } from '../types';
import type { Core, Eyes, ServerSettings, TestReportSettings, TestInfo } from '../types';
import { type Fetch } from '@applitools/req';

@@ -7,16 +6,3 @@ import { type Logger } from '@applitools/logger';

import { type Upload } from './upload';
export interface CoreRequests extends Core {
openEyes(options: {
settings: OpenSettings;
logger?: Logger;
}): Promise<EyesRequests>;
locate<TLocator extends string>(options: {
target: ImageTarget;
settings: LocateSettings<TLocator>;
logger?: Logger;
}): Promise<LocateResult<TLocator>>;
getAccountInfo(options: {
settings: ServerSettings;
logger?: Logger;
}): Promise<AccountInfo>;
export interface CoreRequests extends Core<EyesRequests> {
getBatchBranches(options: {

@@ -28,46 +14,13 @@ settings: ServerSettings & {

}): Promise<{
branchName: string;
parentBranchName: string;
branchName?: string;
parentBranchName?: string;
}>;
closeBatch(options: {
settings: CloseBatchSettings;
}
export interface EyesRequests extends Required<Eyes> {
report(options: {
settings?: TestReportSettings;
logger?: Logger;
}): Promise<void>;
deleteTest(options: {
settings: DeleteTestSettings;
logger?: Logger;
}): Promise<void>;
logEvent(options: {
settings: MaybeArray<LogEventSettings>;
logger?: Logger;
}): any;
}
export interface EyesRequests extends Eyes {
readonly test: TestInfo;
check(options: {
target: ImageTarget;
settings?: CheckSettings;
logger?: Logger;
}): Promise<CheckResult[]>;
checkAndClose(options: {
target: ImageTarget;
settings?: CheckSettings;
logger?: Logger;
}): Promise<TestResult[]>;
locateText<TPattern extends string>(options: {
target: ImageTarget;
settings: LocateTextSettings<TPattern>;
logger?: Logger;
}): Promise<LocateTextResult<TPattern>>;
extractText(options: {
target: ImageTarget;
settings: ExtractTextSettings;
logger?: Logger;
}): Promise<string[]>;
close(options?: {
settings?: CloseSettings;
logger?: Logger;
}): Promise<TestResult[]>;
}
export declare function makeCoreRequests({ agentId: defaultAgentId, fetch, logger: defaultLogger, }: {
export declare function makeCoreRequests({ agentId: defaultAgentId, fetch, logger, }: {
agentId: string;

@@ -81,3 +34,3 @@ fetch?: Fetch;

upload: Upload;
logger?: Logger;
logger: Logger;
}): EyesRequests;
/// <reference types="node" />
/// <reference types="node" />
import { type Logger } from '@applitools/logger';
import { type Proxy } from '@applitools/req';
export declare type Upload = (options: {
export type Upload = (options: {
name: string;

@@ -7,0 +6,0 @@ resource: Buffer | URL | string;

/// <reference types="node" />
/// <reference types="node" />
import { type MaybeArray, type Region, type Size, type Location } from '@applitools/utils';

@@ -61,3 +60,3 @@ import { type Logger } from '@applitools/logger';

}): Promise<TestResult[]>;
locateText?<TPattern extends string>(options: {
locateText<TPattern extends string>(options: {
target: TTarget;

@@ -67,3 +66,3 @@ settings: LocateTextSettings<TPattern>;

}): Promise<LocateTextResult<TPattern>>;
extractText?(options: {
extractText(options: {
target: TTarget;

@@ -106,8 +105,8 @@ settings: MaybeArray<ExtractTextSettings>;

}
declare type SessionType = 'SEQUENTIAL' | 'PROGRESSION';
declare type CustomProperty = {
type SessionType = 'SEQUENTIAL' | 'PROGRESSION';
type CustomProperty = {
name: string;
value: string;
};
export declare type Batch = {
export type Batch = {
id?: string;

@@ -120,3 +119,3 @@ name?: string;

};
declare type Environment = {
type Environment = {
os?: string;

@@ -170,3 +169,3 @@ osInfo?: string;

}
export declare type LocateResult<TLocator extends string> = Record<TLocator, Region[]>;
export type LocateResult<TLocator extends string> = Record<TLocator, Region[]>;
export interface CloseBatchSettings extends ServerSettings {

@@ -199,4 +198,4 @@ batchId: string;

}
declare type ImageRotation = -270 | -180 | -90 | 0 | 90 | 180 | 270;
declare type OffsetRect = {
type ImageRotation = -270 | -180 | -90 | 0 | 90 | 180 | 270;
type OffsetRect = {
top?: number;

@@ -207,4 +206,4 @@ right?: number;

};
declare type ImageCropRect = OffsetRect;
declare type ImageCropRegion = Region;
type ImageCropRect = OffsetRect;
type ImageCropRegion = Region;
export interface ImageSettings<TRegion = Region> {

@@ -223,7 +222,7 @@ region?: TRegion;

}
declare type MatchLevel = 'None' | 'Layout' | 'Layout1' | 'Layout2' | 'Content' | 'IgnoreColors' | 'Strict' | 'Exact';
declare type AccessibilityRegionType = 'IgnoreContrast' | 'RegularText' | 'LargeText' | 'BoldText' | 'GraphicalObject';
declare type AccessibilityLevel = 'AA' | 'AAA';
declare type AccessibilityGuidelinesVersion = 'WCAG_2_0' | 'WCAG_2_1';
declare type CodedRegion<TRegion = Region> = {
type MatchLevel = 'None' | 'Layout' | 'Layout1' | 'Layout2' | 'Content' | 'IgnoreColors' | 'Strict' | 'Exact';
type AccessibilityRegionType = 'IgnoreContrast' | 'RegularText' | 'LargeText' | 'BoldText' | 'GraphicalObject';
type AccessibilityLevel = 'AA' | 'AAA';
type AccessibilityGuidelinesVersion = 'WCAG_2_0' | 'WCAG_2_1';
type CodedRegion<TRegion = Region> = {
region: TRegion;

@@ -233,6 +232,6 @@ padding?: number | OffsetRect;

};
declare type FloatingRegion<TRegion = Region> = CodedRegion<TRegion> & {
type FloatingRegion<TRegion = Region> = CodedRegion<TRegion> & {
offset?: OffsetRect;
};
declare type AccessibilityRegion<TRegion = Region> = CodedRegion<TRegion> & {
type AccessibilityRegion<TRegion = Region> = CodedRegion<TRegion> & {
type?: AccessibilityRegionType;

@@ -287,6 +286,6 @@ };

}
declare type TextRegion = Region & {
type TextRegion = Region & {
text: string;
};
export declare type LocateTextResult<TPattern extends string> = Record<TPattern, TextRegion[]>;
export type LocateTextResult<TPattern extends string> = Record<TPattern, TextRegion[]>;
export interface ExtractTextSettings<TRegion = Region> extends ImageSettings<TRegion> {

@@ -299,3 +298,3 @@ hint?: string;

}
export declare type SelfHealingReport = {
export type SelfHealingReport = {
operations: {

@@ -313,7 +312,6 @@ timestamp: string;

};
export declare type TestMetadata = Record<string, any>[];
export interface ReportSelfHealingSettings {
testMetadata?: TestMetadata;
export interface TestReportSettings {
testMetadata?: Record<string, any>[];
}
export interface CloseSettings extends ReportSelfHealingSettings {
export interface CloseSettings extends TestReportSettings {
updateBaselineIfNew?: boolean;

@@ -324,9 +322,9 @@ updateBaselineIfDifferent?: boolean;

}
export interface AbortSettings extends ReportSelfHealingSettings {
export interface AbortSettings extends TestReportSettings {
/** @internal */
userCommandId?: string;
}
declare type TestResultsStatus = 'Passed' | 'Unresolved' | 'Failed';
declare type AccessibilityStatus = 'Passed' | 'Failed';
declare type StepInfo = {
type TestResultsStatus = 'Passed' | 'Unresolved' | 'Failed';
type AccessibilityStatus = 'Passed' | 'Failed';
type StepInfo = {
readonly name?: string;

@@ -340,3 +338,3 @@ readonly isDifferent?: boolean;

};
declare type ApiUrls = {
type ApiUrls = {
readonly baselineImage?: string;

@@ -348,7 +346,7 @@ readonly currentImage?: string;

};
declare type AppUrls = {
type AppUrls = {
readonly step?: string;
readonly stepEditor?: string;
};
declare type SessionUrls = {
type SessionUrls = {
readonly batch?: string;

@@ -355,0 +353,0 @@ readonly session?: string;

@@ -0,6 +1,4 @@

/// <reference types="node" />
import { ExecOptions } from 'child_process';
export declare const extractBranchingTimestamp: (({ branchName, parentBranchName }: {
branchName: string;
parentBranchName: string;
}, options?: ExecOptions) => Promise<string>) & {
export declare const extractBranchingTimestamp: typeof extractGitBranchingTimestamp & {
getCachedValues(): Promise<string>[];

@@ -10,1 +8,6 @@ setCachedValue(key: any, value: Promise<string>): void;

};
declare function extractGitBranchingTimestamp({ branchName, parentBranchName }: {
branchName: string;
parentBranchName: string;
}, options?: ExecOptions): Promise<string>;
export {};
import type { ImageTarget, ImageSettings } from '../types';
export declare function transformTarget({ target, settings }: {
export declare function transformTarget({ target, settings, }: {
target: ImageTarget;
settings?: ImageSettings;
}): Promise<ImageTarget>;
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc