UNPKG

appium-geckodriver

Version:

Appium driver for Gecko-based browsers and web views

27 lines (25 loc) 1.04 kB
import {util} from 'appium/support'; import type {GeckoDriver} from '../driver'; /** * Find element(s) by given strategy and selector. If context is provided, search will be performed within the context element. * This is needed to make lookup by image working. * @this GeckoDriver * @param strategy - The strategy to use for finding the element(s) (e.g., 'css selector', 'xpath', etc.) * @param selector - The selector to use for finding the element(s) * @param mult - Whether to find multiple elements (true) or a single element (false) * @param context - Optional context element ID to search within * @returns A promise that resolves to the found element(s) */ export async function findElOrEls( this: GeckoDriver, strategy: string, selector: string, mult: boolean, context?: string, ): Promise<any> { const endpoint = `/element${context ? `/${util.unwrapElement(context)}/element` : ''}${mult ? 's' : ''}`; return await this.gecko.proxy.command(endpoint, 'POST', { using: strategy, value: selector, }); }