playwright-fluent
Version:
Fluent API around playwright
27 lines (26 loc) • 1.07 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.getHandleOf = void 0;
const utils_1 = require("../../../utils");
const dom_actions_1 = require("../../dom-actions");
async function getHandleOf(selector, pageProviderOrPageInstance, options) {
if (!pageProviderOrPageInstance) {
return null;
}
(0, utils_1.report)('waiting for the selector to appear in DOM ...', options.verbose);
await (0, utils_1.waitUntil)(() => (0, dom_actions_1.exists)(selector, pageProviderOrPageInstance), `Selector '${selector}' was not found in DOM`, options);
const page = (0, dom_actions_1.getPageFrom)(pageProviderOrPageInstance);
if (!page) {
return null;
}
try {
const handle = await page.$(selector);
return handle;
}
catch (error) {
// eslint-disable-next-line no-console
console.warn(`An internal error has occured in Playwright API while getting an handle for selector '${selector}'.`, error);
return null;
}
}
exports.getHandleOf = getHandleOf;
;