webdriverio 7.17.0 → 7.17.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/commands/browser/$$.d.ts +50 -0
- package/build/commands/browser/$$.d.ts.map +1 -0
- package/build/commands/browser/$$.js +57 -0
- package/build/commands/browser/$.d.ts +77 -0
- package/build/commands/browser/$.d.ts.map +1 -0
- package/build/commands/browser/$.js +91 -0
- package/build/commands/browser/addCommand.d.ts +37 -0
- package/build/commands/browser/addCommand.d.ts.map +1 -0
- package/build/commands/browser/addCommand.js +37 -0
- package/build/commands/browser/call.d.ts +42 -0
- package/build/commands/browser/call.d.ts.map +1 -0
- package/build/commands/browser/call.js +49 -0
- package/build/commands/browser/custom$$.d.ts +26 -0
- package/build/commands/browser/custom$$.d.ts.map +1 -0
- package/build/commands/browser/custom$$.js +47 -0
- package/build/commands/browser/custom$.d.ts +25 -0
- package/build/commands/browser/custom$.d.ts.map +1 -0
- package/build/commands/browser/custom$.js +47 -0
- package/build/commands/browser/debug.d.ts +32 -0
- package/build/commands/browser/debug.d.ts.map +1 -0
- package/build/commands/browser/debug.js +108 -0
- package/build/commands/browser/deleteCookies.d.ts +45 -0
- package/build/commands/browser/deleteCookies.d.ts.map +1 -0
- package/build/commands/browser/deleteCookies.js +56 -0
- package/build/commands/browser/execute.d.ts +37 -0
- package/build/commands/browser/execute.d.ts.map +1 -0
- package/build/commands/browser/execute.js +55 -0
- package/build/commands/browser/executeAsync.d.ts +45 -0
- package/build/commands/browser/executeAsync.d.ts.map +1 -0
- package/build/commands/browser/executeAsync.js +63 -0
- package/build/commands/browser/getCookies.d.ts +34 -0
- package/build/commands/browser/getCookies.d.ts.map +1 -0
- package/build/commands/browser/getCookies.js +46 -0
- package/build/commands/browser/getPuppeteer.d.ts +38 -0
- package/build/commands/browser/getPuppeteer.d.ts.map +1 -0
- package/build/commands/browser/getPuppeteer.js +119 -0
- package/build/commands/browser/getWindowSize.d.ts +25 -0
- package/build/commands/browser/getWindowSize.d.ts.map +1 -0
- package/build/commands/browser/getWindowSize.js +30 -0
- package/build/commands/browser/keys.d.ts +28 -0
- package/build/commands/browser/keys.d.ts.map +1 -0
- package/build/commands/browser/keys.js +64 -0
- package/build/commands/browser/mock.d.ts +111 -0
- package/build/commands/browser/mock.d.ts.map +1 -0
- package/build/commands/browser/mock.js +164 -0
- package/build/commands/browser/mockClearAll.d.ts +28 -0
- package/build/commands/browser/mockClearAll.d.ts.map +1 -0
- package/build/commands/browser/mockClearAll.js +43 -0
- package/build/commands/browser/mockRestoreAll.d.ts +26 -0
- package/build/commands/browser/mockRestoreAll.d.ts.map +1 -0
- package/build/commands/browser/mockRestoreAll.js +41 -0
- package/build/commands/browser/newWindow.d.ts +41 -0
- package/build/commands/browser/newWindow.d.ts.map +1 -0
- package/build/commands/browser/newWindow.js +83 -0
- package/build/commands/browser/overwriteCommand.d.ts +32 -0
- package/build/commands/browser/overwriteCommand.d.ts.map +1 -0
- package/build/commands/browser/overwriteCommand.js +32 -0
- package/build/commands/browser/pause.d.ts +23 -0
- package/build/commands/browser/pause.d.ts.map +1 -0
- package/build/commands/browser/pause.js +27 -0
- package/build/commands/browser/react$$.d.ts +36 -0
- package/build/commands/browser/react$$.d.ts.map +1 -0
- package/build/commands/browser/react$$.js +51 -0
- package/build/commands/browser/react$.d.ts +46 -0
- package/build/commands/browser/react$.d.ts.map +1 -0
- package/build/commands/browser/react$.js +59 -0
- package/build/commands/browser/reloadSession.d.ts +23 -0
- package/build/commands/browser/reloadSession.d.ts.map +1 -0
- package/build/commands/browser/reloadSession.js +58 -0
- package/build/commands/browser/savePDF.d.ts +46 -0
- package/build/commands/browser/savePDF.d.ts.map +1 -0
- package/build/commands/browser/savePDF.js +51 -0
- package/build/commands/browser/saveRecordingScreen.d.ts +28 -0
- package/build/commands/browser/saveRecordingScreen.d.ts.map +1 -0
- package/build/commands/browser/saveRecordingScreen.js +47 -0
- package/build/commands/browser/saveScreenshot.d.ts +22 -0
- package/build/commands/browser/saveScreenshot.d.ts.map +1 -0
- package/build/commands/browser/saveScreenshot.js +41 -0
- package/build/commands/browser/setCookies.d.ts +57 -0
- package/build/commands/browser/setCookies.d.ts.map +1 -0
- package/build/commands/browser/setCookies.js +66 -0
- package/build/commands/browser/setTimeout.d.ts +31 -0
- package/build/commands/browser/setTimeout.d.ts.map +1 -0
- package/build/commands/browser/setTimeout.js +61 -0
- package/build/commands/browser/setWindowSize.d.ts +20 -0
- package/build/commands/browser/setWindowSize.d.ts.map +1 -0
- package/build/commands/browser/setWindowSize.js +43 -0
- package/build/commands/browser/switchWindow.d.ts +30 -0
- package/build/commands/browser/switchWindow.d.ts.map +1 -0
- package/build/commands/browser/switchWindow.js +73 -0
- package/build/commands/browser/throttle.d.ts +3 -0
- package/build/commands/browser/throttle.d.ts.map +1 -0
- package/build/commands/browser/throttle.js +144 -0
- package/build/commands/browser/touchAction.d.ts +61 -0
- package/build/commands/browser/touchAction.d.ts.map +1 -0
- package/build/commands/browser/touchAction.js +65 -0
- package/build/commands/browser/uploadFile.d.ts +32 -0
- package/build/commands/browser/uploadFile.d.ts.map +1 -0
- package/build/commands/browser/uploadFile.js +63 -0
- package/build/commands/browser/url.d.ts +38 -0
- package/build/commands/browser/url.d.ts.map +1 -0
- package/build/commands/browser/url.js +49 -0
- package/build/commands/browser/waitUntil.d.ts +44 -0
- package/build/commands/browser/waitUntil.d.ts.map +1 -0
- package/build/commands/browser/waitUntil.js +73 -0
- package/build/commands/browser.d.ts +70 -0
- package/build/commands/browser.d.ts.map +1 -0
- package/build/commands/browser.js +44 -0
- package/build/commands/constant.d.ts +19 -0
- package/build/commands/constant.d.ts.map +1 -0
- package/build/commands/constant.js +91 -0
- package/build/commands/element/$$.d.ts +46 -0
- package/build/commands/element/$$.d.ts.map +1 -0
- package/build/commands/element/$$.js +50 -0
- package/build/commands/element/$.d.ts +72 -0
- package/build/commands/element/$.d.ts.map +1 -0
- package/build/commands/element/$.js +76 -0
- package/build/commands/element/addValue.d.ts +33 -0
- package/build/commands/element/addValue.d.ts.map +1 -0
- package/build/commands/element/addValue.js +48 -0
- package/build/commands/element/clearValue.d.ts +28 -0
- package/build/commands/element/clearValue.d.ts.map +1 -0
- package/build/commands/element/clearValue.js +32 -0
- package/build/commands/element/click.d.ts +73 -0
- package/build/commands/element/click.d.ts.map +1 -0
- package/build/commands/element/click.js +134 -0
- package/build/commands/element/custom$$.d.ts +28 -0
- package/build/commands/element/custom$$.d.ts.map +1 -0
- package/build/commands/element/custom$$.js +57 -0
- package/build/commands/element/custom$.d.ts +27 -0
- package/build/commands/element/custom$.d.ts.map +1 -0
- package/build/commands/element/custom$.js +57 -0
- package/build/commands/element/doubleClick.d.ts +25 -0
- package/build/commands/element/doubleClick.d.ts.map +1 -0
- package/build/commands/element/doubleClick.js +51 -0
- package/build/commands/element/dragAndDrop.d.ts +41 -0
- package/build/commands/element/dragAndDrop.d.ts.map +1 -0
- package/build/commands/element/dragAndDrop.js +98 -0
- package/build/commands/element/getAttribute.d.ts +28 -0
- package/build/commands/element/getAttribute.d.ts.map +1 -0
- package/build/commands/element/getAttribute.js +32 -0
- package/build/commands/element/getCSSProperty.d.ts +71 -0
- package/build/commands/element/getCSSProperty.d.ts.map +1 -0
- package/build/commands/element/getCSSProperty.js +108 -0
- package/build/commands/element/getComputedLabel.d.ts +20 -0
- package/build/commands/element/getComputedLabel.d.ts.map +1 -0
- package/build/commands/element/getComputedLabel.js +24 -0
- package/build/commands/element/getComputedRole.d.ts +20 -0
- package/build/commands/element/getComputedRole.d.ts.map +1 -0
- package/build/commands/element/getComputedRole.js +24 -0
- package/build/commands/element/getHTML.d.ts +32 -0
- package/build/commands/element/getHTML.d.ts.map +1 -0
- package/build/commands/element/getHTML.js +46 -0
- package/build/commands/element/getLocation.d.ts +6 -0
- package/build/commands/element/getLocation.d.ts.map +1 -0
- package/build/commands/element/getLocation.js +46 -0
- package/build/commands/element/getProperty.d.ts +53 -0
- package/build/commands/element/getProperty.d.ts.map +1 -0
- package/build/commands/element/getProperty.js +31 -0
- package/build/commands/element/getSize.d.ts +6 -0
- package/build/commands/element/getSize.d.ts.map +1 -0
- package/build/commands/element/getSize.js +47 -0
- package/build/commands/element/getTagName.d.ts +25 -0
- package/build/commands/element/getTagName.d.ts.map +1 -0
- package/build/commands/element/getTagName.js +29 -0
- package/build/commands/element/getText.d.ts +42 -0
- package/build/commands/element/getText.d.ts.map +1 -0
- package/build/commands/element/getText.js +46 -0
- package/build/commands/element/getValue.d.ts +25 -0
- package/build/commands/element/getValue.d.ts.map +1 -0
- package/build/commands/element/getValue.js +33 -0
- package/build/commands/element/isClickable.d.ts +40 -0
- package/build/commands/element/isClickable.d.ts.map +1 -0
- package/build/commands/element/isClickable.js +57 -0
- package/build/commands/element/isDisplayed.d.ts +50 -0
- package/build/commands/element/isDisplayed.d.ts.map +1 -0
- package/build/commands/element/isDisplayed.js +85 -0
- package/build/commands/element/isDisplayedInViewport.d.ts +38 -0
- package/build/commands/element/isDisplayedInViewport.d.ts.map +1 -0
- package/build/commands/element/isDisplayedInViewport.js +55 -0
- package/build/commands/element/isEnabled.d.ts +34 -0
- package/build/commands/element/isEnabled.d.ts.map +1 -0
- package/build/commands/element/isEnabled.js +38 -0
- package/build/commands/element/isEqual.d.ts +24 -0
- package/build/commands/element/isEqual.d.ts.map +1 -0
- package/build/commands/element/isEqual.js +52 -0
- package/build/commands/element/isExisting.d.ts +49 -0
- package/build/commands/element/isExisting.d.ts.map +1 -0
- package/build/commands/element/isExisting.js +65 -0
- package/build/commands/element/isFocused.d.ts +28 -0
- package/build/commands/element/isFocused.d.ts.map +1 -0
- package/build/commands/element/isFocused.js +42 -0
- package/build/commands/element/isSelected.d.ts +31 -0
- package/build/commands/element/isSelected.d.ts.map +1 -0
- package/build/commands/element/isSelected.js +35 -0
- package/build/commands/element/moveTo.d.ts +21 -0
- package/build/commands/element/moveTo.d.ts.map +1 -0
- package/build/commands/element/moveTo.js +39 -0
- package/build/commands/element/nextElement.d.ts +25 -0
- package/build/commands/element/nextElement.d.ts.map +1 -0
- package/build/commands/element/nextElement.js +31 -0
- package/build/commands/element/parentElement.d.ts +25 -0
- package/build/commands/element/parentElement.d.ts.map +1 -0
- package/build/commands/element/parentElement.js +31 -0
- package/build/commands/element/previousElement.d.ts +25 -0
- package/build/commands/element/previousElement.d.ts.map +1 -0
- package/build/commands/element/previousElement.js +31 -0
- package/build/commands/element/react$$.d.ts +36 -0
- package/build/commands/element/react$$.d.ts.map +1 -0
- package/build/commands/element/react$$.js +51 -0
- package/build/commands/element/react$.d.ts +46 -0
- package/build/commands/element/react$.d.ts.map +1 -0
- package/build/commands/element/react$.js +59 -0
- package/build/commands/element/saveScreenshot.d.ts +21 -0
- package/build/commands/element/saveScreenshot.d.ts.map +1 -0
- package/build/commands/element/saveScreenshot.js +40 -0
- package/build/commands/element/scrollIntoView.d.ts +21 -0
- package/build/commands/element/scrollIntoView.d.ts.map +1 -0
- package/build/commands/element/scrollIntoView.js +31 -0
- package/build/commands/element/selectByAttribute.d.ts +37 -0
- package/build/commands/element/selectByAttribute.d.ts.map +1 -0
- package/build/commands/element/selectByAttribute.js +59 -0
- package/build/commands/element/selectByIndex.d.ts +31 -0
- package/build/commands/element/selectByIndex.d.ts.map +1 -0
- package/build/commands/element/selectByIndex.js +55 -0
- package/build/commands/element/selectByVisibleText.d.ts +31 -0
- package/build/commands/element/selectByVisibleText.d.ts.map +1 -0
- package/build/commands/element/selectByVisibleText.js +66 -0
- package/build/commands/element/setValue.d.ts +29 -0
- package/build/commands/element/setValue.d.ts.map +1 -0
- package/build/commands/element/setValue.js +33 -0
- package/build/commands/element/shadow$$.d.ts +22 -0
- package/build/commands/element/shadow$$.d.ts.map +1 -0
- package/build/commands/element/shadow$$.js +27 -0
- package/build/commands/element/shadow$.d.ts +22 -0
- package/build/commands/element/shadow$.d.ts.map +1 -0
- package/build/commands/element/shadow$.js +27 -0
- package/build/commands/element/touchAction.d.ts +54 -0
- package/build/commands/element/touchAction.d.ts.map +1 -0
- package/build/commands/element/touchAction.js +58 -0
- package/build/commands/element/waitForClickable.d.ts +34 -0
- package/build/commands/element/waitForClickable.d.ts.map +1 -0
- package/build/commands/element/waitForClickable.js +37 -0
- package/build/commands/element/waitForDisplayed.d.ts +44 -0
- package/build/commands/element/waitForDisplayed.d.ts.map +1 -0
- package/build/commands/element/waitForDisplayed.js +47 -0
- package/build/commands/element/waitForEnabled.d.ts +46 -0
- package/build/commands/element/waitForEnabled.d.ts.map +1 -0
- package/build/commands/element/waitForEnabled.js +55 -0
- package/build/commands/element/waitForExist.d.ts +46 -0
- package/build/commands/element/waitForExist.d.ts.map +1 -0
- package/build/commands/element/waitForExist.js +49 -0
- package/build/commands/element/waitUntil.d.ts +49 -0
- package/build/commands/element/waitUntil.d.ts.map +1 -0
- package/build/commands/element/waitUntil.js +53 -0
- package/build/commands/element.d.ts +100 -0
- package/build/commands/element.d.ts.map +1 -0
- package/build/commands/element.js +63 -0
- package/build/commands/mock/abort.d.ts +19 -0
- package/build/commands/mock/abort.d.ts.map +1 -0
- package/build/commands/mock/abort.js +20 -0
- package/build/commands/mock/abortOnce.d.ts +27 -0
- package/build/commands/mock/abortOnce.d.ts.map +1 -0
- package/build/commands/mock/abortOnce.js +28 -0
- package/build/commands/mock/clear.d.ts +18 -0
- package/build/commands/mock/clear.d.ts.map +1 -0
- package/build/commands/mock/clear.js +19 -0
- package/build/commands/mock/respond.d.ts +54 -0
- package/build/commands/mock/respond.d.ts.map +1 -0
- package/build/commands/mock/respond.js +55 -0
- package/build/commands/mock/respondOnce.d.ts +55 -0
- package/build/commands/mock/respondOnce.d.ts.map +1 -0
- package/build/commands/mock/respondOnce.js +56 -0
- package/build/commands/mock/restore.d.ts +18 -0
- package/build/commands/mock/restore.d.ts.map +1 -0
- package/build/commands/mock/restore.js +19 -0
- package/build/constants.d.ts +14 -0
- package/build/constants.d.ts.map +1 -0
- package/build/constants.js +286 -0
- package/build/index.d.ts +45 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +175 -0
- package/build/middlewares.d.ts +12 -0
- package/build/middlewares.d.ts.map +1 -0
- package/build/middlewares.js +65 -0
- package/build/multiremote.d.ts +71 -0
- package/build/multiremote.d.ts.map +1 -0
- package/build/multiremote.js +160 -0
- package/build/protocol-stub.d.ts +16 -0
- package/build/protocol-stub.d.ts.map +1 -0
- package/build/protocol-stub.js +77 -0
- package/build/scripts/getHTML.d.ts +9 -0
- package/build/scripts/getHTML.d.ts.map +1 -0
- package/build/scripts/getHTML.js +13 -0
- package/build/scripts/getProperty.d.ts +43 -0
- package/build/scripts/getProperty.d.ts.map +1 -0
- package/build/scripts/getProperty.js +12 -0
- package/build/scripts/isElementClickable.d.ts +7 -0
- package/build/scripts/isElementClickable.d.ts.map +1 -0
- package/build/scripts/isElementClickable.js +121 -0
- package/build/scripts/isElementDisplayed.d.ts +7 -0
- package/build/scripts/isElementDisplayed.d.ts.map +1 -0
- package/build/scripts/isElementDisplayed.js +216 -0
- package/build/scripts/isElementInViewport.d.ts +10 -0
- package/build/scripts/isElementInViewport.d.ts.map +1 -0
- package/build/scripts/isElementInViewport.js +22 -0
- package/build/scripts/isFocused.d.ts +7 -0
- package/build/scripts/isFocused.d.ts.map +1 -0
- package/build/scripts/isFocused.js +11 -0
- package/build/scripts/newWindow.d.ts +10 -0
- package/build/scripts/newWindow.d.ts.map +1 -0
- package/build/scripts/newWindow.js +14 -0
- package/build/scripts/resq.d.ts +6 -0
- package/build/scripts/resq.d.ts.map +1 -0
- package/build/scripts/resq.js +58 -0
- package/build/scripts/shadowFnFactory.d.ts +2 -0
- package/build/scripts/shadowFnFactory.d.ts.map +1 -0
- package/build/scripts/shadowFnFactory.js +17 -0
- package/build/types.d.ts +402 -0
- package/build/types.d.ts.map +1 -0
- package/build/types.js +2 -0
- package/build/utils/SevereServiceError.d.ts +7 -0
- package/build/utils/SevereServiceError.d.ts.map +1 -0
- package/build/utils/SevereServiceError.js +12 -0
- package/build/utils/Timer.d.ts +33 -0
- package/build/utils/Timer.d.ts.map +1 -0
- package/build/utils/Timer.js +126 -0
- package/build/utils/detectBackend.d.ts +23 -0
- package/build/utils/detectBackend.d.ts.map +1 -0
- package/build/utils/detectBackend.js +119 -0
- package/build/utils/findStrategy.d.ts +10 -0
- package/build/utils/findStrategy.d.ts.map +1 -0
- package/build/utils/findStrategy.js +267 -0
- package/build/utils/getElementObject.d.ts +17 -0
- package/build/utils/getElementObject.d.ts.map +1 -0
- package/build/utils/getElementObject.js +107 -0
- package/build/utils/implicitWait.d.ts +7 -0
- package/build/utils/implicitWait.d.ts.map +1 -0
- package/build/utils/implicitWait.js +39 -0
- package/build/utils/index.d.ts +102 -0
- package/build/utils/index.d.ts.map +1 -0
- package/build/utils/index.js +543 -0
- package/build/utils/interception/devtools.d.ts +61 -0
- package/build/utils/interception/devtools.d.ts.map +1 -0
- package/build/utils/interception/devtools.js +247 -0
- package/build/utils/interception/index.d.ts +26 -0
- package/build/utils/interception/index.d.ts.map +1 -0
- package/build/utils/interception/index.js +49 -0
- package/build/utils/interception/types.d.ts +94 -0
- package/build/utils/interception/types.d.ts.map +1 -0
- package/build/utils/interception/types.js +2 -0
- package/build/utils/interception/webdriver.d.ts +48 -0
- package/build/utils/interception/webdriver.d.ts.map +1 -0
- package/build/utils/interception/webdriver.js +75 -0
- package/build/utils/refetchElement.d.ts +6 -0
- package/build/utils/refetchElement.d.ts.map +1 -0
- package/build/utils/refetchElement.js +32 -0
- package/package.json +10 -10
package/build/types.d.ts
ADDED
|
@@ -0,0 +1,402 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import type { EventEmitter } from 'events';
|
|
3
|
+
import type { AttachOptions as DevToolsAttachOptions } from 'devtools';
|
|
4
|
+
import type { SessionFlags, AttachOptions as WebDriverAttachOptions } from 'webdriver';
|
|
5
|
+
import type { Options, Capabilities, FunctionProperties, ThenArg } from '@wdio/types';
|
|
6
|
+
import type { ElementReference, ProtocolCommandsAsync, ProtocolCommands, RectReturn } from '@wdio/protocols';
|
|
7
|
+
import type { Browser as PuppeteerBrowser } from 'puppeteer-core/lib/cjs/puppeteer/common/Browser';
|
|
8
|
+
import type BrowserCommands from './commands/browser';
|
|
9
|
+
import type ElementCommands from './commands/element';
|
|
10
|
+
import type DevtoolsInterception from './utils/interception/devtools';
|
|
11
|
+
import type { Location } from './commands/element/getLocation';
|
|
12
|
+
import type { Size } from './commands/element/getSize';
|
|
13
|
+
declare type $BrowserCommands = typeof BrowserCommands;
|
|
14
|
+
declare type $ElementCommands = typeof ElementCommands;
|
|
15
|
+
declare type ElementQueryCommands = '$' | 'custom$' | 'shadow$' | 'react$';
|
|
16
|
+
declare type ElementsQueryCommands = '$$' | 'custom$$' | 'shadow$$' | 'react$$';
|
|
17
|
+
declare type ChainablePrototype = {
|
|
18
|
+
[K in ElementQueryCommands]: (...args: Parameters<$ElementCommands[K]>) => ChainablePromiseElement<ThenArg<ReturnType<$ElementCommands[K]>>>;
|
|
19
|
+
} & {
|
|
20
|
+
[K in ElementsQueryCommands]: (...args: Parameters<$ElementCommands[K]>) => ChainablePromiseArray<ThenArg<ReturnType<$ElementCommands[K]>>>;
|
|
21
|
+
};
|
|
22
|
+
declare type AsyncElementProto = {
|
|
23
|
+
[K in keyof Omit<$ElementCommands, keyof ChainablePrototype>]: OmitThisParameter<$ElementCommands[K]>;
|
|
24
|
+
} & ChainablePrototype;
|
|
25
|
+
export interface ChainablePromiseElement<T> extends AsyncElementProto, Promise<T> {
|
|
26
|
+
/**
|
|
27
|
+
* WebDriver element reference
|
|
28
|
+
*/
|
|
29
|
+
elementId: Promise<string>;
|
|
30
|
+
/**
|
|
31
|
+
* parent of the element if fetched via `$(parent).$(child)`
|
|
32
|
+
*/
|
|
33
|
+
parent: Promise<WebdriverIO.Element | WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser>;
|
|
34
|
+
/**
|
|
35
|
+
* selector used to fetch this element, can be
|
|
36
|
+
* - undefined if element was created via `$({ 'element-6066-11e4-a52e-4f735466cecf': 'ELEMENT-1' })`
|
|
37
|
+
* - a string if `findElement` was used and a reference was found
|
|
38
|
+
* - or a functin if element was found via e.g. `$(() => document.body)`
|
|
39
|
+
*/
|
|
40
|
+
selector: Promise<Selector>;
|
|
41
|
+
/**
|
|
42
|
+
* Error message in case element fetch was not successful
|
|
43
|
+
*/
|
|
44
|
+
error?: Promise<Error>;
|
|
45
|
+
/**
|
|
46
|
+
* index of the element if fetched with `$$`
|
|
47
|
+
*/
|
|
48
|
+
index?: Promise<number>;
|
|
49
|
+
}
|
|
50
|
+
export interface ChainablePromiseArray<T> extends Promise<T> {
|
|
51
|
+
/**
|
|
52
|
+
* Amount of element fetched.
|
|
53
|
+
*/
|
|
54
|
+
length: Promise<number>;
|
|
55
|
+
/**
|
|
56
|
+
* selector used to fetch this element, can be
|
|
57
|
+
* - undefined if element was created via `$({ 'element-6066-11e4-a52e-4f735466cecf': 'ELEMENT-1' })`
|
|
58
|
+
* - a string if `findElement` was used and a reference was found
|
|
59
|
+
* - or a functin if element was found via e.g. `$(() => document.body)`
|
|
60
|
+
*/
|
|
61
|
+
selector: Promise<Selector>;
|
|
62
|
+
/**
|
|
63
|
+
* parent of the element if fetched via `$(parent).$(child)`
|
|
64
|
+
*/
|
|
65
|
+
parent: Promise<WebdriverIO.Element | WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser>;
|
|
66
|
+
/**
|
|
67
|
+
* allow to access a specific index of the element set
|
|
68
|
+
*/
|
|
69
|
+
[n: number]: WebdriverIO.Element | undefined;
|
|
70
|
+
/**
|
|
71
|
+
* Unwrap the nth element of the element list.
|
|
72
|
+
*/
|
|
73
|
+
forEach: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => void, thisArg?: any) => Promise<void>;
|
|
74
|
+
forEachSeries: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => void, thisArg?: any) => Promise<void>;
|
|
75
|
+
map: <U>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => U | Promise<U>, thisArg?: any) => Promise<U[]>;
|
|
76
|
+
mapSeries: <T, U>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => U | Promise<U>, thisArg?: any) => Promise<U[]>;
|
|
77
|
+
find: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => boolean | Promise<boolean>, thisArg?: any) => Promise<T>;
|
|
78
|
+
findSeries: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => boolean | Promise<boolean>, thisArg?: any) => Promise<T>;
|
|
79
|
+
findIndex: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => boolean | Promise<boolean>, thisArg?: any) => Promise<number>;
|
|
80
|
+
findIndexSeries: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => boolean | Promise<boolean>, thisArg?: any) => Promise<number>;
|
|
81
|
+
some: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => boolean | Promise<boolean>, thisArg?: any) => Promise<boolean>;
|
|
82
|
+
someSeries: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => boolean | Promise<boolean>, thisArg?: any) => Promise<boolean>;
|
|
83
|
+
every: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => boolean | Promise<boolean>, thisArg?: any) => Promise<boolean>;
|
|
84
|
+
everySeries: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => boolean | Promise<boolean>, thisArg?: any) => Promise<boolean>;
|
|
85
|
+
filter: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => boolean | Promise<boolean>, thisArg?: any) => Promise<WebdriverIO.Element[]>;
|
|
86
|
+
filterSeries: <T>(callback: (currentValue: WebdriverIO.Element, index: number, array: T[]) => boolean | Promise<boolean>, thisArg?: any) => Promise<WebdriverIO.Element[]>;
|
|
87
|
+
reduce: <T, U>(callback: (accumulator: U, currentValue: WebdriverIO.Element, currentIndex: number, array: T[]) => U | Promise<U>, initialValue?: U) => Promise<U>;
|
|
88
|
+
}
|
|
89
|
+
export declare type BrowserCommandsType = Omit<$BrowserCommands, keyof ChainablePrototype> & ChainablePrototype;
|
|
90
|
+
export declare type ElementCommandsType = Omit<$ElementCommands, keyof ChainablePrototype> & ChainablePrototype;
|
|
91
|
+
export declare type BrowserCommandsTypeSync = {
|
|
92
|
+
[K in keyof Omit<$BrowserCommands, 'execute' | 'call'>]: (...args: Parameters<$BrowserCommands[K]>) => ThenArg<ReturnType<$BrowserCommands[K]>>;
|
|
93
|
+
} & {
|
|
94
|
+
/**
|
|
95
|
+
* we need to copy type definitions for execute and executeAsync as we can't copy over
|
|
96
|
+
* generics with method used above
|
|
97
|
+
*/
|
|
98
|
+
call: <T>(fn: () => T) => ThenArg<T>;
|
|
99
|
+
execute: <ReturnValue, InnerArguments extends any[] = any[], OuterArguments extends InnerArguments = any>(script: string | ((...innerArgs: OuterArguments) => ReturnValue), ...args: InnerArguments) => ReturnValue;
|
|
100
|
+
};
|
|
101
|
+
export declare type ElementCommandsTypeSync = {
|
|
102
|
+
[K in keyof Omit<$ElementCommands, 'getLocation' | 'getSize'>]: (...args: Parameters<$ElementCommands[K]>) => ThenArg<ReturnType<$ElementCommands[K]>>;
|
|
103
|
+
} & {
|
|
104
|
+
getLocation: ((this: WebdriverIO.Element) => Location) & ((this: WebdriverIO.Element, prop: keyof Location) => number) & ((this: WebdriverIO.Element, prop?: keyof Location) => Location | number);
|
|
105
|
+
getSize: ((this: WebdriverIO.Element) => Size) & ((this: WebdriverIO.Element, prop: keyof RectReturn) => number) & ((this: WebdriverIO.Element, prop?: keyof RectReturn) => Size | number);
|
|
106
|
+
};
|
|
107
|
+
/**
|
|
108
|
+
* Multiremote command definition
|
|
109
|
+
*/
|
|
110
|
+
declare type SingleElementCommandNames = '$' | 'custom$' | 'react$';
|
|
111
|
+
declare type MultiElementCommandNames = '$$' | 'custom$$' | 'react$$';
|
|
112
|
+
declare type ElementCommandNames = SingleElementCommandNames | MultiElementCommandNames;
|
|
113
|
+
declare type MultiRemoteElementCommands = {
|
|
114
|
+
[K in keyof Pick<BrowserCommandsType, SingleElementCommandNames>]: (...args: Parameters<BrowserCommandsType[K]>) => ThenArg<MultiRemoteElement<'async'>>;
|
|
115
|
+
} & {
|
|
116
|
+
[K in keyof Pick<BrowserCommandsType, MultiElementCommandNames>]: (...args: Parameters<BrowserCommandsType[K]>) => ThenArg<MultiRemoteElement<'async'>[]>;
|
|
117
|
+
};
|
|
118
|
+
declare type MultiRemoteElementCommandsSync = {
|
|
119
|
+
[K in keyof Pick<BrowserCommandsTypeSync, SingleElementCommandNames>]: (...args: Parameters<BrowserCommandsTypeSync[K]>) => MultiRemoteElement<'sync'>;
|
|
120
|
+
} & {
|
|
121
|
+
[K in keyof Pick<BrowserCommandsTypeSync, MultiElementCommandNames>]: (...args: Parameters<BrowserCommandsTypeSync[K]>) => MultiRemoteElement<'sync'>[];
|
|
122
|
+
};
|
|
123
|
+
export declare type MultiRemoteBrowserCommandsType = {
|
|
124
|
+
[K in keyof Omit<BrowserCommandsType, ElementCommandNames>]: (...args: Parameters<BrowserCommandsType[K]>) => Promise<ThenArg<ReturnType<BrowserCommandsType[K]>>[]>;
|
|
125
|
+
} & MultiRemoteElementCommands;
|
|
126
|
+
export declare type MultiRemoteBrowserCommandsTypeSync = {
|
|
127
|
+
[K in keyof Omit<BrowserCommandsTypeSync, ElementCommandNames>]: (...args: Parameters<BrowserCommandsTypeSync[K]>) => ThenArg<ReturnType<BrowserCommandsTypeSync[K]>>[];
|
|
128
|
+
} & MultiRemoteElementCommandsSync;
|
|
129
|
+
export declare type MultiRemoteElementCommandsType = {
|
|
130
|
+
[K in keyof Omit<ElementCommandsType, ElementCommandNames>]: (...args: Parameters<ElementCommandsType[K]>) => Promise<ThenArg<ReturnType<ElementCommandsType[K]>>[]>;
|
|
131
|
+
} & MultiRemoteElementCommands;
|
|
132
|
+
export declare type MultiRemoteElementCommandsTypeSync = {
|
|
133
|
+
[K in keyof Omit<ElementCommandsTypeSync, ElementCommandNames>]: (...args: Parameters<ElementCommandsTypeSync[K]>) => ThenArg<ReturnType<ElementCommandsTypeSync[K]>>[];
|
|
134
|
+
} & MultiRemoteElementCommandsSync;
|
|
135
|
+
export declare type MultiRemoteProtocolCommandsType = {
|
|
136
|
+
[K in keyof ProtocolCommandsAsync]: (...args: Parameters<ProtocolCommandsAsync[K]>) => Promise<ThenArg<ReturnType<ProtocolCommandsAsync[K]>>[]>;
|
|
137
|
+
};
|
|
138
|
+
export declare type MultiRemoteProtocolCommandsTypeSync = {
|
|
139
|
+
[K in keyof ProtocolCommands]: (...args: Parameters<ProtocolCommands[K]>) => ThenArg<ReturnType<ProtocolCommands[K]>>[];
|
|
140
|
+
};
|
|
141
|
+
export interface ElementArray extends Array<WebdriverIO.Element> {
|
|
142
|
+
selector: Selector;
|
|
143
|
+
parent: WebdriverIO.Element | WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser;
|
|
144
|
+
foundWith: string;
|
|
145
|
+
props: any[];
|
|
146
|
+
}
|
|
147
|
+
declare type AddCommandFnScoped<InstanceType = WebdriverIO.Browser, IsElement extends boolean = false> = (this: IsElement extends true ? WebdriverIO.Element : InstanceType, ...args: any[]) => any;
|
|
148
|
+
declare type AddCommandFn = (...args: any[]) => any;
|
|
149
|
+
declare type OverwriteCommandFnScoped<ElementKey extends keyof $ElementCommands, BrowserKey extends keyof $BrowserCommands, IsElement extends boolean = false> = (this: IsElement extends true ? WebdriverIO.Element : WebdriverIO.Browser, origCommand: (...args: any[]) => IsElement extends true ? WebdriverIO.Element[ElementKey] : WebdriverIO.Browser[BrowserKey], ...args: any[]) => Promise<any>;
|
|
150
|
+
declare type OverwriteCommandFn<ElementKey extends keyof $ElementCommands, BrowserKey extends keyof $BrowserCommands, IsElement extends boolean = false> = (origCommand: (...args: any[]) => IsElement extends true ? WebdriverIO.Element[ElementKey] : WebdriverIO.Browser[BrowserKey], ...args: any[]) => Promise<any>;
|
|
151
|
+
export declare type CustomLocatorReturnValue = HTMLElement | HTMLElement[] | NodeListOf<HTMLElement>;
|
|
152
|
+
export interface CustomInstanceCommands<T> {
|
|
153
|
+
/**
|
|
154
|
+
* add command to `browser` or `element` scope
|
|
155
|
+
*/
|
|
156
|
+
addCommand<IsElement extends boolean = false>(name: string, func: AddCommandFn | AddCommandFnScoped<T, IsElement>, attachToElement?: IsElement, proto?: Record<string, any>, instances?: Record<string, WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser>): void;
|
|
157
|
+
/**
|
|
158
|
+
* overwrite `browser` or `element` command
|
|
159
|
+
*/
|
|
160
|
+
overwriteCommand<ElementKey extends keyof $ElementCommands, BrowserKey extends keyof $BrowserCommands, IsElement extends boolean = false>(name: IsElement extends true ? ElementKey : BrowserKey, func: OverwriteCommandFn<ElementKey, BrowserKey, IsElement> | OverwriteCommandFnScoped<ElementKey, BrowserKey, IsElement>, attachToElement?: IsElement, proto?: Record<string, any>, instances?: Record<string, WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser>): void;
|
|
161
|
+
/**
|
|
162
|
+
* create custom selector
|
|
163
|
+
*/
|
|
164
|
+
addLocatorStrategy(name: string, func: ((selector: string, root: HTMLElement) => CustomLocatorReturnValue) | ((selector: string) => CustomLocatorReturnValue)): void;
|
|
165
|
+
}
|
|
166
|
+
interface InstanceBase extends EventEmitter, SessionFlags {
|
|
167
|
+
/**
|
|
168
|
+
* Session id for the current running session
|
|
169
|
+
*/
|
|
170
|
+
sessionId: string;
|
|
171
|
+
/**
|
|
172
|
+
* Applied capabilities used in the current session. Note: these can differ from the actual
|
|
173
|
+
* requested capabilities if the remote end couldn't provide an exact match.
|
|
174
|
+
*/
|
|
175
|
+
capabilities: Capabilities.RemoteCapability;
|
|
176
|
+
/**
|
|
177
|
+
* Requested capabilities defined in the config object.
|
|
178
|
+
*/
|
|
179
|
+
requestedCapabilities: Capabilities.RemoteCapability;
|
|
180
|
+
/**
|
|
181
|
+
* Applied WebdriverIO options (options that aren't officially part of WebdriverIO are stripped
|
|
182
|
+
* out of this object).
|
|
183
|
+
*/
|
|
184
|
+
options: Options.WebdriverIO | Options.Testrunner;
|
|
185
|
+
/**
|
|
186
|
+
* Given WebdriverIO options (including custom configurations)
|
|
187
|
+
*/
|
|
188
|
+
config: Options.WebdriverIO | Options.Testrunner;
|
|
189
|
+
/**
|
|
190
|
+
* Puppeteer instance
|
|
191
|
+
*/
|
|
192
|
+
puppeteer?: PuppeteerBrowser;
|
|
193
|
+
strategies: Map<any, any>;
|
|
194
|
+
/**
|
|
195
|
+
* @private
|
|
196
|
+
*/
|
|
197
|
+
__propertiesObject__: Record<string, PropertyDescriptor>;
|
|
198
|
+
/**
|
|
199
|
+
* @private
|
|
200
|
+
*/
|
|
201
|
+
_NOT_FIBER?: boolean;
|
|
202
|
+
/**
|
|
203
|
+
* @private
|
|
204
|
+
*/
|
|
205
|
+
wdioRetries?: number;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* a browser base that has everything besides commands which are defined for sync and async seperately
|
|
209
|
+
*/
|
|
210
|
+
export interface BrowserBase extends InstanceBase, CustomInstanceCommands<WebdriverIO.Browser> {
|
|
211
|
+
isMultiremote: false;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* export a browser interface that can be used for typing plugins
|
|
215
|
+
*/
|
|
216
|
+
interface BrowserAsync extends BrowserBase, BrowserCommandsType, ProtocolCommandsAsync {
|
|
217
|
+
}
|
|
218
|
+
interface BrowserSync extends BrowserBase, BrowserCommandsTypeSync, ProtocolCommands {
|
|
219
|
+
}
|
|
220
|
+
export declare type Browser<Mode extends 'sync' | 'async'> = Mode extends 'sync' ? BrowserSync : BrowserAsync;
|
|
221
|
+
export interface ElementBase extends InstanceBase, ElementReference, CustomInstanceCommands<WebdriverIO.Element> {
|
|
222
|
+
isMultiremote: false;
|
|
223
|
+
/**
|
|
224
|
+
* WebDriver element reference
|
|
225
|
+
*/
|
|
226
|
+
elementId: string;
|
|
227
|
+
/**
|
|
228
|
+
* WebDriver element reference
|
|
229
|
+
*/
|
|
230
|
+
ELEMENT: string;
|
|
231
|
+
/**
|
|
232
|
+
* selector used to fetch this element, can be
|
|
233
|
+
* - undefined if element was created via `$({ 'element-6066-11e4-a52e-4f735466cecf': 'ELEMENT-1' })`
|
|
234
|
+
* - a string if `findElement` was used and a reference was found
|
|
235
|
+
* - or a functin if element was found via e.g. `$(() => document.body)`
|
|
236
|
+
*/
|
|
237
|
+
selector: Selector;
|
|
238
|
+
/**
|
|
239
|
+
* index of the element if fetched with `$$`
|
|
240
|
+
*/
|
|
241
|
+
index?: number;
|
|
242
|
+
/**
|
|
243
|
+
* parent of the element if fetched via `$(parent).$(child)`
|
|
244
|
+
*/
|
|
245
|
+
parent: WebdriverIO.Element | WebdriverIO.Browser;
|
|
246
|
+
/**
|
|
247
|
+
* true if element is a React component
|
|
248
|
+
*/
|
|
249
|
+
isReactElement?: boolean;
|
|
250
|
+
/**
|
|
251
|
+
* error response if element was not found
|
|
252
|
+
*/
|
|
253
|
+
error?: Error;
|
|
254
|
+
}
|
|
255
|
+
interface ElementAsync extends ElementBase, ProtocolCommandsAsync, Omit<BrowserCommandsType, keyof ElementCommandsType>, ElementCommandsType {
|
|
256
|
+
}
|
|
257
|
+
interface ElementSync extends ElementBase, ProtocolCommands, Omit<BrowserCommandsTypeSync, keyof ElementCommandsTypeSync>, ElementCommandsTypeSync {
|
|
258
|
+
}
|
|
259
|
+
export declare type Element<Mode extends 'sync' | 'async'> = Mode extends 'sync' ? ElementSync : ElementAsync;
|
|
260
|
+
interface MultiRemoteBase extends Omit<InstanceBase, 'sessionId'>, CustomInstanceCommands<WebdriverIO.MultiRemoteBrowser> {
|
|
261
|
+
/**
|
|
262
|
+
* multiremote browser instance names
|
|
263
|
+
*/
|
|
264
|
+
instances: string[];
|
|
265
|
+
/**
|
|
266
|
+
* flag to indicate multiremote browser session
|
|
267
|
+
*/
|
|
268
|
+
isMultiremote: true;
|
|
269
|
+
}
|
|
270
|
+
interface MultiRemoteElementBase {
|
|
271
|
+
/**
|
|
272
|
+
* multiremote browser instance names
|
|
273
|
+
*/
|
|
274
|
+
instances: string[];
|
|
275
|
+
addCommand: Function;
|
|
276
|
+
overwriteCommand: Function;
|
|
277
|
+
}
|
|
278
|
+
declare type MultiRemoteBrowserReferenceAsync = Record<string, Browser<'async'>>;
|
|
279
|
+
declare type MultiRemoteBrowserReferenceSync = Record<string, Browser<'sync'>>;
|
|
280
|
+
declare type MultiRemoteElementReferenceAsync = Record<string, Element<'async'>>;
|
|
281
|
+
declare type MultiRemoteElementReferenceSync = Record<string, Element<'sync'>>;
|
|
282
|
+
interface MultiRemoteBrowserAsync extends MultiRemoteBase, MultiRemoteBrowserCommandsType, MultiRemoteProtocolCommandsType {
|
|
283
|
+
}
|
|
284
|
+
interface MultiRemoteBrowserSync extends MultiRemoteBase, MultiRemoteBrowserCommandsTypeSync, MultiRemoteProtocolCommandsTypeSync {
|
|
285
|
+
}
|
|
286
|
+
interface MultiRemoteElementAsync extends MultiRemoteElementBase, MultiRemoteProtocolCommandsType, Omit<MultiRemoteBrowserCommandsType, keyof MultiRemoteElementCommandsType>, MultiRemoteElementCommandsType {
|
|
287
|
+
}
|
|
288
|
+
interface MultiRemoteElementSync extends MultiRemoteElementBase, MultiRemoteProtocolCommandsTypeSync, Omit<MultiRemoteBrowserCommandsTypeSync, keyof MultiRemoteElementCommandsTypeSync>, MultiRemoteElementCommandsTypeSync {
|
|
289
|
+
}
|
|
290
|
+
export declare type MultiRemoteBrowser<Mode extends 'sync' | 'async'> = Mode extends 'sync' ? MultiRemoteBrowserReferenceSync & MultiRemoteBrowserSync : MultiRemoteBrowserReferenceAsync & MultiRemoteBrowserAsync;
|
|
291
|
+
export declare type MultiRemoteElement<Mode extends 'sync' | 'async'> = Mode extends 'sync' ? MultiRemoteElementReferenceSync & MultiRemoteElementSync : MultiRemoteElementReferenceAsync & MultiRemoteElementAsync;
|
|
292
|
+
export declare type ElementFunction = ((elem: HTMLElement) => HTMLElement) | ((elem: HTMLElement) => HTMLElement[]);
|
|
293
|
+
export declare type Selector = string | ElementReference | ElementFunction;
|
|
294
|
+
interface CSSValue {
|
|
295
|
+
type: string;
|
|
296
|
+
string: string;
|
|
297
|
+
unit: string;
|
|
298
|
+
value: any;
|
|
299
|
+
}
|
|
300
|
+
interface ParsedColor extends Partial<CSSValue> {
|
|
301
|
+
rgb?: string;
|
|
302
|
+
rgba?: string;
|
|
303
|
+
hex?: string;
|
|
304
|
+
}
|
|
305
|
+
export interface ParsedCSSValue {
|
|
306
|
+
property?: string;
|
|
307
|
+
value?: string;
|
|
308
|
+
parsed: ParsedColor;
|
|
309
|
+
}
|
|
310
|
+
interface NoneActionEntity {
|
|
311
|
+
type: 'pause';
|
|
312
|
+
duration: number;
|
|
313
|
+
}
|
|
314
|
+
interface PointerActionEntity {
|
|
315
|
+
type: 'pointerMove' | 'pointerDown' | 'pointerUp' | 'pointerCancel' | 'pause';
|
|
316
|
+
duration?: number;
|
|
317
|
+
x?: number;
|
|
318
|
+
y?: number;
|
|
319
|
+
button?: number;
|
|
320
|
+
}
|
|
321
|
+
interface KeyActionEntity {
|
|
322
|
+
type: 'keyUp' | 'keyDown';
|
|
323
|
+
duration?: number;
|
|
324
|
+
value?: string;
|
|
325
|
+
}
|
|
326
|
+
export interface Action {
|
|
327
|
+
id: string;
|
|
328
|
+
actions: (NoneActionEntity & PointerActionEntity & KeyActionEntity)[];
|
|
329
|
+
type?: 'pointer' | 'key';
|
|
330
|
+
parameters?: {
|
|
331
|
+
pointerType: 'mouse' | 'pen' | 'touch';
|
|
332
|
+
};
|
|
333
|
+
}
|
|
334
|
+
export interface ActionParameter {
|
|
335
|
+
actions: Action[];
|
|
336
|
+
}
|
|
337
|
+
export declare type ActionTypes = 'press' | 'longPress' | 'tap' | 'moveTo' | 'wait' | 'release';
|
|
338
|
+
export interface TouchAction {
|
|
339
|
+
action: ActionTypes;
|
|
340
|
+
x?: number;
|
|
341
|
+
y?: number;
|
|
342
|
+
element?: WebdriverIO.Element;
|
|
343
|
+
ms?: number;
|
|
344
|
+
}
|
|
345
|
+
export declare type TouchActionParameter = string | string[] | TouchAction | TouchAction[];
|
|
346
|
+
export declare type TouchActions = TouchActionParameter | TouchActionParameter[];
|
|
347
|
+
export declare type Matcher = {
|
|
348
|
+
name: string;
|
|
349
|
+
args: Array<string | object>;
|
|
350
|
+
class?: string;
|
|
351
|
+
};
|
|
352
|
+
export declare type ReactSelectorOptions = {
|
|
353
|
+
props?: object;
|
|
354
|
+
state?: any[] | number | string | object | boolean;
|
|
355
|
+
};
|
|
356
|
+
export declare type MoveToOptions = {
|
|
357
|
+
xOffset?: number;
|
|
358
|
+
yOffset?: number;
|
|
359
|
+
};
|
|
360
|
+
export declare type DragAndDropOptions = {
|
|
361
|
+
duration?: number;
|
|
362
|
+
};
|
|
363
|
+
export declare type NewWindowOptions = {
|
|
364
|
+
windowName?: string;
|
|
365
|
+
windowFeatures?: string;
|
|
366
|
+
};
|
|
367
|
+
export declare type ClickOptions = {
|
|
368
|
+
button?: number | string;
|
|
369
|
+
x?: number;
|
|
370
|
+
y?: number;
|
|
371
|
+
};
|
|
372
|
+
export declare type WaitForOptions = {
|
|
373
|
+
timeout?: number;
|
|
374
|
+
interval?: number;
|
|
375
|
+
timeoutMsg?: string;
|
|
376
|
+
reverse?: boolean;
|
|
377
|
+
};
|
|
378
|
+
export declare type WaitUntilOptions = {
|
|
379
|
+
timeout?: number;
|
|
380
|
+
timeoutMsg?: string;
|
|
381
|
+
interval?: number;
|
|
382
|
+
};
|
|
383
|
+
export declare type DragAndDropCoordinate = {
|
|
384
|
+
x: number;
|
|
385
|
+
y: number;
|
|
386
|
+
};
|
|
387
|
+
/**
|
|
388
|
+
* WebdriverIO Mock definition
|
|
389
|
+
*/
|
|
390
|
+
declare type MockFunctions = FunctionProperties<DevtoolsInterception>;
|
|
391
|
+
declare type MockProperties = Pick<DevtoolsInterception, 'calls'>;
|
|
392
|
+
export interface Mock extends MockFunctions, MockProperties {
|
|
393
|
+
}
|
|
394
|
+
export interface AttachOptions extends Omit<DevToolsAttachOptions, 'capabilities'>, Omit<WebDriverAttachOptions, 'capabilities'> {
|
|
395
|
+
options?: {
|
|
396
|
+
automationProtocol?: Options.SupportedProtocols;
|
|
397
|
+
};
|
|
398
|
+
capabilities: DevToolsAttachOptions['capabilities'] | WebDriverAttachOptions['capabilities'];
|
|
399
|
+
requestedCapabilities?: DevToolsAttachOptions['capabilities'] | WebDriverAttachOptions['capabilities'];
|
|
400
|
+
}
|
|
401
|
+
export {};
|
|
402
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/build/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SevereServiceError.d.ts","sourceRoot":"","sources":["../../src/utils/SevereServiceError.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,KAAK;gBACrC,OAAO,SAAmC;CAIzD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
/**
|
|
4
|
+
* Error to be thrown when a severe error was encountered when a Service is being ran.
|
|
5
|
+
*/
|
|
6
|
+
class SevereServiceError extends Error {
|
|
7
|
+
constructor(message = 'Severe Service Error occurred.') {
|
|
8
|
+
super(message);
|
|
9
|
+
this.name = 'SevereServiceError';
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.default = SevereServiceError;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Promise-based Timer. Execute fn every tick.
|
|
3
|
+
* When fn is resolved — timer will stop
|
|
4
|
+
* @param {Number} delay - delay between ticks
|
|
5
|
+
* @param {Number} timeout - after that time timer will stop
|
|
6
|
+
* @param {Function} fn - function that returns promise. will execute every tick
|
|
7
|
+
* @param {Boolean} leading - should be function invoked on start
|
|
8
|
+
* @return {promise} Promise-based Timer.
|
|
9
|
+
*/
|
|
10
|
+
declare class Timer {
|
|
11
|
+
private _delay;
|
|
12
|
+
private _timeout;
|
|
13
|
+
private _fn;
|
|
14
|
+
private _leading;
|
|
15
|
+
private _conditionExecutedCnt;
|
|
16
|
+
private _resolve;
|
|
17
|
+
private _reject;
|
|
18
|
+
private _startTime?;
|
|
19
|
+
private _ticks;
|
|
20
|
+
private _timeoutId?;
|
|
21
|
+
private _mainTimeoutId?;
|
|
22
|
+
private _lastError?;
|
|
23
|
+
constructor(_delay: number, _timeout: number, _fn: Function, _leading?: boolean);
|
|
24
|
+
private _start;
|
|
25
|
+
private _stop;
|
|
26
|
+
private _stopMain;
|
|
27
|
+
private _tick;
|
|
28
|
+
private _checkCondition;
|
|
29
|
+
private _hasTime;
|
|
30
|
+
private _wasConditionExecuted;
|
|
31
|
+
}
|
|
32
|
+
export default Timer;
|
|
33
|
+
//# sourceMappingURL=Timer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Timer.d.ts","sourceRoot":"","sources":["../../src/utils/Timer.ts"],"names":[],"mappings":"AAKA;;;;;;;;GAQG;AACH,cAAM,KAAK;IAYH,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,QAAQ;IAdpB,OAAO,CAAC,qBAAqB,CAAI;IACjC,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,OAAO,CAAiB;IAEhC,OAAO,CAAC,UAAU,CAAC,CAAQ;IAC3B,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,UAAU,CAAC,CAAgB;IACnC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,UAAU,CAAC,CAAO;gBAGd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,QAAQ,EACb,QAAQ,UAAQ;IAsB5B,OAAO,CAAC,MAAM;IAwBd,OAAO,CAAC,KAAK;IAOb,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,KAAK;IAiBb,OAAO,CAAC,eAAe;IA6BvB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,qBAAqB;CAGhC;AAYD,eAAe,KAAK,CAAA"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const utils_1 = require("@wdio/utils");
|
|
4
|
+
const TIMEOUT_ERROR = 'timeout';
|
|
5
|
+
const NOOP = () => { };
|
|
6
|
+
/**
|
|
7
|
+
* Promise-based Timer. Execute fn every tick.
|
|
8
|
+
* When fn is resolved — timer will stop
|
|
9
|
+
* @param {Number} delay - delay between ticks
|
|
10
|
+
* @param {Number} timeout - after that time timer will stop
|
|
11
|
+
* @param {Function} fn - function that returns promise. will execute every tick
|
|
12
|
+
* @param {Boolean} leading - should be function invoked on start
|
|
13
|
+
* @return {promise} Promise-based Timer.
|
|
14
|
+
*/
|
|
15
|
+
class Timer {
|
|
16
|
+
constructor(_delay, _timeout, _fn, _leading = false) {
|
|
17
|
+
this._delay = _delay;
|
|
18
|
+
this._timeout = _timeout;
|
|
19
|
+
this._fn = _fn;
|
|
20
|
+
this._leading = _leading;
|
|
21
|
+
this._conditionExecutedCnt = 0;
|
|
22
|
+
this._resolve = NOOP;
|
|
23
|
+
this._reject = NOOP;
|
|
24
|
+
this._ticks = 0;
|
|
25
|
+
/**
|
|
26
|
+
* only wrap waitUntil condition if:
|
|
27
|
+
* - wdio-sync is installed
|
|
28
|
+
* - function name is not async
|
|
29
|
+
* - we run with the wdio testrunner
|
|
30
|
+
*/
|
|
31
|
+
if (utils_1.hasWdioSyncSupport && !_fn.name.includes('async') && Boolean(global.browser)) {
|
|
32
|
+
this._fn = () => (0, utils_1.runFnInFiberContext)(_fn)();
|
|
33
|
+
}
|
|
34
|
+
const retPromise = new Promise((resolve, reject) => {
|
|
35
|
+
this._resolve = resolve;
|
|
36
|
+
this._reject = reject;
|
|
37
|
+
});
|
|
38
|
+
this._start();
|
|
39
|
+
return retPromise;
|
|
40
|
+
}
|
|
41
|
+
_start() {
|
|
42
|
+
this._startTime = Date.now();
|
|
43
|
+
emitTimerEvent({ id: this._startTime, start: true });
|
|
44
|
+
if (this._leading) {
|
|
45
|
+
this._tick();
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
this._timeoutId = setTimeout(this._tick.bind(this), this._delay);
|
|
49
|
+
}
|
|
50
|
+
this._mainTimeoutId = setTimeout(() => {
|
|
51
|
+
/**
|
|
52
|
+
* make sure that condition was executed at least once
|
|
53
|
+
*/
|
|
54
|
+
if (!this._wasConditionExecuted()) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
emitTimerEvent({ id: this._startTime, timeout: true });
|
|
58
|
+
const reason = this._lastError || new Error(TIMEOUT_ERROR);
|
|
59
|
+
this._reject(reason);
|
|
60
|
+
this._stop();
|
|
61
|
+
}, this._timeout);
|
|
62
|
+
}
|
|
63
|
+
_stop() {
|
|
64
|
+
if (this._timeoutId) {
|
|
65
|
+
clearTimeout(this._timeoutId);
|
|
66
|
+
}
|
|
67
|
+
delete this._timeoutId;
|
|
68
|
+
}
|
|
69
|
+
_stopMain() {
|
|
70
|
+
emitTimerEvent({ id: this._startTime });
|
|
71
|
+
if (this._mainTimeoutId) {
|
|
72
|
+
clearTimeout(this._mainTimeoutId);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
_tick() {
|
|
76
|
+
const result = this._fn();
|
|
77
|
+
if (typeof result.then !== 'function') {
|
|
78
|
+
if (!result) {
|
|
79
|
+
return this._checkCondition(new Error('return value was never truthy'));
|
|
80
|
+
}
|
|
81
|
+
return this._checkCondition(undefined, result);
|
|
82
|
+
}
|
|
83
|
+
result.then((res) => this._checkCondition(undefined, res), (err) => this._checkCondition(err));
|
|
84
|
+
}
|
|
85
|
+
_checkCondition(err, res) {
|
|
86
|
+
++this._conditionExecutedCnt;
|
|
87
|
+
this._lastError = err;
|
|
88
|
+
// resolve timer only on truthy values
|
|
89
|
+
if (res) {
|
|
90
|
+
this._resolve(res);
|
|
91
|
+
this._stop();
|
|
92
|
+
this._stopMain();
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
// autocorrect timer
|
|
96
|
+
let diff = (Date.now() - (this._startTime || 0)) - (this._ticks++ * this._delay);
|
|
97
|
+
let delay = Math.max(0, this._delay - diff);
|
|
98
|
+
// clear old timeoutID
|
|
99
|
+
this._stop();
|
|
100
|
+
// check if we have time to one more tick
|
|
101
|
+
if (this._hasTime(delay)) {
|
|
102
|
+
this._timeoutId = setTimeout(this._tick.bind(this), delay);
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
this._stopMain();
|
|
106
|
+
const reason = this._lastError || new Error(TIMEOUT_ERROR);
|
|
107
|
+
this._reject(reason);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
_hasTime(delay) {
|
|
111
|
+
return (Date.now() - (this._startTime || 0) + delay) <= this._timeout;
|
|
112
|
+
}
|
|
113
|
+
_wasConditionExecuted() {
|
|
114
|
+
return this._conditionExecutedCnt > 0;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* emit `WDIO_TIMER` event
|
|
119
|
+
* @param {object} payload
|
|
120
|
+
*/
|
|
121
|
+
function emitTimerEvent(payload) {
|
|
122
|
+
if (utils_1.hasWdioSyncSupport) {
|
|
123
|
+
process.emit('WDIO_TIMER', payload);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
exports.default = Timer;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Capabilities, Options } from '@wdio/types';
|
|
2
|
+
interface BackendConfigurations {
|
|
3
|
+
port?: number;
|
|
4
|
+
hostname?: string;
|
|
5
|
+
user?: string;
|
|
6
|
+
key?: string;
|
|
7
|
+
protocol?: string;
|
|
8
|
+
region?: Options.SauceRegions;
|
|
9
|
+
headless?: boolean;
|
|
10
|
+
path?: string;
|
|
11
|
+
capabilities?: Capabilities.RemoteCapabilities | Capabilities.RemoteCapability;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* helper to detect the Selenium backend according to given capabilities
|
|
15
|
+
*/
|
|
16
|
+
export default function detectBackend(options?: BackendConfigurations): {
|
|
17
|
+
hostname: string | undefined;
|
|
18
|
+
port: number | undefined;
|
|
19
|
+
protocol: string | undefined;
|
|
20
|
+
path: string | undefined;
|
|
21
|
+
};
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=detectBackend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detectBackend.d.ts","sourceRoot":"","sources":["../../src/utils/detectBackend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAiBnD,UAAU,qBAAqB;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,YAAY,CAAC,kBAAkB,GAAG,YAAY,CAAC,gBAAgB,CAAA;CACjF;AAgBD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,OAAO,GAAE,qBAA0B;;;;;EAoGxE"}
|