'use strict';
Object.defineProperty(exports, '__esModule', {
value: true
});
var sanitizeString = function sanitizeString(str) {
if (!str) {
return '';
}
return String(str).replace(/\./g, '_').replace(/\s/g, '').toLowerCase();
};
/**
* formats capability object into sanitized string for e.g.filenames
* @param {Object} caps Selenium capabilities
*/
var caps = function caps(_caps) {
var result = undefined;
/**
* mobile caps
*/
if (_caps.deviceName) {
result = [sanitizeString(_caps.deviceName), sanitizeString(_caps.platformName), sanitizeString(_caps.platformVersion), sanitizeString(_caps.app)];
} else {
result = [sanitizeString(_caps.browserName), sanitizeString(_caps.version), sanitizeString(_caps.platform)];
}
result = result.filter(function (n) {
return n !== undefined && n !== '';
});
return result.join('.');
};
/**
* formats arguments into string
* @param {Array} args arguments object
*/
var args = function args(_args) {
return _args.map(function (arg) {
if (typeof arg === 'function' || typeof arg === 'string' && arg.indexOf('return (function') === 0) {
return '<Function>';
} else if (typeof arg === 'string') {
return '"' + arg + '"';
} else if (Array.isArray(arg)) {
return arg.join(', ');
}
return arg;
}).join(', ');
};
var css = function css(value) {
if (!value) {
return value;
}
return value.trim().replace(/'/g, '').replace(/"/g, '').toLowerCase();
};
exports['default'] = {
css: css,
args: args,
caps: caps
};
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9jaHJpc3RpYW5icm9tYW5uL1NpdGVzL1dlYnByb2pla3RlL3dlYmRyaXZlcmpzL0RFVi9saWIvaGVscGVycy9zYW5pdGl6ZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLElBQUksY0FBYyxHQUFHLFNBQWpCLGNBQWMsQ0FBYSxHQUFHLEVBQUU7QUFDaEMsUUFBSSxDQUFDLEdBQUcsRUFBRTtBQUNOLGVBQU8sRUFBRSxDQUFBO0tBQ1o7O0FBRUQsV0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQ2IsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FDbkIsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FDbEIsV0FBVyxFQUFFLENBQUE7Q0FDckIsQ0FBQTs7Ozs7O0FBTUQsSUFBSSxJQUFJLEdBQUcsY0FBVSxLQUFJLEVBQUU7QUFDdkIsUUFBSSxNQUFNLFlBQUEsQ0FBQTs7Ozs7QUFLVixRQUFJLEtBQUksQ0FBQyxVQUFVLEVBQUU7QUFDakIsY0FBTSxHQUFHLENBQUMsY0FBYyxDQUFDLEtBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxjQUFjLENBQUMsS0FBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLGNBQWMsQ0FBQyxLQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsY0FBYyxDQUFDLEtBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBO0tBQ2hKLE1BQU07QUFDSCxjQUFNLEdBQUcsQ0FBQyxjQUFjLENBQUMsS0FBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxLQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsY0FBYyxDQUFDLEtBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFBO0tBQzNHOztBQUVELFVBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQUEsQ0FBQztlQUFJLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxLQUFLLEVBQUU7S0FBQSxDQUFDLENBQUE7QUFDeEQsV0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0NBQzFCLENBQUE7Ozs7OztBQU1ELElBQUksSUFBSSxHQUFHLGNBQVUsS0FBSSxFQUFFO0FBQ3ZCLFdBQU8sS0FBSSxDQUFDLEdBQUcsQ0FBQyxVQUFDLEdBQUcsRUFBSztBQUNyQixZQUFJLE9BQU8sR0FBRyxLQUFLLFVBQVUsSUFBSyxPQUFPLEdBQUcsS0FBSyxRQUFRLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQUFBQyxFQUFFO0FBQ2pHLG1CQUFPLFlBQVksQ0FBQTtTQUN0QixNQUFNLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFO0FBQ2hDLG1CQUFPLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFBO1NBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO0FBQzNCLG1CQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7U0FDeEI7O0FBRUQsZUFBTyxHQUFHLENBQUE7S0FDYixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0NBQ2hCLENBQUE7O0FBRUQsSUFBSSxHQUFHLEdBQUcsU0FBTixHQUFHLENBQWEsS0FBSyxFQUFFO0FBQ3ZCLFFBQUksQ0FBQyxLQUFLLEVBQUU7QUFDUixlQUFPLEtBQUssQ0FBQTtLQUNmOztBQUVELFdBQU8sS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtDQUN4RSxDQUFBOztxQkFFYztBQUNYLE9BQUcsRUFBSCxHQUFHO0FBQ0gsUUFBSSxFQUFKLElBQUk7QUFDSixRQUFJLEVBQUosSUFBSTtDQUNQIiwiZmlsZSI6Ii9Vc2Vycy9jaHJpc3RpYW5icm9tYW5uL1NpdGVzL1dlYnByb2pla3RlL3dlYmRyaXZlcmpzL0RFVi9saWIvaGVscGVycy9zYW5pdGl6ZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImxldCBzYW5pdGl6ZVN0cmluZyA9IGZ1bmN0aW9uIChzdHIpIHtcbiAgICBpZiAoIXN0cikge1xuICAgICAgICByZXR1cm4gJydcbiAgICB9XG5cbiAgICByZXR1cm4gU3RyaW5nKHN0cilcbiAgICAgICAgLnJlcGxhY2UoL1xcLi9nLCAnXycpXG4gICAgICAgIC5yZXBsYWNlKC9cXHMvZywgJycpXG4gICAgICAgIC50b0xvd2VyQ2FzZSgpXG59XG5cbi8qKlxuICogZm9ybWF0cyBjYXBhYmlsaXR5IG9iamVjdCBpbnRvIHNhbml0aXplZCBzdHJpbmcgZm9yIGUuZy5maWxlbmFtZXNcbiAqIEBwYXJhbSB7T2JqZWN0fSBjYXBzICBTZWxlbml1bSBjYXBhYmlsaXRpZXNcbiAqL1xubGV0IGNhcHMgPSBmdW5jdGlvbiAoY2Fwcykge1xuICAgIGxldCByZXN1bHRcblxuICAgIC8qKlxuICAgICAqIG1vYmlsZSBjYXBzXG4gICAgICovXG4gICAgaWYgKGNhcHMuZGV2aWNlTmFtZSkge1xuICAgICAgICByZXN1bHQgPSBbc2FuaXRpemVTdHJpbmcoY2Fwcy5kZXZpY2VOYW1lKSwgc2FuaXRpemVTdHJpbmcoY2Fwcy5wbGF0Zm9ybU5hbWUpLCBzYW5pdGl6ZVN0cmluZyhjYXBzLnBsYXRmb3JtVmVyc2lvbiksIHNhbml0aXplU3RyaW5nKGNhcHMuYXBwKV1cbiAgICB9IGVsc2Uge1xuICAgICAgICByZXN1bHQgPSBbc2FuaXRpemVTdHJpbmcoY2Fwcy5icm93c2VyTmFtZSksIHNhbml0aXplU3RyaW5nKGNhcHMudmVyc2lvbiksIHNhbml0aXplU3RyaW5nKGNhcHMucGxhdGZvcm0pXVxuICAgIH1cblxuICAgIHJlc3VsdCA9IHJlc3VsdC5maWx0ZXIobiA9PiBuICE9PSB1bmRlZmluZWQgJiYgbiAhPT0gJycpXG4gICAgcmV0dXJuIHJlc3VsdC5qb2luKCcuJylcbn1cblxuLyoqXG4gKiBmb3JtYXRzIGFyZ3VtZW50cyBpbnRvIHN0cmluZ1xuICogQHBhcmFtICB7QXJyYXl9IGFyZ3MgYXJndW1lbnRzIG9iamVjdFxuICovXG5sZXQgYXJncyA9IGZ1bmN0aW9uIChhcmdzKSB7XG4gICAgcmV0dXJuIGFyZ3MubWFwKChhcmcpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBhcmcgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBhcmcgPT09ICdzdHJpbmcnICYmIGFyZy5pbmRleE9mKCdyZXR1cm4gKGZ1bmN0aW9uJykgPT09IDApKSB7XG4gICAgICAgICAgICByZXR1cm4gJzxGdW5jdGlvbj4nXG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGFyZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiAnXCInICsgYXJnICsgJ1wiJ1xuICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoYXJnKSkge1xuICAgICAgICAgICAgcmV0dXJuIGFyZy5qb2luKCcsICcpXG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYXJnXG4gICAgfSkuam9pbignLCAnKVxufVxuXG5sZXQgY3NzID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWVcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWUudHJpbSgpLnJlcGxhY2UoLycvZywgJycpLnJlcGxhY2UoL1wiL2csICcnKS50b0xvd2VyQ2FzZSgpXG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgICBjc3MsXG4gICAgYXJncyxcbiAgICBjYXBzXG59XG4iXX0= |