glance-selector
Version:
Glance selector library
45 lines (36 loc) • 1.6 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _log = require("../log");
var _log2 = _interopRequireDefault(_log);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/*
Searching the dom by xpath or css for value only gets the default. Inputs dynamically set don't update the dom which
xpath and css won't find. The method is used to get search those dynamic values as well.
*/
exports.default = {
properties: {
"value": {
locate: function locate(_ref) {
var label = _ref.label,
scopeElement = _ref.scopeElement;
var resultHandler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function (err, result) {
return result;
};
try {
_log2.default.debug("Searching in value:", label);
return browserExecute(function (scope, l, handler) {
var results = scope.querySelectorAll("button,input,option,param");
var elements = Array.prototype.slice.apply(results);
return handler(null, elements.filter(function (input) {
return input.value && input.value.toLowerCase().indexOf(l.toLowerCase()) != -1;
}));
}, scopeElement, label, resultHandler);
} catch (error) {
return resultHandler(error, []);
}
}
}
}
};