* Check if element is visible * @returns {Promise } True if element is visible
()
| 138 | * @returns {Promise<boolean>} True if element is visible |
| 139 | */ |
| 140 | async isVisible() { |
| 141 | switch (this.helperType) { |
| 142 | case 'playwright': |
| 143 | return this.element.isVisible() |
| 144 | case 'webdriver': |
| 145 | return this.element.isDisplayed() |
| 146 | case 'puppeteer': |
| 147 | return this.element.evaluate(el => { |
| 148 | const style = window.getComputedStyle(el) |
| 149 | return style.display !== 'none' && style.visibility !== 'hidden' && style.opacity !== '0' |
| 150 | }) |
| 151 | default: |
| 152 | throw new Error(`Unsupported helper type: ${this.helperType}`) |
| 153 | } |
| 154 | } |
| 155 | |
| 156 | /** |
| 157 | * Check if element is enabled |