@applitools/eyes-playwright
Version:
Applitools Eyes SDK for Playwright
54 lines (53 loc) • 1.95 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.fixEyesUrl = exports.isTestDetailMode = exports.isListMode = exports.getTestIdFromUrl = exports.getHashValueFromUrl = exports.getHashFromUrl = exports.getHashFromUrlString = exports.getHashFromCurrentUrl = void 0;
const log_1 = __importDefault(require("../core/log"));
const logger = (0, log_1.default)();
function getHashFromCurrentUrl() {
return getHashFromUrl(window.location);
}
exports.getHashFromCurrentUrl = getHashFromCurrentUrl;
function getHashFromUrlString(urlString) {
const url = new URL(urlString);
return getHashFromUrl(url);
}
exports.getHashFromUrlString = getHashFromUrlString;
function getHashFromUrl(url) {
const hash = new URLSearchParams(url.hash.replace('#', '').replace('?', ''));
return hash;
}
exports.getHashFromUrl = getHashFromUrl;
function getHashValueFromUrl(urlString, key) {
const hash = getHashFromUrlString(urlString);
return hash.get(key);
}
exports.getHashValueFromUrl = getHashValueFromUrl;
function getTestIdFromUrl(urlString) {
return getHashValueFromUrl(urlString, 'testId');
}
exports.getTestIdFromUrl = getTestIdFromUrl;
function isListMode() {
const hash = getHashFromCurrentUrl();
return !hash.get('testId');
}
exports.isListMode = isListMode;
function isTestDetailMode() {
return !isListMode();
}
exports.isTestDetailMode = isTestDetailMode;
function fixEyesUrl(url) {
try {
const urlObj = new URL(url);
urlObj.hostname = urlObj.hostname.replace('eyesapi', 'eyes');
const fixedUrl = urlObj.href;
return fixedUrl.endsWith('/') ? fixedUrl : `${fixedUrl}/`;
}
catch (error) {
logger.warn('[URL Manager] Invalid URL:', url);
return url;
}
}
exports.fixEyesUrl = fixEyesUrl;