Class: Puppeteer::Bidi::XPathQueryHandler

Inherits:
BaseQueryHandler show all
Defined in:
lib/puppeteer/bidi/query_handler.rb,
sig/puppeteer/bidi/query_handler.rbs

Instance Method Summary collapse

Methods inherited from BaseQueryHandler

#run_query_all, #run_query_one, #wait_for, #wait_for_in_frame

Instance Method Details

#query_all_scriptObject

Returns:

  • (Object)


342
343
344
345
346
347
348
# File 'lib/puppeteer/bidi/query_handler.rb', line 342

def query_all_script
  <<~JAVASCRIPT
  async (PuppeteerUtil, element, selector) => {
    return [...PuppeteerUtil.xpathQuerySelectorAll(element, selector)];
  }
  JAVASCRIPT
end

#query_one_scriptObject

Returns:

  • (Object)


331
332
333
334
335
336
337
338
339
340
# File 'lib/puppeteer/bidi/query_handler.rb', line 331

def query_one_script
  <<~JAVASCRIPT
  (PuppeteerUtil, element, selector) => {
    for (const result of PuppeteerUtil.xpathQuerySelectorAll(element, selector, 1)) {
      return result;
    }
    return null;
  }
  JAVASCRIPT
end

#wait_for_selector_scriptObject

Returns:

  • (Object)


350
351
352
353
354
355
356
357
358
359
360
361
# File 'lib/puppeteer/bidi/query_handler.rb', line 350

def wait_for_selector_script
  <<~JAVASCRIPT
  (PuppeteerUtil, selector, root, visibility) => {
    let element = null;
    for (const result of PuppeteerUtil.xpathQuerySelectorAll(root || document, selector, 1)) {
      element = result;
      break;
    }
    return PuppeteerUtil.checkVisibility(element, visibility === null ? undefined : visibility);
  }
  JAVASCRIPT
end