UNPKG

multi-automator

Version:
74 lines (73 loc) 1.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /** * web 元素类 */ class Element { /** * WEB Element Handle */ constructor(options) { let { device, element } = options; this.device = device; this.element = element; } /** * 获取元素位置 * * @return {Promise{Object}} res * @return {number} res.x * @return {number} res.y * @return {number} res.width * @return {number} res.height */ async boundingBox() { let res = await this.element.boundingBox(); return res; } /** * 截屏 * * @param {string} path 存储路径 * @return {Promise{Buffer}} */ async screenshot() { return await this.element.screenshot(); } /** * 元素点击 * * @return {Promise} */ async tap() { return this.element.tap(); } /** * 回车 * * @return {Promise} */ async enter() { return this.element.press('Enter'); } /** * 对设备元素执行输入操作 * * @param {string} text 要输入的文本 * @return {Promise} */ async input(text) { return this.element.type(text); } /** * 获取元素属性值 * * @param {string} name 属性名称 * @return {string} 属性值 */ async attribute(name) { let res = await (await this.element.getProperty(name)).jsonValue(); return res; } } exports.default = Element;