appium-cdp-driver 1.0.0-beta.3 → 1.0.1
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/README.md +24 -14
- package/build/scripts/opera.js +95 -0
- package/build/src/adb.js +112 -0
- package/build/src/cdp.js +22 -0
- package/build/src/commands/cookies.js +63 -0
- package/build/{commands → src/commands}/createSession.js +1 -1
- package/build/src/commands/document.js +24 -0
- package/build/src/commands/element.js +84 -0
- package/build/{commands → src/commands}/find.js +2 -2
- package/build/src/commands/index.js +16 -0
- package/build/src/commands/navigation.js +34 -0
- package/build/src/commands/screencapture.js +31 -0
- package/build/{commands → src/commands}/url.js +6 -1
- package/build/src/driver.js +100 -0
- package/build/{index.js → src/index.js} +1 -1
- package/build/{logger.js → src/logger.js} +1 -1
- package/package.json +18 -10
- package/src/adb.js +44 -16
- package/src/assets/Black_512px.png +0 -0
- package/src/assets/White_512px.png +0 -0
- package/src/commands/element.js +24 -2
- package/src/commands/find.js +6 -6
- package/src/commands/index.js +2 -1
- package/src/commands/screencapture.js +19 -0
- package/src/commands/url.js +5 -1
- package/src/driver.js +41 -20
- package/build/adb.js +0 -87
- package/build/commands/element.js +0 -61
- package/build/commands/index.js +0 -12
- package/build/driver.js +0 -85
package/README.md
CHANGED
|
@@ -2,6 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
Appium CDP Driver is a W3C WebDriver that allows you to connect to chromium based android mobile browsers like chrome & samsung browser through any WebDriver client.
|
|
4
4
|
|
|
5
|
+
## Sponsors
|
|
6
|
+
|
|
7
|
+
<div align="center">
|
|
8
|
+
<picture>
|
|
9
|
+
<source media="(prefers-color-scheme: dark)" srcset="src/assets/White_512px.png">
|
|
10
|
+
<source media="(prefers-color-scheme: light)" srcset="src/assets/Black_512px.png">
|
|
11
|
+
<img alt="Sponsor Logo" src="src/assets/Black_512px.png" width="200">
|
|
12
|
+
</picture>
|
|
13
|
+
</div>
|
|
14
|
+
|
|
5
15
|
## Installation
|
|
6
16
|
|
|
7
17
|
Install `cdp-driver` (if not installed)
|
|
@@ -20,10 +30,10 @@ LOCAL_PROTOCOL=true appium server -pa /wd/hub --use-drivers=cdp-driver
|
|
|
20
30
|
|
|
21
31
|
### Appium Capabilities
|
|
22
32
|
|
|
23
|
-
| Capability | Required | Type | Description
|
|
24
|
-
| ----------------------- | :------: | :----: |
|
|
25
|
-
| `appium:automationName` | + | string | Must be `CDP`
|
|
26
|
-
| `appium:browserName` | + | string | Must be `chrome` or `Terrace` |
|
|
33
|
+
| Capability | Required | Type | Description |
|
|
34
|
+
| ----------------------- | :------: | :----: | --------------------------------------------------- |
|
|
35
|
+
| `appium:automationName` | + | string | Must be `CDP` |
|
|
36
|
+
| `appium:browserName` | + | string | Must be `chrome` or `Terrace` or `opera` or `brave` |
|
|
27
37
|
|
|
28
38
|
### W3C Capabilities
|
|
29
39
|
|
|
@@ -44,7 +54,7 @@ LOCAL_PROTOCOL=true appium server -pa /wd/hub --use-drivers=cdp-driver
|
|
|
44
54
|
| [createWindow](src/commands/createWindow.js) | [here](https://www.w3.org/TR/webdriver/#dfn-new-window) | New Window | ❌ |
|
|
45
55
|
| [deleteCookie](src/commands/deleteCookie.js) | [here](https://www.w3.org/TR/webdriver/#dfn-delete-cookie) | Delete Cookie | ✅ |
|
|
46
56
|
| [deleteCookies](src/commands/deleteCookies.js) | [here](https://www.w3.org/TR/webdriver/#dfn-delete-all-cookies) | Delete All Cookies | ✅ |
|
|
47
|
-
| [deleteSession](src/commands/deleteSession.js) | [here](https://www.w3.org/TR/webdriver/#dfn-delete-session) | Delete Session |
|
|
57
|
+
| [deleteSession](src/commands/deleteSession.js) | [here](https://www.w3.org/TR/webdriver/#dfn-delete-session) | Delete Session | ✅ |
|
|
48
58
|
| [elementDisplayed](src/commands/elementDisplayed.js) | [here](https://www.w3.org/TR/webdriver/#element-displayedness) | Is Element Displayed | ✅ |
|
|
49
59
|
| [elementEnabled](src/commands/elementEnabled.js) | [here](https://www.w3.org/TR/webdriver/#dfn-is-element-enabled) | Is Element Enabled | ✅ |
|
|
50
60
|
| [elementSelected](src/commands/elementSelected.js) | [here](https://www.w3.org/TR/webdriver/#dfn-is-element-selected) | Is Element Selected | ❌ |
|
|
@@ -52,20 +62,20 @@ LOCAL_PROTOCOL=true appium server -pa /wd/hub --use-drivers=cdp-driver
|
|
|
52
62
|
| [executeAsync](src/commands/executeAsync.js) | [here](https://www.w3.org/TR/webdriver/#dfn-execute-async-script) | Execute Async Script | ❌ |
|
|
53
63
|
| [findElOrEls](src/commands/findElOrEls.js) | [here](https://www.w3.org/TR/webdriver/#element-retrieval) | Find Elements | ✅ |
|
|
54
64
|
| [forward](src/commands/forward.js) | [here](https://www.w3.org/TR/webdriver/#dfn-forward) | Forward | ✅ |
|
|
55
|
-
| [fullScreenWindow](src/commands/fullScreenWindow.js) | [here](https://www.w3.org/TR/webdriver/#dfn-fullscreen-window) | Fullscreen Window |
|
|
65
|
+
| [fullScreenWindow](src/commands/fullScreenWindow.js) | [here](https://www.w3.org/TR/webdriver/#dfn-fullscreen-window) | Fullscreen Window | Not supported |
|
|
56
66
|
| [getAlertText](src/commands/getAlertText.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-alert-text) | Get Alert Text | ❌ |
|
|
57
|
-
| [getAttribute](src/commands/getAttribute.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-element-attribute) | Get Element Attribute |
|
|
67
|
+
| [getAttribute](src/commands/getAttribute.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-element-attribute) | Get Element Attribute | ✅ |
|
|
58
68
|
| [getComputedLabel](src/commands/getComputedLabel.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-computed-label) | Get Computed Label | ❌ |
|
|
59
69
|
| [getComputedRole](src/commands/getComputedRole.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-computed-role) | Get Computed Role | ❌ |
|
|
60
70
|
| [getCookie](src/commands/getCookie.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-named-cookie) | Get Named Cookie | ✅ |
|
|
61
71
|
| [getCookies](src/commands/getCookies.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-all-cookies) | Get All Cookies | ✅ |
|
|
62
72
|
| [getCssProperty](src/commands/getCssProperty.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-element-css-value) | Get Element CSS Value | ❌ |
|
|
63
|
-
| [getElementRect](src/commands/getElementRect.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-element-rect) | Get Element Rect |
|
|
64
|
-
| [getElementScreenshot](src/commands/getElementScreenshot.js) | [here](https://www.w3.org/TR/webdriver/#dfn-take-element-screenshot) | Take Element Screenshot |
|
|
65
|
-
| [getName](src/commands/getName.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-element-tag-name) | Get Element Tag Name |
|
|
73
|
+
| [getElementRect](src/commands/getElementRect.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-element-rect) | Get Element Rect | ✅ |
|
|
74
|
+
| [getElementScreenshot](src/commands/getElementScreenshot.js) | [here](https://www.w3.org/TR/webdriver/#dfn-take-element-screenshot) | Take Element Screenshot | ✅ |
|
|
75
|
+
| [getName](src/commands/getName.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-element-tag-name) | Get Element Tag Name | ✅ |
|
|
66
76
|
| [getPageSource](src/commands/getPageSource.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-page-source) | Get Page Source | ✅ |
|
|
67
77
|
| [getProperty](src/commands/getProperty.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-element-property) | Get Element Property | ❌ |
|
|
68
|
-
| [getScreenshot](src/commands/getScreenshot.js) | [here](https://www.w3.org/TR/webdriver/#dfn-take-screenshot) | Take Screenshot |
|
|
78
|
+
| [getScreenshot](src/commands/getScreenshot.js) | [here](https://www.w3.org/TR/webdriver/#dfn-take-screenshot) | Take Screenshot | ✅ |
|
|
69
79
|
| [getText](src/commands/getText.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-element-text) | Get Element Text | ✅ |
|
|
70
80
|
| [getTimeouts](src/commands/getTimeouts.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-timeouts) | Get Timeouts | ❌ |
|
|
71
81
|
| [getUrl](src/commands/url.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-current-url) | Get Current URL | ✅ |
|
|
@@ -81,7 +91,7 @@ LOCAL_PROTOCOL=true appium server -pa /wd/hub --use-drivers=cdp-driver
|
|
|
81
91
|
| [postAcceptAlert](src/commands/postAcceptAlert.js) | [here](https://www.w3.org/TR/webdriver/#dfn-accept-alert) | Accept Alert | ❌ |
|
|
82
92
|
| [postDismissAlert](src/commands/postDismissAlert.js) | [here](https://www.w3.org/TR/webdriver/#dfn-dismiss-alert) | Dismiss Alert | ❌ |
|
|
83
93
|
| [printPage](src/commands/printPage.js) | [here](https://www.w3.org/TR/webdriver/#dfn-print-page) | Print Page | ❌ |
|
|
84
|
-
| [refresh](src/commands/refresh.js) | [here](https://www.w3.org/TR/webdriver/#dfn-refresh) | Refresh |
|
|
94
|
+
| [refresh](src/commands/refresh.js) | [here](https://www.w3.org/TR/webdriver/#dfn-refresh) | Refresh | ✅ |
|
|
85
95
|
| [releaseActions](src/commands/releaseActions.js) | [here](https://www.w3.org/TR/webdriver/#dfn-release-actions) | Release Actions | ❌ |
|
|
86
96
|
| [scriptTimeoutW3C](src/commands/scriptTimeoutW3C.js) | [here](https://www.w3.org/TR/webdriver/#dfn-set-timeouts) | Set Script Timeout | ❌ |
|
|
87
97
|
| [setAlertText](src/commands/setAlertText.js) | [here](https://www.w3.org/TR/webdriver/#dfn-send-alert-text) | Send Alert Text | ❌ |
|
|
@@ -90,6 +100,6 @@ LOCAL_PROTOCOL=true appium server -pa /wd/hub --use-drivers=cdp-driver
|
|
|
90
100
|
| [setUrl](src/commands/url.js) | [here](https://www.w3.org/TR/webdriver/#dfn-navigate-to) | Navigate To | ✅ |
|
|
91
101
|
| [setValue](src/commands/setValue.js) | [here](https://www.w3.org/TR/webdriver/#dfn-element-send-keys) | Element Send Keys | ✅ |
|
|
92
102
|
| [setWindow](src/commands/setWindow.js) | [here](https://www.w3.org/TR/webdriver/#dfn-switch-to-window) | Switch To Window | ❌ |
|
|
93
|
-
| [setWindowRect](src/commands/setWindowRect.js) | [here](https://www.w3.org/TR/webdriver/#dfn-set-window-rect) | Set Window Rect |
|
|
103
|
+
| [setWindowRect](src/commands/setWindowRect.js) | [here](https://www.w3.org/TR/webdriver/#dfn-set-window-rect) | Set Window Rect | Not supported |
|
|
94
104
|
| [title](src/commands/title.js) | [here](https://www.w3.org/TR/webdriver/#dfn-get-title) | Get Title | ✅ |
|
|
95
|
-
| [uploadFile](src/commands/uploadFile.js) | - | Upload File |
|
|
105
|
+
| [uploadFile](src/commands/uploadFile.js) | - | Upload File | Not supported |
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
4
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
5
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
6
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
7
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
8
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
9
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
13
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
14
|
+
};
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
const appium_uiautomator2_driver_1 = require("appium-uiautomator2-driver");
|
|
17
|
+
const appium_adb_1 = require("appium-adb");
|
|
18
|
+
const logger_js_1 = __importDefault(require("../src/logger.js"));
|
|
19
|
+
const asyncbox_1 = require("asyncbox");
|
|
20
|
+
const START_APP_WAIT_DURATION = 60000;
|
|
21
|
+
const opera = {
|
|
22
|
+
pkg: 'com.opera.browser',
|
|
23
|
+
activity: 'com.opera.android.BrowserActivity',
|
|
24
|
+
};
|
|
25
|
+
const common = {
|
|
26
|
+
waitDuration: START_APP_WAIT_DURATION,
|
|
27
|
+
optionalIntentArguments: '-d www.appium.io',
|
|
28
|
+
};
|
|
29
|
+
function skipWelcomeOpera() {
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
const adb = yield appium_adb_1.ADB.createADB();
|
|
32
|
+
yield adb.adbExec(['shell', 'pm', 'clear', 'com.opera.browser']);
|
|
33
|
+
yield adb.startApp(Object.assign({}, opera, common));
|
|
34
|
+
const driver = new appium_uiautomator2_driver_1.AndroidUiautomator2Driver();
|
|
35
|
+
const caps = {
|
|
36
|
+
platformName: "Android",
|
|
37
|
+
"appium:automationName": "UiAutomator2",
|
|
38
|
+
"appium:deviceName": "Android Device",
|
|
39
|
+
};
|
|
40
|
+
try {
|
|
41
|
+
yield driver.createSession(null, {
|
|
42
|
+
alwaysMatch: caps,
|
|
43
|
+
firstMatch: [{}],
|
|
44
|
+
});
|
|
45
|
+
yield driver.updateSettings({
|
|
46
|
+
"waitForIdleTimeout": 0,
|
|
47
|
+
});
|
|
48
|
+
const activity = yield driver.getCurrentActivity();
|
|
49
|
+
logger_js_1.default.info(`Activity is ${activity}`);
|
|
50
|
+
if (activity.includes('Welcome')) {
|
|
51
|
+
// Helper function to find element with waitForCondition
|
|
52
|
+
const findElementWithWaitForCondition = (strategy_1, selector_1, ...args_1) => __awaiter(this, [strategy_1, selector_1, ...args_1], void 0, function* (strategy, selector, timeout = 30000) {
|
|
53
|
+
try {
|
|
54
|
+
return yield (0, asyncbox_1.waitForCondition)(() => __awaiter(this, void 0, void 0, function* () {
|
|
55
|
+
try {
|
|
56
|
+
logger_js_1.default.info(`Attempting to find element (${strategy}: ${selector})`);
|
|
57
|
+
const element = yield driver.findElement(strategy, selector);
|
|
58
|
+
logger_js_1.default.info(`Successfully found element (${strategy}: ${selector})`);
|
|
59
|
+
return element;
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
// Return false to continue waiting
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
}), {
|
|
66
|
+
waitMs: timeout,
|
|
67
|
+
intervalMs: 2000,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
throw new Error(`Failed to find element (${strategy}: ${selector}) within ${timeout}ms timeout: ${error.message}`);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
const nextButton = yield findElementWithWaitForCondition('id', 'com.opera.browser:id/continue_button');
|
|
75
|
+
logger_js_1.default.info(`Next button is ${JSON.stringify(nextButton, null, 2)}`);
|
|
76
|
+
yield driver.click(nextButton.ELEMENT);
|
|
77
|
+
const skipButton = yield findElementWithWaitForCondition('id', 'com.opera.browser:id/skip_button');
|
|
78
|
+
yield driver.click(skipButton.ELEMENT);
|
|
79
|
+
yield findElementWithWaitForCondition("xpath", '//android.widget.Button[@text="Enable notifications"]');
|
|
80
|
+
const skipAgainButton = yield findElementWithWaitForCondition('id', 'com.opera.browser:id/skip_button');
|
|
81
|
+
yield driver.click(skipAgainButton.ELEMENT);
|
|
82
|
+
const allowButton = yield findElementWithWaitForCondition('xpath', '//android.widget.Button[@text="Allow"]');
|
|
83
|
+
yield driver.click(allowButton.ELEMENT);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
finally {
|
|
87
|
+
yield driver.deleteSession();
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
92
|
+
yield skipWelcomeOpera();
|
|
93
|
+
process.exit(0);
|
|
94
|
+
}))();
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zY3JpcHRzL29wZXJhLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUVBLDJFQUF1RTtBQUN2RSwyQ0FBaUM7QUFDakMsaUVBQW1DO0FBQ25DLHVDQUE0QztBQUU1QyxNQUFNLHVCQUF1QixHQUFHLEtBQUssQ0FBQztBQUV0QyxNQUFNLEtBQUssR0FBRztJQUNaLEdBQUcsRUFBRSxtQkFBbUI7SUFDeEIsUUFBUSxFQUFFLG1DQUFtQztDQUM5QyxDQUFDO0FBRUYsTUFBTSxNQUFNLEdBQUc7SUFDYixZQUFZLEVBQUUsdUJBQXVCO0lBQ3JDLHVCQUF1QixFQUFFLGtCQUFrQjtDQUM1QyxDQUFDO0FBRUYsU0FBZSxnQkFBZ0I7O1FBQzdCLE1BQU0sR0FBRyxHQUFHLE1BQU0sZ0JBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsQyxNQUFNLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7UUFDakUsTUFBTSxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3JELE1BQU0sTUFBTSxHQUFHLElBQUksc0RBQXlCLEVBQUUsQ0FBQztRQUMvQyxNQUFNLElBQUksR0FBRztZQUNYLFlBQVksRUFBRSxTQUFTO1lBQ3ZCLHVCQUF1QixFQUFFLGNBQWM7WUFDdkMsbUJBQW1CLEVBQUUsZ0JBQWdCO1NBQ3RDLENBQUM7UUFDRixJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO2dCQUNqQyxXQUFXLEVBQUUsSUFBSTtnQkFDakIsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDO2FBQ2pCLENBQUMsQ0FBQztZQUNILE1BQU0sTUFBTSxDQUFDLGNB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
|
package/build/src/adb.js
ADDED
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.getAdb = getAdb;
|
|
16
|
+
exports.requireSdkRoot = requireSdkRoot;
|
|
17
|
+
exports.adbExec = adbExec;
|
|
18
|
+
exports.startApplication = startApplication;
|
|
19
|
+
const appium_adb_1 = require("appium-adb");
|
|
20
|
+
const support_1 = require("@appium/support");
|
|
21
|
+
const get_port_1 = __importDefault(require("get-port"));
|
|
22
|
+
const logger_1 = __importDefault(require("./logger"));
|
|
23
|
+
let adb;
|
|
24
|
+
const START_APP_WAIT_DURATION = 60000;
|
|
25
|
+
const DEVTOOLS_SOCKET_MAP = {
|
|
26
|
+
chrome: 'chrome_devtools_remote',
|
|
27
|
+
brave: 'chrome_devtools_remote',
|
|
28
|
+
opera: 'com.opera.browser.devtools',
|
|
29
|
+
terrance: 'com.sec.android.app.sbrowser_devtools_remote',
|
|
30
|
+
};
|
|
31
|
+
function getAdb() {
|
|
32
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
try {
|
|
34
|
+
if (!adb) {
|
|
35
|
+
adb = yield appium_adb_1.ADB.createADB();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
console.log(e);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
function requireSdkRoot() {
|
|
44
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
const sdkRoot = (0, appium_adb_1.getSdkRootFromEnv)();
|
|
46
|
+
const docMsg = 'Read https://developer.android.com/studio/command-line/variables for more details';
|
|
47
|
+
if (_.isEmpty(sdkRoot)) {
|
|
48
|
+
throw new Error(`Neither ANDROID_HOME nor ANDROID_SDK_ROOT environment variable was exported. ${docMsg}`);
|
|
49
|
+
}
|
|
50
|
+
if (!(yield support_1.fs.exists(sdkRoot))) {
|
|
51
|
+
throw new Error(`The Android SDK root folder '${sdkRoot}' does not exist on the local file system. ${docMsg}`);
|
|
52
|
+
}
|
|
53
|
+
const stats = yield support_1.fs.stat(sdkRoot);
|
|
54
|
+
if (!stats.isDirectory()) {
|
|
55
|
+
throw new Error(`The Android SDK root '${sdkRoot}' must be a folder. ${docMsg}`);
|
|
56
|
+
}
|
|
57
|
+
return sdkRoot;
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
function adbExec() {
|
|
61
|
+
return __awaiter(this, arguments, void 0, function* (browser = 'chrome') {
|
|
62
|
+
let freePort = yield (0, get_port_1.default)();
|
|
63
|
+
const devtoolsSocket = DEVTOOLS_SOCKET_MAP[browser] || `${browser}_devtools_remote`;
|
|
64
|
+
yield adb.adbExec([
|
|
65
|
+
'forward',
|
|
66
|
+
`tcp:${freePort}`,
|
|
67
|
+
`localabstract:${devtoolsSocket}`,
|
|
68
|
+
]);
|
|
69
|
+
return freePort;
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
function startApplication() {
|
|
73
|
+
return __awaiter(this, arguments, void 0, function* (browser = 'chrome') {
|
|
74
|
+
const common = {
|
|
75
|
+
waitDuration: START_APP_WAIT_DURATION,
|
|
76
|
+
optionalIntentArguments: '-d www.appium.io',
|
|
77
|
+
};
|
|
78
|
+
const chrome = {
|
|
79
|
+
pkg: 'com.android.chrome',
|
|
80
|
+
activity: 'com.google.android.apps.chrome.Main',
|
|
81
|
+
};
|
|
82
|
+
const terrance = {
|
|
83
|
+
pkg: 'com.sec.android.app.sbrowser',
|
|
84
|
+
activity: 'com.sec.android.app.sbrowser.SBrowserMainActivity',
|
|
85
|
+
};
|
|
86
|
+
const brave = {
|
|
87
|
+
pkg: 'com.brave.browser',
|
|
88
|
+
activity: 'com.google.android.apps.chrome.Main',
|
|
89
|
+
};
|
|
90
|
+
const opera = {
|
|
91
|
+
pkg: 'com.opera.browser',
|
|
92
|
+
activity: 'com.opera.android.BrowserActivity',
|
|
93
|
+
};
|
|
94
|
+
if (browser === 'chrome') {
|
|
95
|
+
logger_1.default.info(`Starting Chrome`);
|
|
96
|
+
yield adb.startApp(Object.assign({}, chrome, common));
|
|
97
|
+
}
|
|
98
|
+
else if (browser === 'terrance') {
|
|
99
|
+
logger_1.default.info(`Starting Terrance`);
|
|
100
|
+
yield adb.startApp(Object.assign({}, terrance, common));
|
|
101
|
+
}
|
|
102
|
+
else if (browser === 'brave') {
|
|
103
|
+
logger_1.default.info(`Starting Brave`);
|
|
104
|
+
yield adb.startApp(Object.assign({}, brave, common));
|
|
105
|
+
}
|
|
106
|
+
else if (browser === 'opera') {
|
|
107
|
+
logger_1.default.info(`Starting Opera`);
|
|
108
|
+
yield adb.startApp(Object.assign({}, opera, common));
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FkYi5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQWVBLHdCQVFDO0FBRUQsd0NBc0JDO0FBRUQsMEJBVUM7QUFFRCw0Q0FzQ0M7QUFuR0QsMkNBQW9EO0FBQ3BELDZDQUFxQztBQUNyQyx3REFBK0I7QUFDL0Isc0RBQTJCO0FBRTNCLElBQUksR0FBRyxDQUFDO0FBQ1IsTUFBTSx1QkFBdUIsR0FBRyxLQUFLLENBQUM7QUFFdEMsTUFBTSxtQkFBbUIsR0FBRztJQUMxQixNQUFNLEVBQUUsd0JBQXdCO0lBQ2hDLEtBQUssRUFBRSx3QkFBd0I7SUFDL0IsS0FBSyxFQUFFLDRCQUE0QjtJQUNuQyxRQUFRLEVBQUUsOENBQThDO0NBQ3pELENBQUM7QUFFRixTQUFzQixNQUFNOztRQUMxQixJQUFJLENBQUM7WUFDSCxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQ1QsR0FBRyxHQUFHLE1BQU0sZ0JBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM5QixDQUFDO1FBQ0gsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pCLENBQUM7SUFDSCxDQUFDO0NBQUE7QUFFRCxTQUFzQixjQUFjOztRQUNsQyxNQUFNLE9BQU8sR0FBRyxJQUFBLDhCQUFpQixHQUFFLENBQUM7UUFDcEMsTUFBTSxNQUFNLEdBQ1YsbUZBQW1GLENBQUM7UUFDdEYsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FDYixnRkFBZ0YsTUFBTSxFQUFFLENBQ3pGLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLENBQUMsTUFBTSxZQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNoQyxNQUFN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
|
package/build/src/cdp.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getNetwork = getNetwork;
|
|
13
|
+
const taiko_1 = require("taiko");
|
|
14
|
+
function getNetwork() {
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
const cdpClient = yield (0, taiko_1.client)();
|
|
17
|
+
const Network = cdpClient.Network;
|
|
18
|
+
yield Network.enable();
|
|
19
|
+
return Network;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NkcC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUVBLGdDQUtDO0FBUEQsaUNBQStCO0FBRS9CLFNBQXNCLFVBQVU7O1FBQzVCLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBQSxjQUFNLEdBQUUsQ0FBQztRQUNqQyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDO1FBQ2xDLE1BQU0sT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3ZCLE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7Q0FBQSJ9
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.elementCache = exports.helpers = exports.commands = void 0;
|
|
16
|
+
const cdp_1 = require("../cdp");
|
|
17
|
+
const url_1 = __importDefault(require("./url"));
|
|
18
|
+
let commands = {}, helpers = {}, extensions = {};
|
|
19
|
+
exports.commands = commands;
|
|
20
|
+
exports.helpers = helpers;
|
|
21
|
+
commands.setCookie = function setCookie(cookie) {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
const url = yield url_1.default.getUrl();
|
|
24
|
+
const origin = (new URL(url)).origin;
|
|
25
|
+
const options = {};
|
|
26
|
+
options.name = cookie.name;
|
|
27
|
+
options.value = cookie.value;
|
|
28
|
+
options.url = origin;
|
|
29
|
+
const network = yield (0, cdp_1.getNetwork)();
|
|
30
|
+
return network.setCookie(options);
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
commands.getCookies = function getCookies() {
|
|
34
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
35
|
+
const network = yield (0, cdp_1.getNetwork)();
|
|
36
|
+
const allCookies = yield network.getAllCookies();
|
|
37
|
+
return allCookies.cookies;
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
commands.getCookie = function getCookie(key) {
|
|
41
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
42
|
+
const network = yield (0, cdp_1.getNetwork)();
|
|
43
|
+
const allCookies = yield network.getAllCookies();
|
|
44
|
+
return allCookies.cookies.filter((cookie) => { return cookie.name === key; })[0];
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
commands.deleteCookie = function deleteCookie(key) {
|
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
const allCookies = yield commands.getCookies();
|
|
50
|
+
const cookie = allCookies.filter((cookie) => { return cookie.name === key; })[0];
|
|
51
|
+
const network = yield (0, cdp_1.getNetwork)();
|
|
52
|
+
return network.deleteCookies({ name: key, domain: cookie.domain });
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
commands.deleteCookies = function deleteAllCookies() {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
const network = yield (0, cdp_1.getNetwork)();
|
|
58
|
+
return network.clearBrowserCookies();
|
|
59
|
+
});
|
|
60
|
+
};
|
|
61
|
+
Object.assign(extensions, commands, helpers);
|
|
62
|
+
exports.default = extensions;
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9jb29raWVzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdDQUFvQztBQUNwQyxnREFBZ0M7QUFFaEMsSUFBSSxRQUFRLEdBQUcsRUFBRSxFQUNiLE9BQU8sR0FBRyxFQUFFLEVBQ1osVUFBVSxHQUFHLEVBQUUsQ0FBQztBQXdDWCw0QkFBUTtBQUFFLDBCQUFPO0FBdEMxQixRQUFRLENBQUMsU0FBUyxHQUFHLFNBQWUsU0FBUyxDQUFDLE1BQU07O1FBQ2hELE1BQU0sR0FBRyxHQUFHLE1BQU0sYUFBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFFckMsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ25CLE9BQU8sQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUMzQixPQUFPLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDN0IsT0FBTyxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUM7UUFFckIsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFBLGdCQUFVLEdBQUUsQ0FBQztRQUNuQyxPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEMsQ0FBQztDQUFBLENBQUE7QUFFRCxRQUFRLENBQUMsVUFBVSxHQUFHLFNBQWUsVUFBVTs7UUFDM0MsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFBLGdCQUFVLEdBQUUsQ0FBQztRQUNuQyxNQUFNLFVBQVUsR0FBRyxNQUFNLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNqRCxPQUFPLFVBQVUsQ0FBQyxPQUFPLENBQUM7SUFDOUIsQ0FBQztDQUFBLENBQUE7QUFFRCxRQUFRLENBQUMsU0FBUyxHQUFHLFNBQWUsU0FBUyxDQUFDLEdBQUc7O1FBQzdDLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBQSxnQkFBVSxHQUFFLENBQUM7UUFDbkMsTUFBTSxVQUFVLEdBQUcsTUFBTSxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDakQsT0FBTyxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUUsT0FBTyxNQUFNLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7Q0FBQSxDQUFBO0FBRUQsUUFBUSxDQUFDLFlBQVksR0FBRyxTQUFlLFlBQVksQ0FBQyxHQUFHOztRQUNuRCxNQUFNLFVBQVUsR0FBRyxNQUFNLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMvQyxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsR0FBRyxPQUFPLE1BQU0sQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFBLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakYsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFBLGdCQUFVLEdBQUUsQ0FBQztRQUNuQyxPQUFPLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFDLENBQUMsQ0FBQztJQUNyRSxDQUFDO0NBQUEsQ0FBQTtBQUVELFFBQVEsQ0FBQyxhQUFhLEdBQUcsU0FBZSxnQkFBZ0I7O1FBQ3BELE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBQSxnQkFBVSxHQUFFLENBQUM7UUFDbkMsT0FBTyxPQUFPLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0NBQUEsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUU3QyxrQkFBZSxVQUFVLENBQUMifQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlU2Vzc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9jcmVhdGVTZXNzaW9uLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.elementCache = exports.helpers = exports.commands = void 0;
|
|
13
|
+
const taiko_1 = require("taiko");
|
|
14
|
+
let commands = {}, helpers = {}, extensions = {};
|
|
15
|
+
exports.commands = commands;
|
|
16
|
+
exports.helpers = helpers;
|
|
17
|
+
commands.getPageSource = function pageSource() {
|
|
18
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
return (0, taiko_1.evaluate)(() => { return document.documentElement.outerHTML; });
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
Object.assign(extensions, commands, helpers);
|
|
23
|
+
exports.default = extensions;
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZHMvZG9jdW1lbnQuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsaUNBQWlDO0FBRWpDLElBQUksUUFBUSxHQUFHLEVBQUUsRUFDZixPQUFPLEdBQUcsRUFBRSxFQUNaLFVBQVUsR0FBRyxFQUFFLENBQUM7QUFPVCw0QkFBUTtBQUFFLDBCQUFPO0FBTDFCLFFBQVEsQ0FBQyxhQUFhLEdBQUcsU0FBZSxVQUFVOztRQUM5QyxPQUFPLElBQUEsZ0JBQVEsRUFBRSxHQUFHLEVBQUUsR0FBRyxPQUFPLFFBQVEsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFBLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDMUUsQ0FBQztDQUFBLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFN0Msa0JBQWUsVUFBVSxDQUFDIn0=
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.helpers = exports.commands = void 0;
|
|
13
|
+
const taiko_1 = require("taiko");
|
|
14
|
+
const find_1 = require("./find");
|
|
15
|
+
let commands = {}, helpers = {}, extensions = {};
|
|
16
|
+
exports.commands = commands;
|
|
17
|
+
exports.helpers = helpers;
|
|
18
|
+
function _click(element) {
|
|
19
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
yield (0, taiko_1.click)(element);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
commands.click = function click(elementId) {
|
|
24
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
const element = find_1.elementCache[elementId];
|
|
26
|
+
yield _click(element);
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
commands.getText = function getText(elementId) {
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
const element = find_1.elementCache[elementId];
|
|
32
|
+
return element.text();
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
commands.elementDisplayed = function elementDisplayed(elementId) {
|
|
36
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
37
|
+
const element = find_1.elementCache[elementId];
|
|
38
|
+
return element.isVisible();
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
commands.elementEnabled = function elementEnabled(elementId) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
const element = find_1.elementCache[elementId];
|
|
44
|
+
return !(yield element.isDisabled());
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
commands.setValue = function setValue(value, elementId) {
|
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
const element = find_1.elementCache[elementId];
|
|
50
|
+
yield (0, taiko_1.write)(value, (0, taiko_1.into)(element));
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
commands.clear = function clear(elementId) {
|
|
54
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
+
const element = find_1.elementCache[elementId];
|
|
56
|
+
yield (0, taiko_1.write)("", (0, taiko_1.into)(element));
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
commands.getAttribute = function getAttribute(value, elementId) {
|
|
60
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
61
|
+
const element = find_1.elementCache[elementId];
|
|
62
|
+
return yield element.attribute(value);
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
commands.getElementRect = function getElementRect(elementId) {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
const element = find_1.elementCache[elementId];
|
|
68
|
+
return yield (0, taiko_1.evaluate)(element, (element) => {
|
|
69
|
+
const { x, y, width, height } = element.getBoundingClientRect();
|
|
70
|
+
return { x, y, width, height };
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
commands.getName = function getName(elementId) {
|
|
75
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
+
const element = find_1.elementCache[elementId];
|
|
77
|
+
return yield (0, taiko_1.evaluate)(element, (element) => {
|
|
78
|
+
return element.tagName;
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
};
|
|
82
|
+
Object.assign(extensions, commands, helpers);
|
|
83
|
+
exports.default = extensions;
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9lbGVtZW50LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLGlDQUFtRDtBQUNuRCxpQ0FBc0M7QUFFdEMsSUFBSSxRQUFRLEdBQUcsRUFBRSxFQUNmLE9BQU8sR0FBRyxFQUFFLEVBQ1osVUFBVSxHQUFHLEVBQUUsQ0FBQztBQTBEVCw0QkFBUTtBQUFFLDBCQUFPO0FBeEQxQixTQUFlLE1BQU0sQ0FBQyxPQUFPOztRQUMzQixNQUFNLElBQUEsYUFBSyxFQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7Q0FBQTtBQUNELFFBQVEsQ0FBQyxLQUFLLEdBQUcsU0FBZSxLQUFLLENBQUMsU0FBUzs7UUFDN0MsTUFBTSxPQUFPLEdBQUcsbUJBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4QyxNQUFNLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4QixDQUFDO0NBQUEsQ0FBQztBQUVGLFFBQVEsQ0FBQyxPQUFPLEdBQUcsU0FBZSxPQUFPLENBQUMsU0FBUzs7UUFDakQsTUFBTSxPQUFPLEdBQUcsbUJBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4QyxPQUFPLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0NBQUEsQ0FBQztBQUVGLFFBQVEsQ0FBQyxnQkFBZ0IsR0FBRyxTQUFlLGdCQUFnQixDQUFDLFNBQVM7O1FBQ25FLE1BQU0sT0FBTyxHQUFHLG1CQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDeEMsT0FBTyxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDN0IsQ0FBQztDQUFBLENBQUM7QUFFRixRQUFRLENBQUMsY0FBYyxHQUFHLFNBQWUsY0FBYyxDQUFDLFNBQVM7O1FBQy9ELE1BQU0sT0FBTyxHQUFHLG1CQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDeEMsT0FBTyxDQUFDLENBQUEsTUFBTSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUEsQ0FBQztJQUNyQyxDQUFDO0NBQUEsQ0FBQztBQUVGLFFBQVEsQ0FBQyxRQUFRLEdBQUcsU0FBZSxRQUFRLENBQUMsS0FBSyxFQUFFLFNBQVM7O1FBQzFELE1BQU0sT0FBTyxHQUFHLG1CQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDeEMsTUFBTSxJQUFBLGFBQUssRUFBQyxLQUFLLEVBQUUsSUFBQSxZQUFJLEVBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNwQyxDQUFDO0NBQUEsQ0FBQztBQUVGLFFBQVEsQ0FBQyxLQUFLLEdBQUcsU0FBZSxLQUFLLENBQUMsU0FBUzs7UUFDN0MsTUFBTSxPQUFPLEdBQUcsbUJBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4QyxNQUFNLElBQUEsYUFBSyxFQUFDLEVBQUUsRUFBRSxJQUFBLFlBQUksRUFBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7Q0FBQSxDQUFDO0FBRUYsUUFBUSxDQUFDLFlBQVksR0FBRyxTQUFlLFlBQVksQ0FBQyxLQUFLLEVBQUUsU0FBUzs7UUFDbEUsTUFBTSxPQUFPLEdBQUcsbUJBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4QyxPQUFPLE1BQU0sT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDO0NBQUEsQ0FBQztBQUVGLFFBQVEsQ0FBQyxjQUFjLEdBQUcsU0FBZSxjQUFjLENBQUMsU0FBUzs7UUFDL0QsTUFBTSxPQUFPLEdBQUcsbUJBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4QyxPQUFPLE1BQU0sSUFBQSxnQkFBUSxFQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBRXpDLE1BQU0sRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUMvRCxPQUFPLEVBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUE7UUFDL0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQUEsQ0FBQTtBQUVELFFBQVEsQ0FBQyxPQUFPLEdBQUcsU0FBZSxPQUFPLENBQUMsU0FBUzs7UUFDakQsTUFBTSxPQUFPLEdBQUcsbUJBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4QyxPQUFPLE1BQU0sSUFBQSxnQkFBUSxFQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBRTFDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FBQSxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBRTdDLGtCQUFlLFVBQVUsQ0FBQyJ9
|
|
@@ -31,7 +31,7 @@ helpers.findElOrEls = function findElOrEls(strategy, selector, mult, context) {
|
|
|
31
31
|
logger_1.default.info(`Selector is ${selector}`);
|
|
32
32
|
logger_1.default.info(`Mult is ${mult}`);
|
|
33
33
|
logger_1.default.info(`Context is ${context}`);
|
|
34
|
-
const elStrategy = strategy ===
|
|
34
|
+
const elStrategy = strategy === 'xpath' ? (0, taiko_1.$)(selector) : (0, taiko_1.$)(`#${selector}`);
|
|
35
35
|
if ((yield elStrategy.exists()) && !mult) {
|
|
36
36
|
const elementId = getUUID();
|
|
37
37
|
elementCache[elementId] = elStrategy;
|
|
@@ -63,4 +63,4 @@ commands.findElements = function findElements(strategy, selector) {
|
|
|
63
63
|
};
|
|
64
64
|
Object.assign(extensions, commands, helpers);
|
|
65
65
|
exports.default = extensions;
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9maW5kLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHFEQUE2QztBQUM3QyxpQ0FBMEI7QUFDMUIsdURBQTRCO0FBQzVCLDZDQUF1QztBQUN2Qyx1RUFBMEU7QUFFMUUsSUFBSSxRQUFRLEdBQUcsRUFBRSxFQUNmLE9BQU8sR0FBRyxFQUFFLEVBQ1osVUFBVSxHQUFHLEVBQUUsRUFDZixZQUFZLEdBQUcsRUFBRSxDQUFDO0FBMkNYLDRCQUFRO0FBQUUsMEJBQU87QUFBRSxvQ0FBWTtBQXpDeEMsU0FBUyxPQUFPO0lBQ2QsT0FBTyxjQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7QUFDdkIsQ0FBQztBQUVELE9BQU8sQ0FBQyxXQUFXLEdBQUcsU0FBZSxXQUFXLENBQzlDLFFBQVEsRUFDUixRQUFRLEVBQ1IsSUFBSSxFQUNKLE9BQU87O1FBRVAsZ0JBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3BDLGdCQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNwQyxnQkFBRyxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLENBQUM7UUFDNUIsZ0JBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sVUFBVSxHQUFHLFFBQVEsS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUEsU0FBQyxFQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFBLFNBQUMsRUFBQyxJQUFJLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDMUUsSUFBSSxDQUFDLE1BQU0sVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN6QyxNQUFNLFNBQVMsR0FBRyxPQUFPLEVBQUUsQ0FBQztZQUM1QixZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsVUFBVSxDQUFDO1lBQ3JDLE9BQU8sRUFBRSxDQUFDLDJCQUFlLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQztRQUMxQyxDQUFDO2FBQU0sSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNoQixJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUM7WUFDYixDQUFDLE1BQU0sSUFBQSxTQUFDLEVBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDakQsTUFBTSxTQUFTLEdBQUcsT0FBTyxFQUFFLENBQUM7Z0JBQzVCLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxPQUFPLENBQUM7Z0JBQ2xDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztZQUNuQyxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksb0JBQU0sQ0FBQyxrQkFBa0IsQ0FBQywyQkFBMkIsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUM3RSxDQUFDO0lBQ0gsQ0FBQztDQUFBLENBQUM7QUFFRixRQUFRLENBQUMsV0FBVyxHQUFHLFNBQWUsV0FBVyxDQUFDLFFBQVEsRUFBRSxRQUFROztRQUNsRSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyRCxDQUFDO0NBQUEsQ0FBQztBQUVGLFFBQVEsQ0FBQyxZQUFZLEdBQUcsU0FBZSxZQUFZLENBQUMsUUFBUSxFQUFFLFFBQVE7O1FBQ3BFLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FBQSxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBRTdDLGtCQUFlLFVBQVUsQ0FBQyJ9
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const url_1 = __importDefault(require("./url"));
|
|
7
|
+
const find_1 = __importDefault(require("./find"));
|
|
8
|
+
const element_1 = __importDefault(require("./element"));
|
|
9
|
+
const navigation_1 = __importDefault(require("./navigation"));
|
|
10
|
+
const document_1 = __importDefault(require("./document"));
|
|
11
|
+
const cookies_1 = __importDefault(require("./cookies"));
|
|
12
|
+
const screencapture_1 = __importDefault(require("./screencapture"));
|
|
13
|
+
let commands = {};
|
|
14
|
+
Object.assign(commands, screencapture_1.default, cookies_1.default, document_1.default, navigation_1.default, url_1.default, find_1.default, element_1.default);
|
|
15
|
+
exports.default = commands;
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZHMvaW5kZXguanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnREFBZ0M7QUFDaEMsa0RBQWlDO0FBQ2pDLHdEQUF3QztBQUN4Qyw4REFBOEM7QUFDOUMsMERBQTBDO0FBQzFDLHdEQUF1QztBQUN2QyxvRUFBZ0Q7QUFFaEQsSUFBSSxRQUFRLEdBQUcsRUFBRSxDQUFDO0FBRWxCLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLHVCQUFrQixFQUFFLGlCQUFjLEVBQUUsa0JBQWdCLEVBQUUsb0JBQWtCLEVBQUUsYUFBVyxFQUFFLGNBQVcsRUFBRSxpQkFBZSxDQUFDLENBQUM7QUFFN0ksa0JBQWUsUUFBUSxDQUFDIn0=
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.elementCache = exports.helpers = exports.commands = void 0;
|
|
13
|
+
const taiko_1 = require("taiko");
|
|
14
|
+
let commands = {}, helpers = {}, extensions = {};
|
|
15
|
+
exports.commands = commands;
|
|
16
|
+
exports.helpers = helpers;
|
|
17
|
+
commands.title = function pageTitle() {
|
|
18
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
return yield (0, taiko_1.title)();
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
commands.back = function back() {
|
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
yield (0, taiko_1.goBack)();
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
commands.forward = function forward() {
|
|
28
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
yield (0, taiko_1.goForward)();
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
Object.assign(extensions, commands, helpers);
|
|
33
|
+
exports.default = extensions;
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9uYXZpZ2F0aW9uLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLGlDQUFpRDtBQUVqRCxJQUFJLFFBQVEsR0FBRyxFQUFFLEVBQ2YsT0FBTyxHQUFHLEVBQUUsRUFDWixVQUFVLEdBQUcsRUFBRSxDQUFDO0FBZVQsNEJBQVE7QUFBRSwwQkFBTztBQWIxQixRQUFRLENBQUMsS0FBSyxHQUFHLFNBQWUsU0FBUzs7UUFDdkMsT0FBTyxNQUFNLElBQUEsYUFBSyxHQUFFLENBQUM7SUFDdkIsQ0FBQztDQUFBLENBQUM7QUFFRixRQUFRLENBQUMsSUFBSSxHQUFHLFNBQWUsSUFBSTs7UUFDakMsTUFBTSxJQUFBLGNBQU0sR0FBRSxDQUFDO0lBQ2pCLENBQUM7Q0FBQSxDQUFDO0FBRUYsUUFBUSxDQUFDLE9BQU8sR0FBRyxTQUFlLE9BQU87O1FBQ3ZDLE1BQU0sSUFBQSxpQkFBUyxHQUFFLENBQUM7SUFDcEIsQ0FBQztDQUFBLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFN0Msa0JBQWUsVUFBVSxDQUFDIn0=
|