appium-safari-driver 3.1.3 → 3.2.0
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/.azure-pipelines.yml +5 -5
- package/.github/workflows/publish.js.yml +4 -4
- package/build/index.js +1 -29
- package/build/lib/commands/find.js +2 -2
- package/build/lib/commands/record-screen.js +2 -2
- package/build/lib/driver.js +3 -3
- package/build/lib/logger.js +2 -2
- package/build/lib/safari.js +5 -5
- package/build/lib/utils.js +1 -1
- package/build/test/functional/desktop-driver-e2e-specs.js +5 -4
- package/build/test/functional/mobile-driver-e2e-specs.js +4 -3
- package/build/test/server.js +21 -0
- package/build/test/unit/driver-specs.js +1 -1
- package/build/test/unit/utils-specs.js +1 -1
- package/index.js +1 -20
- package/lib/commands/find.js +1 -1
- package/lib/commands/record-screen.js +1 -1
- package/lib/driver.js +1 -1
- package/lib/logger.js +1 -1
- package/lib/safari.js +2 -2
- package/package.json +6 -3
- package/test/functional/desktop-driver-e2e-specs.js +2 -1
- package/test/functional/mobile-driver-e2e-specs.js +2 -1
- package/test/server.js +8 -0
- package/build/lib/server.js +0 -36
- package/lib/server.js +0 -15
- package/npm-shrinkwrap.json +0 -2476
package/.azure-pipelines.yml
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# https://github.com/Microsoft/azure-pipelines-image-generation/blob/master/images/macos/
|
|
2
2
|
variables:
|
|
3
|
-
VM_IMAGE: macOS-
|
|
4
|
-
XCODE_VERSION:
|
|
5
|
-
PLATFORM_VERSION:
|
|
6
|
-
DEVICE_NAME: iPhone
|
|
7
|
-
DEFAULT_NODE_VERSION: "
|
|
3
|
+
VM_IMAGE: macOS-12
|
|
4
|
+
XCODE_VERSION: 13.4
|
|
5
|
+
PLATFORM_VERSION: 15.5
|
|
6
|
+
DEVICE_NAME: iPhone 12
|
|
7
|
+
DEFAULT_NODE_VERSION: "16.x"
|
|
8
8
|
|
|
9
9
|
pool:
|
|
10
10
|
vmImage: "$(VM_IMAGE)"
|
|
@@ -14,12 +14,12 @@ jobs:
|
|
|
14
14
|
uses: actions/setup-node@v1
|
|
15
15
|
with:
|
|
16
16
|
node-version: 14.x
|
|
17
|
-
-
|
|
18
|
-
|
|
17
|
+
- name: install newer npm
|
|
18
|
+
run: npm install -g npm
|
|
19
|
+
- run: npm install
|
|
20
|
+
name: Install dependencies
|
|
19
21
|
- run: rm -rf package-lock.json
|
|
20
22
|
- run: npm shrinkwrap
|
|
21
|
-
- run: npm install --no-package-lock
|
|
22
|
-
name: Install dev dependencies
|
|
23
23
|
- run: npm test
|
|
24
24
|
name: Run NPM Test
|
|
25
25
|
- run: npx semantic-release
|
package/build/index.js
CHANGED
|
@@ -12,41 +12,13 @@ Object.defineProperty(exports, "SafariDriver", {
|
|
|
12
12
|
}
|
|
13
13
|
});
|
|
14
14
|
exports.default = void 0;
|
|
15
|
-
Object.defineProperty(exports, "startServer", {
|
|
16
|
-
enumerable: true,
|
|
17
|
-
get: function () {
|
|
18
|
-
return _server.startServer;
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
15
|
|
|
22
16
|
require("source-map-support/register");
|
|
23
17
|
|
|
24
18
|
var _driver = _interopRequireDefault(require("./lib/driver"));
|
|
25
19
|
|
|
26
|
-
var _server = require("./lib/server");
|
|
27
|
-
|
|
28
|
-
var _asyncbox = require("asyncbox");
|
|
29
|
-
|
|
30
|
-
const DEFAULT_HOST = 'localhost';
|
|
31
|
-
const DEFAULT_PORT = 4797;
|
|
32
|
-
|
|
33
|
-
async function main() {
|
|
34
|
-
const getArgValue = argName => {
|
|
35
|
-
const argIndex = process.argv.indexOf(argName);
|
|
36
|
-
return argIndex > 0 ? process.argv[argIndex + 1] : null;
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
const port = parseInt(getArgValue('--port'), 10) || DEFAULT_PORT;
|
|
40
|
-
const host = getArgValue('--host') || DEFAULT_HOST;
|
|
41
|
-
return await (0, _server.startServer)(port, host);
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
if (require.main === module) {
|
|
45
|
-
(0, _asyncbox.asyncify)(main);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
20
|
var _default = _driver.default;
|
|
49
21
|
exports.default = _default;require('source-map-support').install();
|
|
50
22
|
|
|
51
23
|
|
|
52
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJuYW1lcyI6WyJTYWZhcmlEcml2ZXIiXSwic291cmNlUm9vdCI6Ii4uIiwic291cmNlcyI6WyJpbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgU2FmYXJpRHJpdmVyIGZyb20gJy4vbGliL2RyaXZlcic7XG5cbmV4cG9ydCBkZWZhdWx0IFNhZmFyaURyaXZlcjtcbmV4cG9ydCB7IFNhZmFyaURyaXZlciB9O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztlQUVlQSxlIn0=
|
|
@@ -7,7 +7,7 @@ exports.default = exports.commands = void 0;
|
|
|
7
7
|
|
|
8
8
|
require("source-map-support/register");
|
|
9
9
|
|
|
10
|
-
var _support = require("
|
|
10
|
+
var _support = require("appium/support");
|
|
11
11
|
|
|
12
12
|
const commands = {};
|
|
13
13
|
exports.commands = commands;
|
|
@@ -25,4 +25,4 @@ var _default = commands;
|
|
|
25
25
|
exports.default = _default;require('source-map-support').install();
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL2NvbW1hbmRzL2ZpbmQuanMiLCJuYW1lcyI6WyJjb21tYW5kcyIsImZpbmRFbE9yRWxzIiwic3RyYXRlZ3kiLCJzZWxlY3RvciIsIm11bHQiLCJjb250ZXh0IiwidXRpbCIsInVud3JhcEVsZW1lbnQiLCJlbmRwb2ludCIsInNhZmFyaSIsInByb3h5IiwiY29tbWFuZCIsInVzaW5nIiwidmFsdWUiXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uIiwic291cmNlcyI6WyJsaWIvY29tbWFuZHMvZmluZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1dGlsIH0gZnJvbSAnYXBwaXVtL3N1cHBvcnQnO1xuXG5cbmNvbnN0IGNvbW1hbmRzID0ge307XG5cbi8vIFRoaXMgaXMgbmVlZGVkIHRvIG1ha2UgbG9va3VwIGJ5IGltYWdlIHdvcmtpbmdcbmNvbW1hbmRzLmZpbmRFbE9yRWxzID0gYXN5bmMgZnVuY3Rpb24gZmluZEVsT3JFbHMgKHN0cmF0ZWd5LCBzZWxlY3RvciwgbXVsdCwgY29udGV4dCkge1xuICBjb250ZXh0ID0gdXRpbC51bndyYXBFbGVtZW50KGNvbnRleHQpO1xuICBjb25zdCBlbmRwb2ludCA9IGAvZWxlbWVudCR7Y29udGV4dCA/IGAvJHtjb250ZXh0fS9lbGVtZW50YCA6ICcnfSR7bXVsdCA/ICdzJyA6ICcnfWA7XG5cbiAgcmV0dXJuIGF3YWl0IHRoaXMuc2FmYXJpLnByb3h5LmNvbW1hbmQoZW5kcG9pbnQsICdQT1NUJywge1xuICAgIHVzaW5nOiBzdHJhdGVneSxcbiAgICB2YWx1ZTogc2VsZWN0b3IsXG4gIH0pO1xufTtcblxuXG5leHBvcnQgeyBjb21tYW5kcyB9O1xuZXhwb3J0IGRlZmF1bHQgY29tbWFuZHM7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOztBQUdBLE1BQU1BLFFBQVEsR0FBRyxFQUFqQjs7O0FBR0FBLFFBQVEsQ0FBQ0MsV0FBVCxHQUF1QixlQUFlQSxXQUFmLENBQTRCQyxRQUE1QixFQUFzQ0MsUUFBdEMsRUFBZ0RDLElBQWhELEVBQXNEQyxPQUF0RCxFQUErRDtFQUNwRkEsT0FBTyxHQUFHQyxhQUFBLENBQUtDLGFBQUwsQ0FBbUJGLE9BQW5CLENBQVY7RUFDQSxNQUFNRyxRQUFRLEdBQUksV0FBVUgsT0FBTyxHQUFJLElBQUdBLE9BQVEsVUFBZixHQUEyQixFQUFHLEdBQUVELElBQUksR0FBRyxHQUFILEdBQVMsRUFBRyxFQUFuRjtFQUVBLE9BQU8sTUFBTSxLQUFLSyxNQUFMLENBQVlDLEtBQVosQ0FBa0JDLE9BQWxCLENBQTBCSCxRQUExQixFQUFvQyxNQUFwQyxFQUE0QztJQUN2REksS0FBSyxFQUFFVixRQURnRDtJQUV2RFcsS0FBSyxFQUFFVjtFQUZnRCxDQUE1QyxDQUFiO0FBSUQsQ0FSRDs7ZUFZZUgsUSJ9
|
|
@@ -11,7 +11,7 @@ require("source-map-support/register");
|
|
|
11
11
|
|
|
12
12
|
var _lodash = _interopRequireDefault(require("lodash"));
|
|
13
13
|
|
|
14
|
-
var _support = require("
|
|
14
|
+
var _support = require("appium/support");
|
|
15
15
|
|
|
16
16
|
var _asyncbox = require("asyncbox");
|
|
17
17
|
|
|
@@ -316,4 +316,4 @@ var _default = commands;
|
|
|
316
316
|
exports.default = _default;require('source-map-support').install();
|
|
317
317
|
|
|
318
318
|
|
|
319
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL2NvbW1hbmRzL3JlY29yZC1zY3JlZW4uanMiLCJuYW1lcyI6WyJjb21tYW5kcyIsIlNUQVJUVVBfSU5URVJWQUxfTVMiLCJTVEFSVFVQX1RJTUVPVVRfTVMiLCJERUZBVUxUX1RJTUVfTElNSVRfTVMiLCJQUk9DRVNTX1NIVVRET1dOX1RJTUVPVVRfTVMiLCJERUZBVUxUX0VYVCIsInVwbG9hZFJlY29yZGVkTWVkaWEiLCJsb2NhbEZpbGUiLCJyZW1vdGVQYXRoIiwidXBsb2FkT3B0aW9ucyIsIl8iLCJpc0VtcHR5IiwidXRpbCIsInRvSW5NZW1vcnlCYXNlNjQiLCJ0b1N0cmluZyIsInVzZXIiLCJwYXNzIiwibWV0aG9kIiwiaGVhZGVycyIsImZpbGVGaWVsZE5hbWUiLCJmb3JtRmllbGRzIiwib3B0aW9ucyIsImF1dGgiLCJuZXQiLCJ1cGxvYWRGaWxlIiwiVklERU9fRklMRVMiLCJTZXQiLCJwcm9jZXNzIiwib24iLCJ2aWRlb0ZpbGUiLCJmcyIsInJpbXJhZlN5bmMiLCJpZ24iLCJTY3JlZW5SZWNvcmRlciIsImNvbnN0cnVjdG9yIiwidWRpZCIsInZpZGVvUGF0aCIsImxvZyIsIm9wdHMiLCJfcHJvY2VzcyIsIl91ZGlkIiwiX3ZpZGVvUGF0aCIsIl9jb2RlYyIsImNvZGVjIiwiX2Rpc3BsYXkiLCJkaXNwbGF5IiwiX21hc2siLCJtYXNrIiwiX3RpbWVMaW1pdE1zIiwidGltZUxpbWl0IiwiX3RpbWVyIiwiZ2V0VmlkZW9QYXRoIiwiZXhpc3RzIiwiYWRkIiwiaXNSdW5uaW5nIiwiX2VuZm9yY2VUZXJtaW5hdGlvbiIsImRlYnVnIiwic3RvcCIsInJpbXJhZiIsImRlbGV0ZSIsInN0YXJ0IiwiYXJncyIsInB1c2giLCJTaW1jdGwiLCJleGVjIiwiYXN5bmNocm9ub3VzIiwicXVvdGUiLCJzdGRvdXQiLCJzdGRlcnIiLCJsaW5lIiwidHJpbSIsInN1YnN0cmluZyIsIm9uY2UiLCJjb2RlIiwic2lnbmFsIiwid2FybiIsIkVycm9yIiwid2FpdE1zIiwiaW50ZXJ2YWxNcyIsImUiLCJlcnJvckFuZFRocm93Iiwic2V0VGltZW91dCIsImVycm9yIiwiaW5mbyIsImZvcmNlIiwiY2xlYXJUaW1lb3V0IiwiZXh0cmFjdFNpbXVsYXRvclVkaWQiLCJjYXBzIiwiYWxsRGV2aWNlcyIsImZsYXRNYXAiLCJ2YWx1ZXMiLCJnZXREZXZpY2VzIiwibmFtZSIsInN0YXRlIiwic2RrIiwidG9Mb3dlciIsInN0YXJ0UmVjb3JkaW5nU2NyZWVuIiwiZm9yY2VSZXN0YXJ0IiwiX3NjcmVlblJlY29yZGVyIiwidGVtcERpciIsInBhdGgiLCJwcmVmaXgiLCJ1dWlkVjQiLCJzdWZmaXgiLCJwYXJzZUludCIsInN0b3BSZWNvcmRpbmdTY3JlZW4iLCJzaXplIiwic3RhdCIsInRvUmVhZGFibGVTaXplU3RyaW5nIl0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLiIsInNvdXJjZXMiOlsibGliL2NvbW1hbmRzL3JlY29yZC1zY3JlZW4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IHV0aWwsIGZzLCBuZXQsIHRlbXBEaXIgfSBmcm9tICdAYXBwaXVtL3N1cHBvcnQnO1xuaW1wb3J0IHsgd2FpdEZvckNvbmRpdGlvbiB9IGZyb20gJ2FzeW5jYm94JztcbmltcG9ydCBTaW1jdGwgZnJvbSAnbm9kZS1zaW1jdGwnO1xuXG5cbmNvbnN0IGNvbW1hbmRzID0ge307XG5cbmNvbnN0IFNUQVJUVVBfSU5URVJWQUxfTVMgPSAzMDA7XG5jb25zdCBTVEFSVFVQX1RJTUVPVVRfTVMgPSAxMCAqIDEwMDA7XG5jb25zdCBERUZBVUxUX1RJTUVfTElNSVRfTVMgPSA2MCAqIDEwICogMTAwMDsgLy8gMTAgbWludXRlc1xuY29uc3QgUFJPQ0VTU19TSFVURE9XTl9USU1FT1VUX01TID0gMTAgKiAxMDAwO1xuY29uc3QgREVGQVVMVF9FWFQgPSAnLm1wNCc7XG5cblxuYXN5bmMgZnVuY3Rpb24gdXBsb2FkUmVjb3JkZWRNZWRpYSAobG9jYWxGaWxlLCByZW1vdGVQYXRoID0gbnVsbCwgdXBsb2FkT3B0aW9ucyA9IHt9KSB7XG4gIGlmIChfLmlzRW1wdHkocmVtb3RlUGF0aCkpIHtcbiAgICByZXR1cm4gKGF3YWl0IHV0aWwudG9Jbk1lbW9yeUJhc2U2NChsb2NhbEZpbGUpKS50b1N0cmluZygpO1xuICB9XG5cbiAgY29uc3Qge3VzZXIsIHBhc3MsIG1ldGhvZCwgaGVhZGVycywgZmlsZUZpZWxkTmFtZSwgZm9ybUZpZWxkc30gPSB1cGxvYWRPcHRpb25zO1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgIG1ldGhvZDogbWV0aG9kIHx8ICdQVVQnLFxuICAgIGhlYWRlcnMsXG4gICAgZmlsZUZpZWxkTmFtZSxcbiAgICBmb3JtRmllbGRzLFxuICB9O1xuICBpZiAodXNlciAmJiBwYXNzKSB7XG4gICAgb3B0aW9ucy5hdXRoID0ge3VzZXIsIHBhc3N9O1xuICB9XG4gIGF3YWl0IG5ldC51cGxvYWRGaWxlKGxvY2FsRmlsZSwgcmVtb3RlUGF0aCwgb3B0aW9ucyk7XG4gIHJldHVybiAnJztcbn1cblxuY29uc3QgVklERU9fRklMRVMgPSBuZXcgU2V0KCk7XG5wcm9jZXNzLm9uKCdleGl0JywgKCkgPT4ge1xuICBmb3IgKGNvbnN0IHZpZGVvRmlsZSBvZiBWSURFT19GSUxFUykge1xuICAgIHRyeSB7XG4gICAgICBmcy5yaW1yYWZTeW5jKHZpZGVvRmlsZSk7XG4gICAgfSBjYXRjaCAoaWduKSB7fVxuICB9XG59KTtcblxuY2xhc3MgU2NyZWVuUmVjb3JkZXIge1xuICBjb25zdHJ1Y3RvciAodWRpZCwgdmlkZW9QYXRoLCBsb2csIG9wdHMgPSB7fSkge1xuICAgIHRoaXMubG9nID0gbG9nO1xuICAgIHRoaXMuX3Byb2Nlc3MgPSBudWxsO1xuICAgIHRoaXMuX3VkaWQgPSB1ZGlkO1xuICAgIHRoaXMuX3ZpZGVvUGF0aCA9IHZpZGVvUGF0aDtcbiAgICB0aGlzLl9jb2RlYyA9IG9wdHMuY29kZWM7XG4gICAgdGhpcy5fZGlzcGxheSA9IG9wdHMuZGlzcGxheTtcbiAgICB0aGlzLl9tYXNrID0gb3B0cy5tYXNrO1xuICAgIHRoaXMuX3RpbWVMaW1pdE1zID0gb3B0cy50aW1lTGltaXQgPiAwID8gb3B0cy50aW1lTGltaXQgKiAxMDAwIDogREVGQVVMVF9USU1FX0xJTUlUX01TO1xuICAgIHRoaXMuX3RpbWVyID0gbnVsbDtcbiAgfVxuXG4gIGFzeW5jIGdldFZpZGVvUGF0aCAoKSB7XG4gICAgaWYgKGF3YWl0IGZzLmV4aXN0cyh0aGlzLl92aWRlb1BhdGgpKSB7XG4gICAgICBWSURFT19GSUxFUy5hZGQodGhpcy5fdmlkZW9QYXRoKTtcbiAgICAgIHJldHVybiB0aGlzLl92aWRlb1BhdGg7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldCBpc1J1bm5pbmcgKCkge1xuICAgIHJldHVybiAhISh0aGlzLl9wcm9jZXNzPy5pc1J1bm5pbmcpO1xuICB9XG5cbiAgYXN5bmMgX2VuZm9yY2VUZXJtaW5hdGlvbiAoKSB7XG4gICAgaWYgKHRoaXMuaXNSdW5uaW5nKSB7XG4gICAgICB0aGlzLmxvZy5kZWJ1ZygnRm9yY2Utc3RvcHBpbmcgdGhlIGN1cnJlbnRseSBydW5uaW5nIHZpZGVvIHJlY29yZGluZycpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgdGhpcy5fcHJvY2Vzcy5zdG9wKCdTSUdLSUxMJyk7XG4gICAgICB9IGNhdGNoIChpZ24pIHt9XG4gICAgfVxuICAgIHRoaXMuX3Byb2Nlc3MgPSBudWxsO1xuICAgIGNvbnN0IHZpZGVvUGF0aCA9IGF3YWl0IHRoaXMuZ2V0VmlkZW9QYXRoKCk7XG4gICAgaWYgKHZpZGVvUGF0aCkge1xuICAgICAgYXdhaXQgZnMucmltcmFmKHZpZGVvUGF0aCk7XG4gICAgICBWSURFT19GSUxFUy5kZWxldGUodmlkZW9QYXRoKTtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgYXN5bmMgc3RhcnQgKCkge1xuICAgIGNvbnN0IGFyZ3MgPSBbXG4gICAgICB0aGlzLl91ZGlkLCAncmVjb3JkVmlkZW8nXG4gICAgXTtcbiAgICBpZiAodGhpcy5fZGlzcGxheSkge1xuICAgICAgYXJncy5wdXNoKCctLWRpc3BsYXknLCB0aGlzLl9kaXNwbGF5KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2NvZGVjKSB7XG4gICAgICBhcmdzLnB1c2goJy0tY29kZWMnLCB0aGlzLl9jb2RlYyk7XG4gICAgfVxuICAgIGlmICh0aGlzLl9tYXNrKSB7XG4gICAgICBhcmdzLnB1c2goJy0tbWFzaycsIHRoaXMuX21hc2spO1xuICAgIH1cbiAgICBhcmdzLnB1c2goJy0tZm9yY2UnLCB0aGlzLl92aWRlb1BhdGgpO1xuICAgIHRoaXMuX3Byb2Nlc3MgPSBhd2FpdCBuZXcgU2ltY3RsKCkuZXhlYygnaW8nLCB7XG4gICAgICBhcmdzLFxuICAgICAgYXN5bmNocm9ub3VzOiB0cnVlLFxuICAgIH0pO1xuICAgIHRoaXMubG9nLmRlYnVnKGBTdGFydGluZyB2aWRlbyByZWNvcmRpbmcgd2l0aCBhcmd1bWVudHM6ICR7dXRpbC5xdW90ZShhcmdzKX1gKTtcbiAgICB0aGlzLl9wcm9jZXNzLm9uKCdvdXRwdXQnLCAoc3Rkb3V0LCBzdGRlcnIpID0+IHtcbiAgICAgIGNvbnN0IGxpbmUgPSBfLnRyaW0oc3Rkb3V0IHx8IHN0ZGVycik7XG4gICAgICBpZiAobGluZSkge1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZyhgW3JlY29yZFZpZGVvQCR7dGhpcy5fdWRpZC5zdWJzdHJpbmcoMCwgOCl9XSAke2xpbmV9YCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5fcHJvY2Vzcy5vbmNlKCdleGl0JywgYXN5bmMgKGNvZGUsIHNpZ25hbCkgPT4ge1xuICAgICAgdGhpcy5fcHJvY2VzcyA9IG51bGw7XG4gICAgICBpZiAoY29kZSA9PT0gMCkge1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZygnU2NyZWVuIHJlY29yZGluZyBleGl0ZWQgd2l0aG91dCBlcnJvcnMnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IHRoaXMuX2VuZm9yY2VUZXJtaW5hdGlvbigpO1xuICAgICAgICB0aGlzLmxvZy53YXJuKGBTY3JlZW4gcmVjb3JkaW5nIGV4aXRlZCB3aXRoIGVycm9yIGNvZGUgJHtjb2RlfSwgc2lnbmFsICR7c2lnbmFsfWApO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGF3YWl0IHRoaXMuX3Byb2Nlc3Muc3RhcnQoMCk7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHdhaXRGb3JDb25kaXRpb24oYXN5bmMgKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuaXNSdW5uaW5nKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICEhKGF3YWl0IHRoaXMuZ2V0VmlkZW9QYXRoKCkpO1xuICAgICAgfSwge1xuICAgICAgICB3YWl0TXM6IFNUQVJUVVBfVElNRU9VVF9NUyxcbiAgICAgICAgaW50ZXJ2YWxNczogU1RBUlRVUF9JTlRFUlZBTF9NUyxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGF3YWl0IHRoaXMuX2VuZm9yY2VUZXJtaW5hdGlvbigpO1xuICAgICAgdGhpcy5sb2cuZXJyb3JBbmRUaHJvdyhgVGhlIGV4cGVjdGVkIHNjcmVlbiByZWNvcmQgZmlsZSAnJHt0aGlzLl92aWRlb1BhdGh9JyBkb2VzIG5vdCBleGlzdCBhZnRlciAke1NUQVJUVVBfVElNRU9VVF9NU31tcy4gYCArXG4gICAgICAgIGBDaGVjayB0aGUgc2VydmVyIGxvZyBmb3IgbW9yZSBkZXRhaWxzYCk7XG4gICAgfVxuICAgIHRoaXMuX3RpbWVyID0gc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICBpZiAodGhpcy5pc1J1bm5pbmcpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBhd2FpdCB0aGlzLnN0b3AoKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIHRoaXMubG9nLmVycm9yKGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSwgdGhpcy5fdGltZUxpbWl0TXMpO1xuICAgIHRoaXMubG9nLmluZm8oYFRoZSB2aWRlbyByZWNvcmRpbmcgaGFzIHN0YXJ0ZWQuIFdpbGwgdGltZW91dCBpbiAke3RoaXMuX3RpbWVMaW1pdE1zfW1zYCk7XG4gIH1cblxuICBhc3luYyBzdG9wIChmb3JjZSA9IGZhbHNlKSB7XG4gICAgaWYgKHRoaXMuX3RpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fdGltZXIpO1xuICAgICAgdGhpcy5fdGltZXIgPSBudWxsO1xuICAgIH1cblxuICAgIGlmIChmb3JjZSkge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuX2VuZm9yY2VUZXJtaW5hdGlvbigpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5pc1J1bm5pbmcpIHtcbiAgICAgIHRoaXMubG9nLmRlYnVnKCdTY3JlZW4gcmVjb3JkaW5nIGlzIG5vdCBydW5uaW5nLiBSZXR1cm5pbmcgdGhlIHJlY2VudGx5IHJlY29yZGVkIHZpZGVvJyk7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5nZXRWaWRlb1BhdGgoKTtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5fcHJvY2Vzcy5zdG9wKCdTSUdJTlQnLCBQUk9DRVNTX1NIVVRET1dOX1RJTUVPVVRfTVMpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGF3YWl0IHRoaXMuX2VuZm9yY2VUZXJtaW5hdGlvbigpO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBTY3JlZW4gcmVjb3JkaW5nIGhhcyBmYWlsZWQgdG8gc3RvcCBhZnRlciAke1BST0NFU1NfU0hVVERPV05fVElNRU9VVF9NU31tc2ApO1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmdldFZpZGVvUGF0aCgpO1xuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGV4dHJhY3RTaW11bGF0b3JVZGlkIChjYXBzKSB7XG4gIGlmIChjYXBzWydzYWZhcmk6dXNlU2ltdWxhdG9yJ10gPT09IGZhbHNlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBhbGxEZXZpY2VzID0gXy5mbGF0TWFwKF8udmFsdWVzKGF3YWl0IG5ldyBTaW1jdGwoKS5nZXREZXZpY2VzKG51bGwsICdpT1MnKSkpO1xuICBmb3IgKGNvbnN0IHtuYW1lLCB1ZGlkLCBzdGF0ZSwgc2RrfSBvZiBhbGxEZXZpY2VzKSB7XG4gICAgaWYgKHN0YXRlICE9PSAnQm9vdGVkJykge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgaWYgKF8udG9Mb3dlcihjYXBzWydzYWZhcmk6ZGV2aWNlVURJRCddKSA9PT0gXy50b0xvd2VyKHVkaWQpKSB7XG4gICAgICByZXR1cm4gdWRpZDtcbiAgICB9XG4gICAgaWYgKF8udG9Mb3dlcihjYXBzWydzYWZhcmk6ZGV2aWNlTmFtZSddKSA9PT0gXy50b0xvd2VyKG5hbWUpICYmXG4gICAgICAoY2Fwc1snc2FmYXJpOnBsYXRmb3JtVmVyc2lvbiddICYmIGNhcHNbJ3NhZmFyaTpwbGF0Zm9ybVZlcnNpb24nXSA9PT0gc2RrXG4gICAgICAgIHx8ICFjYXBzWydzYWZhcmk6cGxhdGZvcm1WZXJzaW9uJ10pKSB7XG4gICAgICByZXR1cm4gdWRpZDtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cblxuXG4vKipcbiAqIEB0eXBlZGVmIHtPYmplY3R9IFN0YXJ0UmVjb3JkaW5nT3B0aW9uc1xuICpcbiAqIEBwcm9wZXJ0eSB7P3N0cmluZ30gY29kZWMgW2hldmNdIC0gU3BlY2lmaWVzIHRoZSBjb2RlYyB0eXBlOiBcImgyNjRcIiBvciBcImhldmNcIlxuICogQHByb3BlcnR5IHs/c3RyaW5nfSBkaXNwbGF5IFtpbnRlcm5hbF0gLSBTdXBwb3J0cyBcImludGVybmFsXCIgb3IgXCJleHRlcm5hbFwiLiBEZWZhdWx0IGlzIFwiaW50ZXJuYWxcIlxuICogQHByb3BlcnR5IHs/c3RyaW5nfSBtYXNrIC0gRm9yIG5vbi1yZWN0YW5ndWxhciBkaXNwbGF5cywgaGFuZGxlIHRoZSBtYXNrIGJ5IHBvbGljeTpcbiAqIC0gaWdub3JlZDogVGhlIG1hc2sgaXMgaWdub3JlZCBhbmQgdGhlIHVubWFza2VkIGZyYW1lYnVmZmVyIGlzIHNhdmVkLlxuICogLSBhbHBoYTogTm90IHN1cHBvcnRlZCwgYnV0IHJldGFpbmVkIGZvciBjb21wYXRpYmlsaXR5OyB0aGUgbWFzayBpcyByZW5kZXJlZCBibGFjay5cbiAqIC0gYmxhY2s6IFRoZSBtYXNrIGlzIHJlbmRlcmVkIGJsYWNrLlxuICogQHByb3BlcnR5IHtzdHJpbmd8bnVtYmVyfSB0aW1lTGltaXQgWzYwMF0gLSBUaGUgbWF4aW11bSByZWNvcmRpbmcgdGltZSwgaW4gc2Vjb25kcy4gVGhlIGRlZmF1bHRcbiAqIHZhbHVlIGlzIDYwMCBzZWNvbmRzICgxMCBtaW51dGVzKS5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gZm9yY2VSZXN0YXJ0IFt0cnVlXSAtIFdoZXRoZXIgdG8gaWdub3JlIHRoZSBjYWxsIGlmIGEgc2NyZWVuIHJlY29yZGluZyBpcyBjdXJyZW50bHkgcnVubmluZ1xuICogKGBmYWxzZWApIG9yIHRvIHN0YXJ0IGEgbmV3IHJlY29yZGluZyBpbW1lZGlhdGVseSBhbmQgdGVybWluYXRlIHRoZSBleGlzdGluZyBvbmUgaWYgcnVubmluZyAoYHRydWVgKS5cbiAqL1xuXG4vKipcbiAqIFJlY29yZCB0aGUgU2ltdWxhdG9yJ3MgZGlzcGxheSBpbiBiYWNrZ3JvdW5kIHdoaWxlIHRoZSBhdXRvbWF0ZWQgdGVzdCBpcyBydW5uaW5nLlxuICogVGhpcyBtZXRob2QgdXNlcyBgeGNydW4gc2ltY3RsIGlvIHJlY29yZFZpZGVvYCBoZWxwZXIgdW5kZXIgdGhlIGhvb2QuXG4gKiBDaGVjayB0aGUgb3V0cHV0IG9mIGB4Y3J1biBzaW1jdGwgaW9gIGNvbW1hbmQgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBAcGFyYW0gez9TdGFydFJlY29yZGluZ09wdGlvbnN9IG9wdGlvbnMgLSBUaGUgYXZhaWxhYmxlIG9wdGlvbnMuXG4gKiBAdGhyb3dzIHtFcnJvcn0gSWYgc2NyZWVuIHJlY29yZGluZyBoYXMgZmFpbGVkIHRvIHN0YXJ0IG9yIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIHRoZSBkZXN0aW5hdGlvbiBkZXZpY2UuXG4gKi9cbmNvbW1hbmRzLnN0YXJ0UmVjb3JkaW5nU2NyZWVuID0gYXN5bmMgZnVuY3Rpb24gc3RhcnRSZWNvcmRpbmdTY3JlZW4gKG9wdGlvbnMgPSB7fSkge1xuICBjb25zdCB7XG4gICAgdGltZUxpbWl0LFxuICAgIGNvZGVjLFxuICAgIGRpc3BsYXksXG4gICAgbWFzayxcbiAgICBmb3JjZVJlc3RhcnQgPSB0cnVlLFxuICB9ID0gb3B0aW9ucztcbiAgaWYgKHRoaXMuX3NjcmVlblJlY29yZGVyPy5pc1J1bm5pbmcpIHtcbiAgICB0aGlzLmxvZy5pbmZvKCdUaGUgc2NyZWVuIHJlY29yZGluZyBpcyBhbHJlYWR5IHJ1bm5pbmcnKTtcbiAgICBpZiAoIWZvcmNlUmVzdGFydCkge1xuICAgICAgdGhpcy5sb2cuaW5mbygnRG9pbmcgbm90aGluZycpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmxvZy5pbmZvKCdGb3JjaW5nIHRoZSBhY3RpdmUgc2NyZWVuIHJlY29yZGluZyB0byBzdG9wJyk7XG4gICAgYXdhaXQgdGhpcy5fc2NyZWVuUmVjb3JkZXIuc3RvcCh0cnVlKTtcbiAgfVxuICB0aGlzLl9zY3JlZW5SZWNvcmRlciA9IG51bGw7XG5cbiAgY29uc3QgdWRpZCA9IGF3YWl0IGV4dHJhY3RTaW11bGF0b3JVZGlkKHRoaXMuY2Fwcyk7XG4gIGlmICghdWRpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGRldGVybWluZSBTaW11bGF0b3IgVURJRCB0byByZWNvcmQgdGhlIHZpZGVvIGZyb20uICcgK1xuICAgICAgJ0RvdWJsZSBjaGVjayB5b3VyIHNlc3Npb24gY2FwYWJpbGl0aWVzJyk7XG4gIH1cblxuICBjb25zdCB2aWRlb1BhdGggPSBhd2FpdCB0ZW1wRGlyLnBhdGgoe1xuICAgIHByZWZpeDogdXRpbC51dWlkVjQoKS5zdWJzdHJpbmcoMCwgOCksXG4gICAgc3VmZml4OiBERUZBVUxUX0VYVCxcbiAgfSk7XG4gIHRoaXMuX3NjcmVlblJlY29yZGVyID0gbmV3IFNjcmVlblJlY29yZGVyKHVkaWQsIHZpZGVvUGF0aCwgdGhpcy5sb2csIHtcbiAgICB0aW1lTGltaXQ6IHBhcnNlSW50KHRpbWVMaW1pdCwgMTApLFxuICAgIGNvZGVjLFxuICAgIGRpc3BsYXksXG4gICAgbWFzayxcbiAgfSk7XG4gIHRyeSB7XG4gICAgYXdhaXQgdGhpcy5fc2NyZWVuUmVjb3JkZXIuc3RhcnQoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHRoaXMuX3NjcmVlblJlY29yZGVyID0gbnVsbDtcbiAgICB0aHJvdyBlO1xuICB9XG59O1xuXG4vKipcbiAqIEB0eXBlZGVmIHtPYmplY3R9IFN0b3BSZWNvcmRpbmdPcHRpb25zXG4gKlxuICogQHByb3BlcnR5IHs/c3RyaW5nfSByZW1vdGVQYXRoIC0gVGhlIHBhdGggdG8gdGhlIHJlbW90ZSBsb2NhdGlvbiwgd2hlcmUgdGhlIHJlc3VsdGluZyB2aWRlbyBzaG91bGQgYmUgdXBsb2FkZWQuXG4gKiBUaGUgZm9sbG93aW5nIHByb3RvY29scyBhcmUgc3VwcG9ydGVkOiBodHRwL2h0dHBzLCBmdHAuXG4gKiBOdWxsIG9yIGVtcHR5IHN0cmluZyB2YWx1ZSAodGhlIGRlZmF1bHQgc2V0dGluZykgbWVhbnMgdGhlIGNvbnRlbnQgb2YgcmVzdWx0aW5nXG4gKiBmaWxlIHNob3VsZCBiZSBlbmNvZGVkIGFzIEJhc2U2NCBhbmQgcGFzc2VkIGFzIHRoZSBlbmRwb2ludCByZXNwb25zZSB2YWx1ZS5cbiAqIEFuIGV4Y2VwdGlvbiB3aWxsIGJlIHRocm93biBpZiB0aGUgZ2VuZXJhdGVkIG1lZGlhIGZpbGUgaXMgdG9vIGJpZyB0b1xuICogZml0IGludG8gdGhlIGF2YWlsYWJsZSBwcm9jZXNzIG1lbW9yeS5cbiAqIEBwcm9wZXJ0eSB7P3N0cmluZ30gdXNlciAtIFRoZSBuYW1lIG9mIHRoZSB1c2VyIGZvciB0aGUgcmVtb3RlIGF1dGhlbnRpY2F0aW9uLlxuICogQHByb3BlcnR5IHs/c3RyaW5nfSBwYXNzIC0gVGhlIHBhc3N3b3JkIGZvciB0aGUgcmVtb3RlIGF1dGhlbnRpY2F0aW9uLlxuICogQHByb3BlcnR5IHs/c3RyaW5nfSBtZXRob2QgLSBUaGUgaHR0cCBtdWx0aXBhcnQgdXBsb2FkIG1ldGhvZCBuYW1lLiBUaGUgJ1BVVCcgb25lIGlzIHVzZWQgYnkgZGVmYXVsdC5cbiAqIEBwcm9wZXJ0eSB7P09iamVjdH0gaGVhZGVycyAtIEFkZGl0aW9uYWwgaGVhZGVycyBtYXBwaW5nIGZvciBtdWx0aXBhcnQgaHR0cChzKSB1cGxvYWRzXG4gKiBAcHJvcGVydHkgez9zdHJpbmd9IGZpbGVGaWVsZE5hbWUgW2ZpbGVdIC0gVGhlIG5hbWUgb2YgdGhlIGZvcm0gZmllbGQsIHdoZXJlIHRoZSBmaWxlIGNvbnRlbnQgQkxPQiBzaG91bGQgYmUgc3RvcmVkIGZvclxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0dHAocykgdXBsb2Fkc1xuICogQHByb3BlcnR5IHs/T2JqZWN0fEFycmF5PFBhaXI+fSBmb3JtRmllbGRzIC0gQWRkaXRpb25hbCBmb3JtIGZpZWxkcyBmb3IgbXVsdGlwYXJ0IGh0dHAocykgdXBsb2Fkc1xuICovXG5cbi8qKlxuICogU3RvcCByZWNvcmRpbmcgdGhlIHNjcmVlbi5cbiAqIElmIG5vIHNjcmVlbiByZWNvcmRpbmcgaGFzIGJlZW4gc3RhcnRlZCBiZWZvcmUgdGhlbiB0aGUgbWV0aG9kIHJldHVybnMgYW4gZW1wdHkgc3RyaW5nLlxuICpcbiAqIEBwYXJhbSB7P1N0b3BSZWNvcmRpbmdPcHRpb25zfSBvcHRpb25zIC0gVGhlIGF2YWlsYWJsZSBvcHRpb25zLlxuICogQHJldHVybnMge3N0cmluZ30gQmFzZTY0LWVuY29kZWQgY29udGVudCBvZiB0aGUgcmVjb3JkZWQgbWVkaWEgZmlsZSBpZiAncmVtb3RlUGF0aCdcbiAqIHBhcmFtZXRlciBpcyBmYWxzeSBvciBhbiBlbXB0eSBzdHJpbmcuXG4gKiBAdGhyb3dzIHtFcnJvcn0gSWYgdGhlcmUgd2FzIGFuIGVycm9yIHdoaWxlIGdldHRpbmcgdGhlIG5hbWUgb2YgYSBtZWRpYSBmaWxlXG4gKiBvciB0aGUgZmlsZSBjb250ZW50IGNhbm5vdCBiZSB1cGxvYWRlZCB0byB0aGUgcmVtb3RlIGxvY2F0aW9uXG4gKiBvciBzY3JlZW4gcmVjb3JkaW5nIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhlIGRldmljZSB1bmRlciB0ZXN0LlxuICovXG5jb21tYW5kcy5zdG9wUmVjb3JkaW5nU2NyZWVuID0gYXN5bmMgZnVuY3Rpb24gc3RvcFJlY29yZGluZ1NjcmVlbiAob3B0aW9ucyA9IHt9KSB7XG4gIGlmICghdGhpcy5fc2NyZWVuUmVjb3JkZXIpIHtcbiAgICB0aGlzLmxvZy5pbmZvKCdObyBzY3JlZW4gcmVjb3JkaW5nIGhhcyBiZWVuIHN0YXJ0ZWQuIERvaW5nIG5vdGhpbmcnKTtcbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICB0aGlzLmxvZy5kZWJ1ZygnUmV0cmlldmluZyB0aGUgcmVzdWx0aW5nIHZpZGVvIGRhdGEnKTtcbiAgY29uc3QgdmlkZW9QYXRoID0gYXdhaXQgdGhpcy5fc2NyZWVuUmVjb3JkZXIuc3RvcCgpO1xuICBpZiAoIXZpZGVvUGF0aCkge1xuICAgIHRoaXMubG9nLmluZm8oJ05vIHZpZGVvIGRhdGEgaXMgZm91bmQuIFJldHVybmluZyBhbiBlbXB0eSBzdHJpbmcnKTtcbiAgICByZXR1cm4gJyc7XG4gIH1cbiAgaWYgKF8uaXNFbXB0eShvcHRpb25zLnJlbW90ZVBhdGgpKSB7XG4gICAgY29uc3Qge3NpemV9ID0gYXdhaXQgZnMuc3RhdCh2aWRlb1BhdGgpO1xuICAgIHRoaXMubG9nLmRlYnVnKGBUaGUgc2l6ZSBvZiB0aGUgcmVzdWx0aW5nIHNjcmVlbiByZWNvcmRpbmcgaXMgJHt1dGlsLnRvUmVhZGFibGVTaXplU3RyaW5nKHNpemUpfWApO1xuICB9XG4gIHJldHVybiBhd2FpdCB1cGxvYWRSZWNvcmRlZE1lZGlhKHZpZGVvUGF0aCwgb3B0aW9ucy5yZW1vdGVQYXRoLCBvcHRpb25zKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGNvbW1hbmRzO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUdBLE1BQU1BLFFBQVEsR0FBRyxFQUFqQjtBQUVBLE1BQU1DLG1CQUFtQixHQUFHLEdBQTVCO0FBQ0EsTUFBTUMsa0JBQWtCLEdBQUcsS0FBSyxJQUFoQztBQUNBLE1BQU1DLHFCQUFxQixHQUFHLEtBQUssRUFBTCxHQUFVLElBQXhDO0FBQ0EsTUFBTUMsMkJBQTJCLEdBQUcsS0FBSyxJQUF6QztBQUNBLE1BQU1DLFdBQVcsR0FBRyxNQUFwQjs7QUFHQSxlQUFlQyxtQkFBZixDQUFvQ0MsU0FBcEMsRUFBK0NDLFVBQVUsR0FBRyxJQUE1RCxFQUFrRUMsYUFBYSxHQUFHLEVBQWxGLEVBQXNGO0VBQ3BGLElBQUlDLGdCQUFFQyxPQUFGLENBQVVILFVBQVYsQ0FBSixFQUEyQjtJQUN6QixPQUFPLENBQUMsTUFBTUksY0FBS0MsZ0JBQUwsQ0FBc0JOLFNBQXRCLENBQVAsRUFBeUNPLFFBQXpDLEVBQVA7RUFDRDs7RUFFRCxNQUFNO0lBQUNDLElBQUQ7SUFBT0MsSUFBUDtJQUFhQyxNQUFiO0lBQXFCQyxPQUFyQjtJQUE4QkMsYUFBOUI7SUFBNkNDO0VBQTdDLElBQTJEWCxhQUFqRTtFQUNBLE1BQU1ZLE9BQU8sR0FBRztJQUNkSixNQUFNLEVBQUVBLE1BQU0sSUFBSSxLQURKO0lBRWRDLE9BRmM7SUFHZEMsYUFIYztJQUlkQztFQUpjLENBQWhCOztFQU1BLElBQUlMLElBQUksSUFBSUMsSUFBWixFQUFrQjtJQUNoQkssT0FBTyxDQUFDQyxJQUFSLEdBQWU7TUFBQ1AsSUFBRDtNQUFPQztJQUFQLENBQWY7RUFDRDs7RUFDRCxNQUFNTyxhQUFJQyxVQUFKLENBQWVqQixTQUFmLEVBQTBCQyxVQUExQixFQUFzQ2EsT0FBdEMsQ0FBTjtF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
|
|
319
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL2NvbW1hbmRzL3JlY29yZC1zY3JlZW4uanMiLCJuYW1lcyI6WyJjb21tYW5kcyIsIlNUQVJUVVBfSU5URVJWQUxfTVMiLCJTVEFSVFVQX1RJTUVPVVRfTVMiLCJERUZBVUxUX1RJTUVfTElNSVRfTVMiLCJQUk9DRVNTX1NIVVRET1dOX1RJTUVPVVRfTVMiLCJERUZBVUxUX0VYVCIsInVwbG9hZFJlY29yZGVkTWVkaWEiLCJsb2NhbEZpbGUiLCJyZW1vdGVQYXRoIiwidXBsb2FkT3B0aW9ucyIsIl8iLCJpc0VtcHR5IiwidXRpbCIsInRvSW5NZW1vcnlCYXNlNjQiLCJ0b1N0cmluZyIsInVzZXIiLCJwYXNzIiwibWV0aG9kIiwiaGVhZGVycyIsImZpbGVGaWVsZE5hbWUiLCJmb3JtRmllbGRzIiwib3B0aW9ucyIsImF1dGgiLCJuZXQiLCJ1cGxvYWRGaWxlIiwiVklERU9fRklMRVMiLCJTZXQiLCJwcm9jZXNzIiwib24iLCJ2aWRlb0ZpbGUiLCJmcyIsInJpbXJhZlN5bmMiLCJpZ24iLCJTY3JlZW5SZWNvcmRlciIsImNvbnN0cnVjdG9yIiwidWRpZCIsInZpZGVvUGF0aCIsImxvZyIsIm9wdHMiLCJfcHJvY2VzcyIsIl91ZGlkIiwiX3ZpZGVvUGF0aCIsIl9jb2RlYyIsImNvZGVjIiwiX2Rpc3BsYXkiLCJkaXNwbGF5IiwiX21hc2siLCJtYXNrIiwiX3RpbWVMaW1pdE1zIiwidGltZUxpbWl0IiwiX3RpbWVyIiwiZ2V0VmlkZW9QYXRoIiwiZXhpc3RzIiwiYWRkIiwiaXNSdW5uaW5nIiwiX2VuZm9yY2VUZXJtaW5hdGlvbiIsImRlYnVnIiwic3RvcCIsInJpbXJhZiIsImRlbGV0ZSIsInN0YXJ0IiwiYXJncyIsInB1c2giLCJTaW1jdGwiLCJleGVjIiwiYXN5bmNocm9ub3VzIiwicXVvdGUiLCJzdGRvdXQiLCJzdGRlcnIiLCJsaW5lIiwidHJpbSIsInN1YnN0cmluZyIsIm9uY2UiLCJjb2RlIiwic2lnbmFsIiwid2FybiIsIndhaXRGb3JDb25kaXRpb24iLCJFcnJvciIsIndhaXRNcyIsImludGVydmFsTXMiLCJlIiwiZXJyb3JBbmRUaHJvdyIsInNldFRpbWVvdXQiLCJlcnJvciIsImluZm8iLCJmb3JjZSIsImNsZWFyVGltZW91dCIsImV4dHJhY3RTaW11bGF0b3JVZGlkIiwiY2FwcyIsImFsbERldmljZXMiLCJmbGF0TWFwIiwidmFsdWVzIiwiZ2V0RGV2aWNlcyIsIm5hbWUiLCJzdGF0ZSIsInNkayIsInRvTG93ZXIiLCJzdGFydFJlY29yZGluZ1NjcmVlbiIsImZvcmNlUmVzdGFydCIsIl9zY3JlZW5SZWNvcmRlciIsInRlbXBEaXIiLCJwYXRoIiwicHJlZml4IiwidXVpZFY0Iiwic3VmZml4IiwicGFyc2VJbnQiLCJzdG9wUmVjb3JkaW5nU2NyZWVuIiwic2l6ZSIsInN0YXQiLCJ0b1JlYWRhYmxlU2l6ZVN0cmluZyJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4iLCJzb3VyY2VzIjpbImxpYi9jb21tYW5kcy9yZWNvcmQtc2NyZWVuLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyB1dGlsLCBmcywgbmV0LCB0ZW1wRGlyIH0gZnJvbSAnYXBwaXVtL3N1cHBvcnQnO1xuaW1wb3J0IHsgd2FpdEZvckNvbmRpdGlvbiB9IGZyb20gJ2FzeW5jYm94JztcbmltcG9ydCBTaW1jdGwgZnJvbSAnbm9kZS1zaW1jdGwnO1xuXG5cbmNvbnN0IGNvbW1hbmRzID0ge307XG5cbmNvbnN0IFNUQVJUVVBfSU5URVJWQUxfTVMgPSAzMDA7XG5jb25zdCBTVEFSVFVQX1RJTUVPVVRfTVMgPSAxMCAqIDEwMDA7XG5jb25zdCBERUZBVUxUX1RJTUVfTElNSVRfTVMgPSA2MCAqIDEwICogMTAwMDsgLy8gMTAgbWludXRlc1xuY29uc3QgUFJPQ0VTU19TSFVURE9XTl9USU1FT1VUX01TID0gMTAgKiAxMDAwO1xuY29uc3QgREVGQVVMVF9FWFQgPSAnLm1wNCc7XG5cblxuYXN5bmMgZnVuY3Rpb24gdXBsb2FkUmVjb3JkZWRNZWRpYSAobG9jYWxGaWxlLCByZW1vdGVQYXRoID0gbnVsbCwgdXBsb2FkT3B0aW9ucyA9IHt9KSB7XG4gIGlmIChfLmlzRW1wdHkocmVtb3RlUGF0aCkpIHtcbiAgICByZXR1cm4gKGF3YWl0IHV0aWwudG9Jbk1lbW9yeUJhc2U2NChsb2NhbEZpbGUpKS50b1N0cmluZygpO1xuICB9XG5cbiAgY29uc3Qge3VzZXIsIHBhc3MsIG1ldGhvZCwgaGVhZGVycywgZmlsZUZpZWxkTmFtZSwgZm9ybUZpZWxkc30gPSB1cGxvYWRPcHRpb25zO1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgIG1ldGhvZDogbWV0aG9kIHx8ICdQVVQnLFxuICAgIGhlYWRlcnMsXG4gICAgZmlsZUZpZWxkTmFtZSxcbiAgICBmb3JtRmllbGRzLFxuICB9O1xuICBpZiAodXNlciAmJiBwYXNzKSB7XG4gICAgb3B0aW9ucy5hdXRoID0ge3VzZXIsIHBhc3N9O1xuICB9XG4gIGF3YWl0IG5ldC51cGxvYWRGaWxlKGxvY2FsRmlsZSwgcmVtb3RlUGF0aCwgb3B0aW9ucyk7XG4gIHJldHVybiAnJztcbn1cblxuY29uc3QgVklERU9fRklMRVMgPSBuZXcgU2V0KCk7XG5wcm9jZXNzLm9uKCdleGl0JywgKCkgPT4ge1xuICBmb3IgKGNvbnN0IHZpZGVvRmlsZSBvZiBWSURFT19GSUxFUykge1xuICAgIHRyeSB7XG4gICAgICBmcy5yaW1yYWZTeW5jKHZpZGVvRmlsZSk7XG4gICAgfSBjYXRjaCAoaWduKSB7fVxuICB9XG59KTtcblxuY2xhc3MgU2NyZWVuUmVjb3JkZXIge1xuICBjb25zdHJ1Y3RvciAodWRpZCwgdmlkZW9QYXRoLCBsb2csIG9wdHMgPSB7fSkge1xuICAgIHRoaXMubG9nID0gbG9nO1xuICAgIHRoaXMuX3Byb2Nlc3MgPSBudWxsO1xuICAgIHRoaXMuX3VkaWQgPSB1ZGlkO1xuICAgIHRoaXMuX3ZpZGVvUGF0aCA9IHZpZGVvUGF0aDtcbiAgICB0aGlzLl9jb2RlYyA9IG9wdHMuY29kZWM7XG4gICAgdGhpcy5fZGlzcGxheSA9IG9wdHMuZGlzcGxheTtcbiAgICB0aGlzLl9tYXNrID0gb3B0cy5tYXNrO1xuICAgIHRoaXMuX3RpbWVMaW1pdE1zID0gb3B0cy50aW1lTGltaXQgPiAwID8gb3B0cy50aW1lTGltaXQgKiAxMDAwIDogREVGQVVMVF9USU1FX0xJTUlUX01TO1xuICAgIHRoaXMuX3RpbWVyID0gbnVsbDtcbiAgfVxuXG4gIGFzeW5jIGdldFZpZGVvUGF0aCAoKSB7XG4gICAgaWYgKGF3YWl0IGZzLmV4aXN0cyh0aGlzLl92aWRlb1BhdGgpKSB7XG4gICAgICBWSURFT19GSUxFUy5hZGQodGhpcy5fdmlkZW9QYXRoKTtcbiAgICAgIHJldHVybiB0aGlzLl92aWRlb1BhdGg7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldCBpc1J1bm5pbmcgKCkge1xuICAgIHJldHVybiAhISh0aGlzLl9wcm9jZXNzPy5pc1J1bm5pbmcpO1xuICB9XG5cbiAgYXN5bmMgX2VuZm9yY2VUZXJtaW5hdGlvbiAoKSB7XG4gICAgaWYgKHRoaXMuaXNSdW5uaW5nKSB7XG4gICAgICB0aGlzLmxvZy5kZWJ1ZygnRm9yY2Utc3RvcHBpbmcgdGhlIGN1cnJlbnRseSBydW5uaW5nIHZpZGVvIHJlY29yZGluZycpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgdGhpcy5fcHJvY2Vzcy5zdG9wKCdTSUdLSUxMJyk7XG4gICAgICB9IGNhdGNoIChpZ24pIHt9XG4gICAgfVxuICAgIHRoaXMuX3Byb2Nlc3MgPSBudWxsO1xuICAgIGNvbnN0IHZpZGVvUGF0aCA9IGF3YWl0IHRoaXMuZ2V0VmlkZW9QYXRoKCk7XG4gICAgaWYgKHZpZGVvUGF0aCkge1xuICAgICAgYXdhaXQgZnMucmltcmFmKHZpZGVvUGF0aCk7XG4gICAgICBWSURFT19GSUxFUy5kZWxldGUodmlkZW9QYXRoKTtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgYXN5bmMgc3RhcnQgKCkge1xuICAgIGNvbnN0IGFyZ3MgPSBbXG4gICAgICB0aGlzLl91ZGlkLCAncmVjb3JkVmlkZW8nXG4gICAgXTtcbiAgICBpZiAodGhpcy5fZGlzcGxheSkge1xuICAgICAgYXJncy5wdXNoKCctLWRpc3BsYXknLCB0aGlzLl9kaXNwbGF5KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2NvZGVjKSB7XG4gICAgICBhcmdzLnB1c2goJy0tY29kZWMnLCB0aGlzLl9jb2RlYyk7XG4gICAgfVxuICAgIGlmICh0aGlzLl9tYXNrKSB7XG4gICAgICBhcmdzLnB1c2goJy0tbWFzaycsIHRoaXMuX21hc2spO1xuICAgIH1cbiAgICBhcmdzLnB1c2goJy0tZm9yY2UnLCB0aGlzLl92aWRlb1BhdGgpO1xuICAgIHRoaXMuX3Byb2Nlc3MgPSBhd2FpdCBuZXcgU2ltY3RsKCkuZXhlYygnaW8nLCB7XG4gICAgICBhcmdzLFxuICAgICAgYXN5bmNocm9ub3VzOiB0cnVlLFxuICAgIH0pO1xuICAgIHRoaXMubG9nLmRlYnVnKGBTdGFydGluZyB2aWRlbyByZWNvcmRpbmcgd2l0aCBhcmd1bWVudHM6ICR7dXRpbC5xdW90ZShhcmdzKX1gKTtcbiAgICB0aGlzLl9wcm9jZXNzLm9uKCdvdXRwdXQnLCAoc3Rkb3V0LCBzdGRlcnIpID0+IHtcbiAgICAgIGNvbnN0IGxpbmUgPSBfLnRyaW0oc3Rkb3V0IHx8IHN0ZGVycik7XG4gICAgICBpZiAobGluZSkge1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZyhgW3JlY29yZFZpZGVvQCR7dGhpcy5fdWRpZC5zdWJzdHJpbmcoMCwgOCl9XSAke2xpbmV9YCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5fcHJvY2Vzcy5vbmNlKCdleGl0JywgYXN5bmMgKGNvZGUsIHNpZ25hbCkgPT4ge1xuICAgICAgdGhpcy5fcHJvY2VzcyA9IG51bGw7XG4gICAgICBpZiAoY29kZSA9PT0gMCkge1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZygnU2NyZWVuIHJlY29yZGluZyBleGl0ZWQgd2l0aG91dCBlcnJvcnMnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IHRoaXMuX2VuZm9yY2VUZXJtaW5hdGlvbigpO1xuICAgICAgICB0aGlzLmxvZy53YXJuKGBTY3JlZW4gcmVjb3JkaW5nIGV4aXRlZCB3aXRoIGVycm9yIGNvZGUgJHtjb2RlfSwgc2lnbmFsICR7c2lnbmFsfWApO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGF3YWl0IHRoaXMuX3Byb2Nlc3Muc3RhcnQoMCk7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHdhaXRGb3JDb25kaXRpb24oYXN5bmMgKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuaXNSdW5uaW5nKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICEhKGF3YWl0IHRoaXMuZ2V0VmlkZW9QYXRoKCkpO1xuICAgICAgfSwge1xuICAgICAgICB3YWl0TXM6IFNUQVJUVVBfVElNRU9VVF9NUyxcbiAgICAgICAgaW50ZXJ2YWxNczogU1RBUlRVUF9JTlRFUlZBTF9NUyxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGF3YWl0IHRoaXMuX2VuZm9yY2VUZXJtaW5hdGlvbigpO1xuICAgICAgdGhpcy5sb2cuZXJyb3JBbmRUaHJvdyhgVGhlIGV4cGVjdGVkIHNjcmVlbiByZWNvcmQgZmlsZSAnJHt0aGlzLl92aWRlb1BhdGh9JyBkb2VzIG5vdCBleGlzdCBhZnRlciAke1NUQVJUVVBfVElNRU9VVF9NU31tcy4gYCArXG4gICAgICAgIGBDaGVjayB0aGUgc2VydmVyIGxvZyBmb3IgbW9yZSBkZXRhaWxzYCk7XG4gICAgfVxuICAgIHRoaXMuX3RpbWVyID0gc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICBpZiAodGhpcy5pc1J1bm5pbmcpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBhd2FpdCB0aGlzLnN0b3AoKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIHRoaXMubG9nLmVycm9yKGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSwgdGhpcy5fdGltZUxpbWl0TXMpO1xuICAgIHRoaXMubG9nLmluZm8oYFRoZSB2aWRlbyByZWNvcmRpbmcgaGFzIHN0YXJ0ZWQuIFdpbGwgdGltZW91dCBpbiAke3RoaXMuX3RpbWVMaW1pdE1zfW1zYCk7XG4gIH1cblxuICBhc3luYyBzdG9wIChmb3JjZSA9IGZhbHNlKSB7XG4gICAgaWYgKHRoaXMuX3RpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fdGltZXIpO1xuICAgICAgdGhpcy5fdGltZXIgPSBudWxsO1xuICAgIH1cblxuICAgIGlmIChmb3JjZSkge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuX2VuZm9yY2VUZXJtaW5hdGlvbigpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5pc1J1bm5pbmcpIHtcbiAgICAgIHRoaXMubG9nLmRlYnVnKCdTY3JlZW4gcmVjb3JkaW5nIGlzIG5vdCBydW5uaW5nLiBSZXR1cm5pbmcgdGhlIHJlY2VudGx5IHJlY29yZGVkIHZpZGVvJyk7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5nZXRWaWRlb1BhdGgoKTtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5fcHJvY2Vzcy5zdG9wKCdTSUdJTlQnLCBQUk9DRVNTX1NIVVRET1dOX1RJTUVPVVRfTVMpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGF3YWl0IHRoaXMuX2VuZm9yY2VUZXJtaW5hdGlvbigpO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBTY3JlZW4gcmVjb3JkaW5nIGhhcyBmYWlsZWQgdG8gc3RvcCBhZnRlciAke1BST0NFU1NfU0hVVERPV05fVElNRU9VVF9NU31tc2ApO1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmdldFZpZGVvUGF0aCgpO1xuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGV4dHJhY3RTaW11bGF0b3JVZGlkIChjYXBzKSB7XG4gIGlmIChjYXBzWydzYWZhcmk6dXNlU2ltdWxhdG9yJ10gPT09IGZhbHNlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBhbGxEZXZpY2VzID0gXy5mbGF0TWFwKF8udmFsdWVzKGF3YWl0IG5ldyBTaW1jdGwoKS5nZXREZXZpY2VzKG51bGwsICdpT1MnKSkpO1xuICBmb3IgKGNvbnN0IHtuYW1lLCB1ZGlkLCBzdGF0ZSwgc2RrfSBvZiBhbGxEZXZpY2VzKSB7XG4gICAgaWYgKHN0YXRlICE9PSAnQm9vdGVkJykge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgaWYgKF8udG9Mb3dlcihjYXBzWydzYWZhcmk6ZGV2aWNlVURJRCddKSA9PT0gXy50b0xvd2VyKHVkaWQpKSB7XG4gICAgICByZXR1cm4gdWRpZDtcbiAgICB9XG4gICAgaWYgKF8udG9Mb3dlcihjYXBzWydzYWZhcmk6ZGV2aWNlTmFtZSddKSA9PT0gXy50b0xvd2VyKG5hbWUpICYmXG4gICAgICAoY2Fwc1snc2FmYXJpOnBsYXRmb3JtVmVyc2lvbiddICYmIGNhcHNbJ3NhZmFyaTpwbGF0Zm9ybVZlcnNpb24nXSA9PT0gc2RrXG4gICAgICAgIHx8ICFjYXBzWydzYWZhcmk6cGxhdGZvcm1WZXJzaW9uJ10pKSB7XG4gICAgICByZXR1cm4gdWRpZDtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cblxuXG4vKipcbiAqIEB0eXBlZGVmIHtPYmplY3R9IFN0YXJ0UmVjb3JkaW5nT3B0aW9uc1xuICpcbiAqIEBwcm9wZXJ0eSB7P3N0cmluZ30gY29kZWMgW2hldmNdIC0gU3BlY2lmaWVzIHRoZSBjb2RlYyB0eXBlOiBcImgyNjRcIiBvciBcImhldmNcIlxuICogQHByb3BlcnR5IHs/c3RyaW5nfSBkaXNwbGF5IFtpbnRlcm5hbF0gLSBTdXBwb3J0cyBcImludGVybmFsXCIgb3IgXCJleHRlcm5hbFwiLiBEZWZhdWx0IGlzIFwiaW50ZXJuYWxcIlxuICogQHByb3BlcnR5IHs/c3RyaW5nfSBtYXNrIC0gRm9yIG5vbi1yZWN0YW5ndWxhciBkaXNwbGF5cywgaGFuZGxlIHRoZSBtYXNrIGJ5IHBvbGljeTpcbiAqIC0gaWdub3JlZDogVGhlIG1hc2sgaXMgaWdub3JlZCBhbmQgdGhlIHVubWFza2VkIGZyYW1lYnVmZmVyIGlzIHNhdmVkLlxuICogLSBhbHBoYTogTm90IHN1cHBvcnRlZCwgYnV0IHJldGFpbmVkIGZvciBjb21wYXRpYmlsaXR5OyB0aGUgbWFzayBpcyByZW5kZXJlZCBibGFjay5cbiAqIC0gYmxhY2s6IFRoZSBtYXNrIGlzIHJlbmRlcmVkIGJsYWNrLlxuICogQHByb3BlcnR5IHtzdHJpbmd8bnVtYmVyfSB0aW1lTGltaXQgWzYwMF0gLSBUaGUgbWF4aW11bSByZWNvcmRpbmcgdGltZSwgaW4gc2Vjb25kcy4gVGhlIGRlZmF1bHRcbiAqIHZhbHVlIGlzIDYwMCBzZWNvbmRzICgxMCBtaW51dGVzKS5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gZm9yY2VSZXN0YXJ0IFt0cnVlXSAtIFdoZXRoZXIgdG8gaWdub3JlIHRoZSBjYWxsIGlmIGEgc2NyZWVuIHJlY29yZGluZyBpcyBjdXJyZW50bHkgcnVubmluZ1xuICogKGBmYWxzZWApIG9yIHRvIHN0YXJ0IGEgbmV3IHJlY29yZGluZyBpbW1lZGlhdGVseSBhbmQgdGVybWluYXRlIHRoZSBleGlzdGluZyBvbmUgaWYgcnVubmluZyAoYHRydWVgKS5cbiAqL1xuXG4vKipcbiAqIFJlY29yZCB0aGUgU2ltdWxhdG9yJ3MgZGlzcGxheSBpbiBiYWNrZ3JvdW5kIHdoaWxlIHRoZSBhdXRvbWF0ZWQgdGVzdCBpcyBydW5uaW5nLlxuICogVGhpcyBtZXRob2QgdXNlcyBgeGNydW4gc2ltY3RsIGlvIHJlY29yZFZpZGVvYCBoZWxwZXIgdW5kZXIgdGhlIGhvb2QuXG4gKiBDaGVjayB0aGUgb3V0cHV0IG9mIGB4Y3J1biBzaW1jdGwgaW9gIGNvbW1hbmQgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBAcGFyYW0gez9TdGFydFJlY29yZGluZ09wdGlvbnN9IG9wdGlvbnMgLSBUaGUgYXZhaWxhYmxlIG9wdGlvbnMuXG4gKiBAdGhyb3dzIHtFcnJvcn0gSWYgc2NyZWVuIHJlY29yZGluZyBoYXMgZmFpbGVkIHRvIHN0YXJ0IG9yIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIHRoZSBkZXN0aW5hdGlvbiBkZXZpY2UuXG4gKi9cbmNvbW1hbmRzLnN0YXJ0UmVjb3JkaW5nU2NyZWVuID0gYXN5bmMgZnVuY3Rpb24gc3RhcnRSZWNvcmRpbmdTY3JlZW4gKG9wdGlvbnMgPSB7fSkge1xuICBjb25zdCB7XG4gICAgdGltZUxpbWl0LFxuICAgIGNvZGVjLFxuICAgIGRpc3BsYXksXG4gICAgbWFzayxcbiAgICBmb3JjZVJlc3RhcnQgPSB0cnVlLFxuICB9ID0gb3B0aW9ucztcbiAgaWYgKHRoaXMuX3NjcmVlblJlY29yZGVyPy5pc1J1bm5pbmcpIHtcbiAgICB0aGlzLmxvZy5pbmZvKCdUaGUgc2NyZWVuIHJlY29yZGluZyBpcyBhbHJlYWR5IHJ1bm5pbmcnKTtcbiAgICBpZiAoIWZvcmNlUmVzdGFydCkge1xuICAgICAgdGhpcy5sb2cuaW5mbygnRG9pbmcgbm90aGluZycpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmxvZy5pbmZvKCdGb3JjaW5nIHRoZSBhY3RpdmUgc2NyZWVuIHJlY29yZGluZyB0byBzdG9wJyk7XG4gICAgYXdhaXQgdGhpcy5fc2NyZWVuUmVjb3JkZXIuc3RvcCh0cnVlKTtcbiAgfVxuICB0aGlzLl9zY3JlZW5SZWNvcmRlciA9IG51bGw7XG5cbiAgY29uc3QgdWRpZCA9IGF3YWl0IGV4dHJhY3RTaW11bGF0b3JVZGlkKHRoaXMuY2Fwcyk7XG4gIGlmICghdWRpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGRldGVybWluZSBTaW11bGF0b3IgVURJRCB0byByZWNvcmQgdGhlIHZpZGVvIGZyb20uICcgK1xuICAgICAgJ0RvdWJsZSBjaGVjayB5b3VyIHNlc3Npb24gY2FwYWJpbGl0aWVzJyk7XG4gIH1cblxuICBjb25zdCB2aWRlb1BhdGggPSBhd2FpdCB0ZW1wRGlyLnBhdGgoe1xuICAgIHByZWZpeDogdXRpbC51dWlkVjQoKS5zdWJzdHJpbmcoMCwgOCksXG4gICAgc3VmZml4OiBERUZBVUxUX0VYVCxcbiAgfSk7XG4gIHRoaXMuX3NjcmVlblJlY29yZGVyID0gbmV3IFNjcmVlblJlY29yZGVyKHVkaWQsIHZpZGVvUGF0aCwgdGhpcy5sb2csIHtcbiAgICB0aW1lTGltaXQ6IHBhcnNlSW50KHRpbWVMaW1pdCwgMTApLFxuICAgIGNvZGVjLFxuICAgIGRpc3BsYXksXG4gICAgbWFzayxcbiAgfSk7XG4gIHRyeSB7XG4gICAgYXdhaXQgdGhpcy5fc2NyZWVuUmVjb3JkZXIuc3RhcnQoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHRoaXMuX3NjcmVlblJlY29yZGVyID0gbnVsbDtcbiAgICB0aHJvdyBlO1xuICB9XG59O1xuXG4vKipcbiAqIEB0eXBlZGVmIHtPYmplY3R9IFN0b3BSZWNvcmRpbmdPcHRpb25zXG4gKlxuICogQHByb3BlcnR5IHs/c3RyaW5nfSByZW1vdGVQYXRoIC0gVGhlIHBhdGggdG8gdGhlIHJlbW90ZSBsb2NhdGlvbiwgd2hlcmUgdGhlIHJlc3VsdGluZyB2aWRlbyBzaG91bGQgYmUgdXBsb2FkZWQuXG4gKiBUaGUgZm9sbG93aW5nIHByb3RvY29scyBhcmUgc3VwcG9ydGVkOiBodHRwL2h0dHBzLCBmdHAuXG4gKiBOdWxsIG9yIGVtcHR5IHN0cmluZyB2YWx1ZSAodGhlIGRlZmF1bHQgc2V0dGluZykgbWVhbnMgdGhlIGNvbnRlbnQgb2YgcmVzdWx0aW5nXG4gKiBmaWxlIHNob3VsZCBiZSBlbmNvZGVkIGFzIEJhc2U2NCBhbmQgcGFzc2VkIGFzIHRoZSBlbmRwb2ludCByZXNwb25zZSB2YWx1ZS5cbiAqIEFuIGV4Y2VwdGlvbiB3aWxsIGJlIHRocm93biBpZiB0aGUgZ2VuZXJhdGVkIG1lZGlhIGZpbGUgaXMgdG9vIGJpZyB0b1xuICogZml0IGludG8gdGhlIGF2YWlsYWJsZSBwcm9jZXNzIG1lbW9yeS5cbiAqIEBwcm9wZXJ0eSB7P3N0cmluZ30gdXNlciAtIFRoZSBuYW1lIG9mIHRoZSB1c2VyIGZvciB0aGUgcmVtb3RlIGF1dGhlbnRpY2F0aW9uLlxuICogQHByb3BlcnR5IHs/c3RyaW5nfSBwYXNzIC0gVGhlIHBhc3N3b3JkIGZvciB0aGUgcmVtb3RlIGF1dGhlbnRpY2F0aW9uLlxuICogQHByb3BlcnR5IHs/c3RyaW5nfSBtZXRob2QgLSBUaGUgaHR0cCBtdWx0aXBhcnQgdXBsb2FkIG1ldGhvZCBuYW1lLiBUaGUgJ1BVVCcgb25lIGlzIHVzZWQgYnkgZGVmYXVsdC5cbiAqIEBwcm9wZXJ0eSB7P09iamVjdH0gaGVhZGVycyAtIEFkZGl0aW9uYWwgaGVhZGVycyBtYXBwaW5nIGZvciBtdWx0aXBhcnQgaHR0cChzKSB1cGxvYWRzXG4gKiBAcHJvcGVydHkgez9zdHJpbmd9IGZpbGVGaWVsZE5hbWUgW2ZpbGVdIC0gVGhlIG5hbWUgb2YgdGhlIGZvcm0gZmllbGQsIHdoZXJlIHRoZSBmaWxlIGNvbnRlbnQgQkxPQiBzaG91bGQgYmUgc3RvcmVkIGZvclxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0dHAocykgdXBsb2Fkc1xuICogQHByb3BlcnR5IHs/T2JqZWN0fEFycmF5PFBhaXI+fSBmb3JtRmllbGRzIC0gQWRkaXRpb25hbCBmb3JtIGZpZWxkcyBmb3IgbXVsdGlwYXJ0IGh0dHAocykgdXBsb2Fkc1xuICovXG5cbi8qKlxuICogU3RvcCByZWNvcmRpbmcgdGhlIHNjcmVlbi5cbiAqIElmIG5vIHNjcmVlbiByZWNvcmRpbmcgaGFzIGJlZW4gc3RhcnRlZCBiZWZvcmUgdGhlbiB0aGUgbWV0aG9kIHJldHVybnMgYW4gZW1wdHkgc3RyaW5nLlxuICpcbiAqIEBwYXJhbSB7P1N0b3BSZWNvcmRpbmdPcHRpb25zfSBvcHRpb25zIC0gVGhlIGF2YWlsYWJsZSBvcHRpb25zLlxuICogQHJldHVybnMge3N0cmluZ30gQmFzZTY0LWVuY29kZWQgY29udGVudCBvZiB0aGUgcmVjb3JkZWQgbWVkaWEgZmlsZSBpZiAncmVtb3RlUGF0aCdcbiAqIHBhcmFtZXRlciBpcyBmYWxzeSBvciBhbiBlbXB0eSBzdHJpbmcuXG4gKiBAdGhyb3dzIHtFcnJvcn0gSWYgdGhlcmUgd2FzIGFuIGVycm9yIHdoaWxlIGdldHRpbmcgdGhlIG5hbWUgb2YgYSBtZWRpYSBmaWxlXG4gKiBvciB0aGUgZmlsZSBjb250ZW50IGNhbm5vdCBiZSB1cGxvYWRlZCB0byB0aGUgcmVtb3RlIGxvY2F0aW9uXG4gKiBvciBzY3JlZW4gcmVjb3JkaW5nIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhlIGRldmljZSB1bmRlciB0ZXN0LlxuICovXG5jb21tYW5kcy5zdG9wUmVjb3JkaW5nU2NyZWVuID0gYXN5bmMgZnVuY3Rpb24gc3RvcFJlY29yZGluZ1NjcmVlbiAob3B0aW9ucyA9IHt9KSB7XG4gIGlmICghdGhpcy5fc2NyZWVuUmVjb3JkZXIpIHtcbiAgICB0aGlzLmxvZy5pbmZvKCdObyBzY3JlZW4gcmVjb3JkaW5nIGhhcyBiZWVuIHN0YXJ0ZWQuIERvaW5nIG5vdGhpbmcnKTtcbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICB0aGlzLmxvZy5kZWJ1ZygnUmV0cmlldmluZyB0aGUgcmVzdWx0aW5nIHZpZGVvIGRhdGEnKTtcbiAgY29uc3QgdmlkZW9QYXRoID0gYXdhaXQgdGhpcy5fc2NyZWVuUmVjb3JkZXIuc3RvcCgpO1xuICBpZiAoIXZpZGVvUGF0aCkge1xuICAgIHRoaXMubG9nLmluZm8oJ05vIHZpZGVvIGRhdGEgaXMgZm91bmQuIFJldHVybmluZyBhbiBlbXB0eSBzdHJpbmcnKTtcbiAgICByZXR1cm4gJyc7XG4gIH1cbiAgaWYgKF8uaXNFbXB0eShvcHRpb25zLnJlbW90ZVBhdGgpKSB7XG4gICAgY29uc3Qge3NpemV9ID0gYXdhaXQgZnMuc3RhdCh2aWRlb1BhdGgpO1xuICAgIHRoaXMubG9nLmRlYnVnKGBUaGUgc2l6ZSBvZiB0aGUgcmVzdWx0aW5nIHNjcmVlbiByZWNvcmRpbmcgaXMgJHt1dGlsLnRvUmVhZGFibGVTaXplU3RyaW5nKHNpemUpfWApO1xuICB9XG4gIHJldHVybiBhd2FpdCB1cGxvYWRSZWNvcmRlZE1lZGlhKHZpZGVvUGF0aCwgb3B0aW9ucy5yZW1vdGVQYXRoLCBvcHRpb25zKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGNvbW1hbmRzO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUdBLE1BQU1BLFFBQVEsR0FBRyxFQUFqQjtBQUVBLE1BQU1DLG1CQUFtQixHQUFHLEdBQTVCO0FBQ0EsTUFBTUMsa0JBQWtCLEdBQUcsS0FBSyxJQUFoQztBQUNBLE1BQU1DLHFCQUFxQixHQUFHLEtBQUssRUFBTCxHQUFVLElBQXhDO0FBQ0EsTUFBTUMsMkJBQTJCLEdBQUcsS0FBSyxJQUF6QztBQUNBLE1BQU1DLFdBQVcsR0FBRyxNQUFwQjs7QUFHQSxlQUFlQyxtQkFBZixDQUFvQ0MsU0FBcEMsRUFBK0NDLFVBQVUsR0FBRyxJQUE1RCxFQUFrRUMsYUFBYSxHQUFHLEVBQWxGLEVBQXNGO0VBQ3BGLElBQUlDLGVBQUEsQ0FBRUMsT0FBRixDQUFVSCxVQUFWLENBQUosRUFBMkI7SUFDekIsT0FBTyxDQUFDLE1BQU1JLGFBQUEsQ0FBS0MsZ0JBQUwsQ0FBc0JOLFNBQXRCLENBQVAsRUFBeUNPLFFBQXpDLEVBQVA7RUFDRDs7RUFFRCxNQUFNO0lBQUNDLElBQUQ7SUFBT0MsSUFBUDtJQUFhQyxNQUFiO0lBQXFCQyxPQUFyQjtJQUE4QkMsYUFBOUI7SUFBNkNDO0VBQTdDLElBQTJEWCxhQUFqRTtFQUNBLE1BQU1ZLE9BQU8sR0FBRztJQUNkSixNQUFNLEVBQUVBLE1BQU0sSUFBSSxLQURKO0lBRWRDLE9BRmM7SUFHZEMsYUFIYztJQUlkQztFQUpjLENBQWhCOztFQU1BLElBQUlMLElBQUksSUFBSUMsSUFBWixFQUFrQjtJQUNoQkssT0FBTyxDQUFDQyxJQUFSLEdBQWU7TUFBQ1AsSUFBRDtNQUFPQztJQUFQLENBQWY7RUFDRDs7RUFDRCxNQUFNTyxZQUFBLENBQUlDLFVBQUosQ0FBZWpCLFNBQWYs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
|
package/build/lib/driver.js
CHANGED
|
@@ -11,7 +11,7 @@ require("source-map-support/register");
|
|
|
11
11
|
|
|
12
12
|
var _lodash = _interopRequireDefault(require("lodash"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _driver = require("appium/driver");
|
|
15
15
|
|
|
16
16
|
var _safari = _interopRequireDefault(require("./safari"));
|
|
17
17
|
|
|
@@ -23,7 +23,7 @@ var _utils = require("./utils");
|
|
|
23
23
|
|
|
24
24
|
const NO_PROXY = [['GET', new RegExp('^/session/[^/]+/appium')], ['POST', new RegExp('^/session/[^/]+/appium')], ['POST', new RegExp('^/session/[^/]+/element/[^/]+/elements?$')], ['POST', new RegExp('^/session/[^/]+/elements?$')], ['DELETE', new RegExp('^/session/[^/]+/cookie$')]];
|
|
25
25
|
|
|
26
|
-
class SafariDriver extends
|
|
26
|
+
class SafariDriver extends _driver.BaseDriver {
|
|
27
27
|
constructor(opts = {}) {
|
|
28
28
|
super(opts);
|
|
29
29
|
this.desiredCapConstraints = _desiredCaps.desiredCapConstraints;
|
|
@@ -86,4 +86,4 @@ var _default = SafariDriver;
|
|
|
86
86
|
exports.default = _default;require('source-map-support').install();
|
|
87
87
|
|
|
88
88
|
|
|
89
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL2RyaXZlci5qcyIsIm5hbWVzIjpbIk5PX1BST1hZIiwiUmVnRXhwIiwiU2FmYXJpRHJpdmVyIiwiQmFzZURyaXZlciIsImNvbnN0cnVjdG9yIiwib3B0cyIsImRlc2lyZWRDYXBDb25zdHJhaW50cyIsImxvY2F0b3JTdHJhdGVnaWVzIiwicmVzZXRTdGF0ZSIsImNtZCIsImZuIiwiXyIsInRvUGFpcnMiLCJjb21tYW5kcyIsInByb3RvdHlwZSIsInNhZmFyaSIsInByb3h5UmVxUmVzIiwiaXNQcm94eUFjdGl2ZSIsIl9zY3JlZW5SZWNvcmRlciIsInByb3h5QWN0aXZlIiwiZ2V0UHJveHlBdm9pZExpc3QiLCJjYW5Qcm94eSIsImNyZWF0ZVNlc3Npb24iLCJhcmdzIiwic2Vzc2lvbklkIiwiY2FwcyIsIlNhZmFyaURyaXZlclNlcnZlciIsImxvZyIsInN0YXJ0IiwiZm9ybWF0Q2Fwc0ZvclNlcnZlciIsImUiLCJkZWxldGVTZXNzaW9uIiwicHJveHkiLCJiaW5kIiwiaW5mbyIsInN0b3AiXSwic291cmNlUm9vdCI6Ii4uLy4uIiwic291cmNlcyI6WyJsaWIvZHJpdmVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBCYXNlRHJpdmVyIH0gZnJvbSAnYXBwaXVtL2RyaXZlcic7XG5pbXBvcnQgU2FmYXJpRHJpdmVyU2VydmVyIGZyb20gJy4vc2FmYXJpJztcbmltcG9ydCB7IGRlc2lyZWRDYXBDb25zdHJhaW50cyB9IGZyb20gJy4vZGVzaXJlZC1jYXBzJztcbmltcG9ydCBjb21tYW5kcyBmcm9tICcuL2NvbW1hbmRzL2luZGV4JztcbmltcG9ydCB7IGZvcm1hdENhcHNGb3JTZXJ2ZXIgfSBmcm9tICcuL3V0aWxzJztcblxuY29uc3QgTk9fUFJPWFkgPSBbXG4gIFsnR0VUJywgbmV3IFJlZ0V4cCgnXi9zZXNzaW9uL1teL10rL2FwcGl1bScpXSxcbiAgWydQT1NUJywgbmV3IFJlZ0V4cCgnXi9zZXNzaW9uL1teL10rL2FwcGl1bScpXSxcbiAgWydQT1NUJywgbmV3IFJlZ0V4cCgnXi9zZXNzaW9uL1teL10rL2VsZW1lbnQvW14vXSsvZWxlbWVudHM/JCcpXSxcbiAgWydQT1NUJywgbmV3IFJlZ0V4cCgnXi9zZXNzaW9uL1teL10rL2VsZW1lbnRzPyQnKV0sXG5cbiAgWydERUxFVEUnLCBuZXcgUmVnRXhwKCdeL3Nlc3Npb24vW14vXSsvY29va2llJCcpXSxcbl07XG5cbmNsYXNzIFNhZmFyaURyaXZlciBleHRlbmRzIEJhc2VEcml2ZXIge1xuICBjb25zdHJ1Y3RvciAob3B0cyA9IHt9KSB7XG4gICAgc3VwZXIob3B0cyk7XG4gICAgdGhpcy5kZXNpcmVkQ2FwQ29uc3RyYWludHMgPSBkZXNpcmVkQ2FwQ29uc3RyYWludHM7XG4gICAgdGhpcy5sb2NhdG9yU3RyYXRlZ2llcyA9IFtcbiAgICAgICd4cGF0aCcsXG4gICAgICAndGFnIG5hbWUnLFxuICAgICAgJ2xpbmsgdGV4dCcsXG4gICAgICAncGFydGlhbCBsaW5rIHRleHQnLFxuICAgICAgJ2NzcyBzZWxlY3RvcicsXG4gICAgICAvLyBMZXQgdGhlc2UgdHdvIHJlYWNoIFNhZmFyaSBEcml2ZXIgYW5kIGZhaWwgdGhlcmUgd2l0aCBhIHByb3BlciBlcnJvciBtZXNzYWdlXG4gICAgICAnaWQnLFxuICAgICAgJ25hbWUnLFxuICAgIF07XG4gICAgdGhpcy5yZXNldFN0YXRlKCk7XG5cbiAgICBmb3IgKGNvbnN0IFtjbWQsIGZuXSBvZiBfLnRvUGFpcnMoY29tbWFuZHMpKSB7XG4gICAgICBTYWZhcmlEcml2ZXIucHJvdG90eXBlW2NtZF0gPSBmbjtcbiAgICB9XG4gIH1cblxuICByZXNldFN0YXRlICgpIHtcbiAgICB0aGlzLnNhZmFyaSA9IG51bGw7XG4gICAgdGhpcy5wcm94eVJlcVJlcyA9IG51bGw7XG4gICAgdGhpcy5pc1Byb3h5QWN0aXZlID0gZmFsc2U7XG4gICAgdGhpcy5fc2NyZWVuUmVjb3JkZXIgPSBudWxsO1xuICB9XG5cbiAgcHJveHlBY3RpdmUgKCkge1xuICAgIHJldHVybiB0aGlzLmlzUHJveHlBY3RpdmU7XG4gIH1cblxuICBnZXRQcm94eUF2b2lkTGlzdCAoKSB7XG4gICAgcmV0dXJuIE5PX1BST1hZO1xuICB9XG5cbiAgY2FuUHJveHkgKCkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgYXN5bmMgY3JlYXRlU2Vzc2lvbiAoLi4uYXJncykge1xuICAgIGNvbnN0IFtzZXNzaW9uSWQsIGNhcHNdID0gYXdhaXQgc3VwZXIuY3JlYXRlU2Vzc2lvbiguLi5hcmdzKTtcbiAgICB0aGlzLnNhZmFyaSA9IG5ldyBTYWZhcmlEcml2ZXJTZXJ2ZXIodGhpcy5sb2cpO1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLnNhZmFyaS5zdGFydChmb3JtYXRDYXBzRm9yU2VydmVyKGNhcHMpKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBhd2FpdCB0aGlzLmRlbGV0ZVNlc3Npb24oKTtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICAgIHRoaXMucHJveHlSZXFSZXMgPSB0aGlzLnNhZmFyaS5wcm94eS5wcm94eVJlcVJlcy5iaW5kKHRoaXMuc2FmYXJpLnByb3h5KTtcbiAgICB0aGlzLmlzUHJveHlBY3RpdmUgPSB0cnVlO1xuICAgIHJldHVybiBbc2Vzc2lvbklkLCBjYXBzXTtcbiAgfVxuXG4gIGFzeW5jIGRlbGV0ZVNlc3Npb24gKCkge1xuICAgIHRoaXMubG9nLmluZm8oJ0VuZGluZyBTYWZhcmkgc2Vzc2lvbicpO1xuICAgIGF3YWl0IHRoaXMuX3NjcmVlblJlY29yZGVyPy5zdG9wKHRydWUpO1xuICAgIGF3YWl0IHRoaXMuc2FmYXJpPy5zdG9wKCk7XG4gICAgdGhpcy5yZXNldFN0YXRlKCk7XG5cbiAgICBhd2FpdCBzdXBlci5kZWxldGVTZXNzaW9uKCk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgU2FmYXJpRHJpdmVyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLE1BQU1BLFFBQVEsR0FBRyxDQUNmLENBQUMsS0FBRCxFQUFRLElBQUlDLE1BQUosQ0FBVyx3QkFBWCxDQUFSLENBRGUsRUFFZixDQUFDLE1BQUQsRUFBUyxJQUFJQSxNQUFKLENBQVcsd0JBQVgsQ0FBVCxDQUZlLEVBR2YsQ0FBQyxNQUFELEVBQVMsSUFBSUEsTUFBSixDQUFXLDBDQUFYLENBQVQsQ0FIZSxFQUlmLENBQUMsTUFBRCxFQUFTLElBQUlBLE1BQUosQ0FBVyw0QkFBWCxDQUFULENBSmUsRUFNZixDQUFDLFFBQUQsRUFBVyxJQUFJQSxNQUFKLENBQVcseUJBQVgsQ0FBWCxDQU5lLENBQWpCOztBQVNBLE1BQU1DLFlBQU4sU0FBMkJDLGtCQUEzQixDQUFzQztFQUNwQ0MsV0FBVyxDQUFFQyxJQUFJLEdBQUcsRUFBVCxFQUFhO0lBQ3RCLE1BQU1BLElBQU47SUFDQSxLQUFLQyxxQkFBTCxHQUE2QkEsa0NBQTdCO0lBQ0EsS0FBS0MsaUJBQUwsR0FBeUIsQ0FDdkIsT0FEdUIsRUFFdkIsVUFGdUIsRUFHdkIsV0FIdUIsRUFJdkIsbUJBSnVCLEVBS3ZCLGNBTHVCLEVBT3ZCLElBUHVCLEVBUXZCLE1BUnVCLENBQXpCO0lBVUEsS0FBS0MsVUFBTDs7SUFFQSxLQUFLLE1BQU0sQ0FBQ0MsR0FBRCxFQUFNQyxFQUFOLENBQVgsSUFBd0JDLGVBQUEsQ0FBRUMsT0FBRixDQUFVQyxjQUFWLENBQXhCLEVBQTZDO01BQzNDWCxZQUFZLENBQUNZLFNBQWIsQ0FBdUJMLEdBQXZCLElBQThCQyxFQUE5QjtJQUNEO0VBQ0Y7O0VBRURGLFVBQVUsR0FBSTtJQUNaLEtBQUtPLE1BQUwsR0FBYyxJQUFkO0lBQ0EsS0FBS0MsV0FBTCxHQUFtQixJQUFuQjtJQUNBLEtBQUtDLGFBQUwsR0FBcUIsS0FBckI7SUFDQSxLQUFLQyxlQUFMLEdBQXVCLElBQXZCO0VBQ0Q7O0VBRURDLFdBQVcsR0FBSTtJQUNiLE9BQU8sS0FBS0YsYUFBWjtFQUNEOztFQUVERyxpQkFBaUIsR0FBSTtJQUNuQixPQUFPcEIsUUFBUDtFQUNEOztFQUVEcUIsUUFBUSxHQUFJO0lBQ1YsT0FBTyxJQUFQO0VBQ0Q7O0VBRWtCLE1BQWJDLGFBQWEsQ0FBRSxHQUFHQyxJQUFMLEVBQVc7SUFDNUIsTUFBTSxDQUFDQyxTQUFELEVBQVlDLElBQVosSUFBb0IsTUFBTSxNQUFNSCxhQUFOLENBQW9CLEdBQUdDLElBQXZCLENBQWhDO0lBQ0EsS0FBS1IsTUFBTCxHQUFjLElBQUlXLGVBQUosQ0FBdUIsS0FBS0MsR0FBNUIsQ0FBZDs7SUFDQSxJQUFJO01BQ0YsTUFBTSxLQUFLWixNQUFMLENBQVlhLEtBQVosQ0FBa0IsSUFBQUMsMEJBQUEsRUFBb0JKLElBQXBCLENBQWxCLENBQU47SUFDRCxDQUZELENBRUUsT0FBT0ssQ0FBUCxFQUFVO01BQ1YsTUFBTSxLQUFLQyxhQUFMLEVBQU47TUFDQSxNQUFNRCxDQUFOO0lBQ0Q7O0lBQ0QsS0FBS2QsV0FBTCxHQUFtQixLQUFLRCxNQUFMLENBQVlpQixLQUFaLENBQWtCaEIsV0FBbEIsQ0FBOEJpQixJQUE5QixDQUFtQyxLQUFLbEIsTUFBTCxDQUFZaUIsS0FBL0MsQ0FBbkI7SUFDQSxLQUFLZixhQUFMLEdBQXFCLElBQXJCO0lBQ0EsT0FBTyxDQUFDTyxTQUFELEVBQVlDLElBQVosQ0FBUDtFQUNEOztFQUVrQixNQUFiTSxhQUFhLEdBQUk7SUFBQTs7SUFDckIsS0FBS0osR0FBTCxDQUFTTyxJQUFULENBQWMsdUJBQWQ7SUFDQSxnQ0FBTSxLQUFLaEIsZUFBWCwwREFBTSxzQkFBc0JpQixJQUF0QixDQUEyQixJQUEzQixDQUFOO0lBQ0EsdUJBQU0sS0FBS3BCLE1BQVgsaURBQU0sYUFBYW9CLElBQWIsRUFBTjtJQUNBLEtBQUszQixVQUFMO0lBRUEsTUFBTSxNQUFNdUIsYUFBTixFQUFOO0VBQ0Q7O0FBN0RtQzs7ZUFnRXZCN0IsWSJ9
|
package/build/lib/logger.js
CHANGED
|
@@ -7,7 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
|
|
8
8
|
require("source-map-support/register");
|
|
9
9
|
|
|
10
|
-
var _support = require("
|
|
10
|
+
var _support = require("appium/support");
|
|
11
11
|
|
|
12
12
|
const log = _support.logger.getLogger('Safari');
|
|
13
13
|
|
|
@@ -15,4 +15,4 @@ var _default = log;
|
|
|
15
15
|
exports.default = _default;require('source-map-support').install();
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL2xvZ2dlci5qcyIsIm5hbWVzIjpbImxvZyIsImxvZ2dlciIsImdldExvZ2dlciJdLCJzb3VyY2VSb290IjoiLi4vLi4iLCJzb3VyY2VzIjpbImxpYi9sb2dnZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbG9nZ2VyIH0gZnJvbSAnYXBwaXVtL3N1cHBvcnQnO1xuXG5jb25zdCBsb2cgPSBsb2dnZXIuZ2V0TG9nZ2VyKCdTYWZhcmknKTtcblxuZXhwb3J0IGRlZmF1bHQgbG9nO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFFQSxNQUFNQSxHQUFHLEdBQUdDLGVBQUEsQ0FBT0MsU0FBUCxDQUFpQixRQUFqQixDQUFaOztlQUVlRixHIn0=
|
package/build/lib/safari.js
CHANGED
|
@@ -13,9 +13,9 @@ var _os = _interopRequireDefault(require("os"));
|
|
|
13
13
|
|
|
14
14
|
var _path = _interopRequireDefault(require("path"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _driver = require("appium/driver");
|
|
17
17
|
|
|
18
|
-
var _support = require("
|
|
18
|
+
var _support = require("appium/support");
|
|
19
19
|
|
|
20
20
|
var _teen_process = require("teen_process");
|
|
21
21
|
|
|
@@ -34,10 +34,10 @@ const SAFARI_SERVER_GUARD = _support.util.getLockFileGuard(_path.default.resolve
|
|
|
34
34
|
tryRecovery: true
|
|
35
35
|
});
|
|
36
36
|
|
|
37
|
-
class SafariProxy extends
|
|
37
|
+
class SafariProxy extends _driver.JWProxy {
|
|
38
38
|
async proxyCommand(url, method, body = null) {
|
|
39
39
|
if (this.didProcessExit) {
|
|
40
|
-
throw new
|
|
40
|
+
throw new _driver.errors.InvalidContextError(`'${method} ${url}' cannot be proxied to Safari Driver server because ` + 'the process is not running (probably crashed). Check the server log for more details');
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
return await super.proxyCommand(url, method, body);
|
|
@@ -195,4 +195,4 @@ var _default = SafariDriverServer;
|
|
|
195
195
|
exports.default = _default;require('source-map-support').install();
|
|
196
196
|
|
|
197
197
|
|
|
198
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL3NhZmFyaS5qcyIsIm5hbWVzIjpbIlNEX0JJTkFSWSIsIlNUQVJUVVBfVElNRU9VVCIsIlNBRkFSSV9QT1JUX1JBTkdFIiwiU0FGQVJJX1NFUlZFUl9HVUFSRCIsInV0aWwiLCJnZXRMb2NrRmlsZUd1YXJkIiwicGF0aCIsInJlc29sdmUiLCJvcyIsInRtcGRpciIsInRpbWVvdXQiLCJ0cnlSZWNvdmVyeSIsIlNhZmFyaVByb3h5IiwiSldQcm94eSIsInByb3h5Q29tbWFuZCIsInVybCIsIm1ldGhvZCIsImJvZHkiLCJkaWRQcm9jZXNzRXhpdCIsImVycm9ycyIsIkludmFsaWRDb250ZXh0RXJyb3IiLCJTYWZhcmlEcml2ZXJQcm9jZXNzIiwiY29uc3RydWN0b3IiLCJsb2ciLCJsb2dnZXIiLCJnZXRMb2dnZXIiLCJwb3J0IiwicHJvYyIsImlzUnVubmluZyIsImluaXQiLCJzdGFydFBvcnQiLCJlbmRQb3J0IiwiZSIsIkVycm9yIiwic2FmYXJpQmluIiwiZnMiLCJ3aGljaCIsIlN1YlByb2Nlc3MiLCJvbiIsInN0ZG91dCIsInN0ZGVyciIsImxpbmUiLCJkZWJ1ZyIsImNvZGUiLCJzaWduYWwiLCJpbmZvIiwic3RhcnQiLCJraWxsIiwic3RvcCIsImlnbiIsIlNBRkFSSV9EUklWRVJfUFJPQ0VTUyIsInByb2Nlc3MiLCJvbmNlIiwicGlkIiwiU2FmYXJpRHJpdmVyU2VydmVyIiwicHJveHkiLCJjYXBzIiwic2VydmVyIiwiYmFzZSIsImtlZXBBbGl2ZSIsImNvbW1hbmQiLCJlcnIiLCJtZXNzYWdlIiwid2FpdE1zIiwiaW50ZXJ2YWxNcyIsInRlc3QiLCJjYXBhYmlsaXRpZXMiLCJmaXJzdE1hdGNoIiwiYWx3YXlzTWF0Y2giLCJzZXNzaW9uSWQiXSwic291cmNlUm9vdCI6Ii4uLy4uIiwic291cmNlcyI6WyJsaWIvc2FmYXJpLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBvcyBmcm9tICdvcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IEpXUHJveHksIGVycm9ycyB9IGZyb20gJ0BhcHBpdW0vYmFzZS1kcml2ZXInO1xuaW1wb3J0IHsgZnMsIGxvZ2dlciwgdXRpbCB9IGZyb20gJ0BhcHBpdW0vc3VwcG9ydCc7XG5pbXBvcnQgeyBTdWJQcm9jZXNzIH0gZnJvbSAndGVlbl9wcm9jZXNzJztcbmltcG9ydCB7IHdhaXRGb3JDb25kaXRpb24gfSBmcm9tICdhc3luY2JveCc7XG5pbXBvcnQgeyBmaW5kQVBvcnROb3RJblVzZSB9IGZyb20gJ3BvcnRzY2FubmVyJztcbmltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSAnY2hpbGRfcHJvY2Vzcyc7XG5cbmNvbnN0IFNEX0JJTkFSWSA9ICdzYWZhcmlkcml2ZXInO1xuY29uc3QgU1RBUlRVUF9USU1FT1VUID0gMTAwMDA7IC8vIHNlY29uZHNcbmNvbnN0IFNBRkFSSV9QT1JUX1JBTkdFID0gWzUxMDAsIDUyMDBdO1xuLy8gVGhpcyBndWFyZCBpcyBuZWVkZWQgdG8gbWFrZSBzdXJlXG4vLyB3ZSBuZXZlciBydW4gbXVsdGlwbGUgU2FmYXJpIGRyaXZlciBwcm9jZXNzZXMgZm9yIHRoZSBzYW1lIEFwcGl1bSBwcm9jZXNzXG5jb25zdCBTQUZBUklfU0VSVkVSX0dVQVJEID0gdXRpbC5nZXRMb2NrRmlsZUd1YXJkKFxuICBwYXRoLnJlc29sdmUob3MudG1wZGlyKCksICdzYWZhcmlfc2VydmVyX2d1YXJkLmxvY2snKSxcbiAge3RpbWVvdXQ6IDUsIHRyeVJlY292ZXJ5OiB0cnVlfVxuKTtcblxuXG5jbGFzcyBTYWZhcmlQcm94eSBleHRlbmRzIEpXUHJveHkge1xuICBhc3luYyBwcm94eUNvbW1hbmQgKHVybCwgbWV0aG9kLCBib2R5ID0gbnVsbCkge1xuICAgIGlmICh0aGlzLmRpZFByb2Nlc3NFeGl0KSB7XG4gICAgICB0aHJvdyBuZXcgZXJyb3JzLkludmFsaWRDb250ZXh0RXJyb3IoXG4gICAgICAgIGAnJHttZXRob2R9ICR7dXJsfScgY2Fubm90IGJlIHByb3hpZWQgdG8gU2FmYXJpIERyaXZlciBzZXJ2ZXIgYmVjYXVzZSBgICtcbiAgICAgICAgJ3RoZSBwcm9jZXNzIGlzIG5vdCBydW5uaW5nIChwcm9iYWJseSBjcmFzaGVkKS4gQ2hlY2sgdGhlIHNlcnZlciBsb2cgZm9yIG1vcmUgZGV0YWlscycpO1xuICAgIH1cbiAgICByZXR1cm4gYXdhaXQgc3VwZXIucHJveHlDb21tYW5kKHVybCwgbWV0aG9kLCBib2R5KTtcbiAgfVxufVxuXG5jbGFzcyBTYWZhcmlEcml2ZXJQcm9jZXNzIHtcbiAgY29uc3RydWN0b3IgKCkge1xuICAgIHRoaXMubG9nID0gbG9nZ2VyLmdldExvZ2dlcignU2FmYXJpRHJpdmVyUHJvY2VzcycpO1xuICAgIHRoaXMucG9ydCA9IG51bGw7XG4gICAgdGhpcy5wcm9jID0gbnVsbDtcbiAgfVxuXG4gIGdldCBpc1J1bm5pbmcgKCkge1xuICAgIHJldHVybiAhISh0aGlzLnByb2M/LmlzUnVubmluZyk7XG4gIH1cblxuICBhc3luYyBpbml0ICgpIHtcbiAgICBhd2FpdCBTQUZBUklfU0VSVkVSX0dVQVJEKGFzeW5jICgpID0+IHtcbiAgICAgIGlmICh0aGlzLmlzUnVubmluZykge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IFtzdGFydFBvcnQsIGVuZFBvcnRdID0gU0FGQVJJX1BPUlRfUkFOR0U7XG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLnBvcnQgPSBhd2FpdCBmaW5kQVBvcnROb3RJblVzZShzdGFydFBvcnQsIGVuZFBvcnQpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYENhbm5vdCBmaW5kIGFueSBmcmVlIHBvcnQgaW4gcmFuZ2UgJHtzdGFydFBvcnR9Li4ke2VuZFBvcnR9LiBgICtcbiAgICAgICAgICBgRG91YmxlIGNoZWNrIHRoZSBwcm9jZXNzZXMgdGhhdCBhcmUgbG9ja2luZyBwb3J0cyB3aXRoaW4gdGhpcyByYW5nZSBhbmQgdGVybWluYXRlIGAgK1xuICAgICAgICAgIGB0aGVzZSB3aGljaCBhcmUgbm90IG5lZWRlZCBhbnltb3JlYCk7XG4gICAgICB9XG5cbiAgICAgIGxldCBzYWZhcmlCaW47XG4gICAgICB0cnkge1xuICAgICAgICBzYWZhcmlCaW4gPSBhd2FpdCBmcy53aGljaChTRF9CSU5BUlkpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7U0RfQklOQVJZfSBiaW5hcnkgY2Fubm90IGJlIGZvdW5kIGluIFBBVEguIGAgK1xuICAgICAgICAgIGBQbGVhc2UgbWFrZSBzdXJlIGl0IGlzIHByZXNlbnQgb24geW91ciBzeXN0ZW1gKTtcbiAgICAgIH1cbiAgICAgIHRoaXMucHJvYyA9IG5ldyBTdWJQcm9jZXNzKHNhZmFyaUJpbiwgWyctcCcsIHRoaXMucG9ydCwgJy0tZGlhZ25vc2UnXSk7XG4gICAgICB0aGlzLnByb2Mub24oJ291dHB1dCcsIChzdGRvdXQsIHN0ZGVycikgPT4ge1xuICAgICAgICBjb25zdCBsaW5lID0gc3Rkb3V0IHx8IHN0ZGVycjtcbiAgICAgICAgdGhpcy5sb2cuZGVidWcoYFske1NEX0JJTkFSWX1dICR7bGluZX1gKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5wcm9jLm9uKCdleGl0JywgKGNvZGUsIHNpZ25hbCkgPT4ge1xuICAgICAgICB0aGlzLmxvZy5pbmZvKGAke1NEX0JJTkFSWX0gaGFzIGV4aXRlZCB3aXRoIGNvZGUgJHtjb2RlfSwgc2lnbmFsICR7c2lnbmFsfWApO1xuICAgICAgfSk7XG4gICAgICB0aGlzLmxvZy5pbmZvKGBTdGFydGluZyAnJHtzYWZhcmlCaW59JyBvbiBwb3J0ICR7dGhpcy5wb3J0fWApO1xuICAgICAgYXdhaXQgdGhpcy5wcm9jLnN0YXJ0KDApO1xuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMga2lsbCAoKSB7XG4gICAgaWYgKHRoaXMuaXNSdW5uaW5nKSB7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCB0aGlzLnByb2Muc3RvcCgnU0lHS0lMTCcpO1xuICAgICAgfSBjYXRjaCAoaWduKSB7fVxuICAgIH1cbiAgfVxufVxuXG4vLyBTaW5nbGUgc2VydmVyIHByb2Nlc3MgcGVyIEFwcGl1bSBpbnN0YW5jZVxuY29uc3QgU0FGQVJJX0RSSVZFUl9QUk9DRVNTID0gbmV3IFNhZmFyaURyaXZlclByb2Nlc3MoKTtcbnByb2Nlc3Mub25jZSgnZXhpdCcsICgpID0+IHtcbiAgaWYgKFNBRkFSSV9EUklWRVJfUFJPQ0VTUy5pc1J1bm5pbmcpIHtcbiAgICB0cnkge1xuICAgICAgZXhlY1N5bmMoYGtpbGwgJHtTQUZBUklfRFJJVkVSX1BST0NFU1MucHJvYy5waWR9YCk7XG4gICAgfSBjYXRjaCAoaWduKSB7fVxuICB9XG59KTtcblxuY2xhc3MgU2FmYXJpRHJpdmVyU2VydmVyIHtcbiAgY29uc3RydWN0b3IgKGxvZykge1xuICAgIHRoaXMubG9nID0gbG9nO1xuICAgIHRoaXMucHJveHkgPSBudWxsO1xuICB9XG5cbiAgZ2V0IGlzUnVubmluZyAoKSB7XG4gICAgcmV0dXJuICEhKFNBRkFSSV9EUklWRVJfUFJPQ0VTUy5pc1J1bm5pbmcpO1xuICB9XG5cbiAgYXN5bmMgc3RhcnQgKGNhcHMpIHtcbiAgICBhd2FpdCBTQUZBUklfRFJJVkVSX1BST0NFU1MuaW5pdCgpO1xuXG4gICAgdGhpcy5wcm94eSA9IG5ldyBTYWZhcmlQcm94eSh7XG4gICAgICBzZXJ2ZXI6ICcxMjcuMC4wLjEnLFxuICAgICAgcG9ydDogU0FGQVJJX0RSSVZFUl9QUk9DRVNTLnBvcnQsXG4gICAgICBiYXNlOiAnJyxcbiAgICAgIGxvZzogdGhpcy5sb2csXG4gICAgICBrZWVwQWxpdmU6IHRydWUsXG4gICAgfSk7XG4gICAgdGhpcy5wcm94eS5kaWRQcm9jZXNzRXhpdCA9IGZhbHNlO1xuICAgIFNBRkFSSV9EUklWRVJfUFJPQ0VTUy5wcm9jLm9uKCdleGl0JywgKCkgPT4ge1xuICAgICAgdGhpcy5wcm94eS5kaWRQcm9jZXNzRXhpdCA9IHRydWU7XG4gICAgfSk7XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgd2FpdEZvckNvbmRpdGlvbihhc3luYyAoKSA9PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgYXdhaXQgdGhpcy5wcm94eS5jb21tYW5kKCcvc3RhdHVzJywgJ0dFVCcpO1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICBpZiAodGhpcy5wcm94eS5kaWRQcm9jZXNzRXhpdCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVyci5tZXNzYWdlKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9LCB7XG4gICAgICAgIHdhaXRNczogU1RBUlRVUF9USU1FT1VULFxuICAgICAgICBpbnRlcnZhbE1zOiAxMDAwLFxuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgaWYgKC9Db25kaXRpb24gdW5tZXQvLnRlc3QoZS5tZXNzYWdlKSkge1xuICAgICAgICBpZiAoU0FGQVJJX0RSSVZFUl9QUk9DRVNTLmlzUnVubmluZykge1xuICAgICAgICAgIC8vIGF2b2lkIFwiZnJvemVuXCIgcHJvY2Vzc2VzLFxuICAgICAgICAgIGF3YWl0IFNBRkFSSV9EUklWRVJfUFJPQ0VTUy5raWxsKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBTYWZhcmkgRHJpdmVyIHNlcnZlciBpcyBub3QgbGlzdGVuaW5nIHdpdGhpbiAke1NUQVJUVVBfVElNRU9VVH1tcyB0aW1lb3V0LiBgICtcbiAgICAgICAgICBgTWFrZSBzdXJlIGl0IGhhcyBiZWVuIGV4ZWN1dGVkIG1hbnVhbGx5IGF0IGxlYXN0IG9uY2Ugd2l0aCAnLS1lbmFibGUnIGNvbW1hbmQgbGluZSBhcmd1bWVudC4gYCArXG4gICAgICAgICAgYENoZWNrIHRoZSBzZXJ2ZXIgbG9nIGZvciBtb3JlIGRldGFpbHNgKTtcbiAgICAgIH1cbiAgICAgIHRocm93IGU7XG4gICAgfVxuXG4gICAgYXdhaXQgdGhpcy5wcm94eS5jb21tYW5kKCcvc2Vzc2lvbicsICdQT1NUJywge1xuICAgICAgY2FwYWJpbGl0aWVzOiB7XG4gICAgICAgIGZpcnN0TWF0Y2g6IFt7fV0sXG4gICAgICAgIGFsd2F5c01hdGNoOiBjYXBzLFxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgc3RvcCAoKSB7XG4gICAgaWYgKCF0aGlzLmlzUnVubmluZykge1xuICAgICAgdGhpcy5sb2cuaW5mbyhgJHtTRF9CSU5BUll9IHNlc3Npb24gY2Fubm90IGJlIHN0b3BwZWQsIGJlY2F1c2UgdGhlIHNlcnZlciBpcyBub3QgcnVubmluZ2ApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnByb3h5Py5zZXNzaW9uSWQpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IHRoaXMucHJveHkuY29tbWFuZChgL3Nlc3Npb24vJHt0aGlzLnByb3h5LnNlc3Npb25JZH1gLCAnREVMRVRFJyk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRoaXMubG9nLmluZm8oYCR7U0RfQklOQVJZfSBzZXNzaW9uIGNhbm5vdCBiZSBkZWxldGVkLiBPcmlnaW5hbCBlcnJvcjogJHtlLm1lc3NhZ2V9YCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFNhZmFyaURyaXZlclNlcnZlcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQSxNQUFNQSxTQUFTLEdBQUcsY0FBbEI7QUFDQSxNQUFNQyxlQUFlLEdBQUcsS0FBeEI7QUFDQSxNQUFNQyxpQkFBaUIsR0FBRyxDQUFDLElBQUQsRUFBTyxJQUFQLENBQTFCOztBQUdBLE1BQU1DLG1CQUFtQixHQUFHQyxjQUFLQyxnQkFBTCxDQUMxQkMsY0FBS0MsT0FBTCxDQUFhQyxZQUFHQyxNQUFILEVBQWIs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
|
|
198
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL3NhZmFyaS5qcyIsIm5hbWVzIjpbIlNEX0JJTkFSWSIsIlNUQVJUVVBfVElNRU9VVCIsIlNBRkFSSV9QT1JUX1JBTkdFIiwiU0FGQVJJX1NFUlZFUl9HVUFSRCIsInV0aWwiLCJnZXRMb2NrRmlsZUd1YXJkIiwicGF0aCIsInJlc29sdmUiLCJvcyIsInRtcGRpciIsInRpbWVvdXQiLCJ0cnlSZWNvdmVyeSIsIlNhZmFyaVByb3h5IiwiSldQcm94eSIsInByb3h5Q29tbWFuZCIsInVybCIsIm1ldGhvZCIsImJvZHkiLCJkaWRQcm9jZXNzRXhpdCIsImVycm9ycyIsIkludmFsaWRDb250ZXh0RXJyb3IiLCJTYWZhcmlEcml2ZXJQcm9jZXNzIiwiY29uc3RydWN0b3IiLCJsb2ciLCJsb2dnZXIiLCJnZXRMb2dnZXIiLCJwb3J0IiwicHJvYyIsImlzUnVubmluZyIsImluaXQiLCJzdGFydFBvcnQiLCJlbmRQb3J0IiwiZmluZEFQb3J0Tm90SW5Vc2UiLCJlIiwiRXJyb3IiLCJzYWZhcmlCaW4iLCJmcyIsIndoaWNoIiwiU3ViUHJvY2VzcyIsIm9uIiwic3Rkb3V0Iiwic3RkZXJyIiwibGluZSIsImRlYnVnIiwiY29kZSIsInNpZ25hbCIsImluZm8iLCJzdGFydCIsImtpbGwiLCJzdG9wIiwiaWduIiwiU0FGQVJJX0RSSVZFUl9QUk9DRVNTIiwicHJvY2VzcyIsIm9uY2UiLCJleGVjU3luYyIsInBpZCIsIlNhZmFyaURyaXZlclNlcnZlciIsInByb3h5IiwiY2FwcyIsInNlcnZlciIsImJhc2UiLCJrZWVwQWxpdmUiLCJ3YWl0Rm9yQ29uZGl0aW9uIiwiY29tbWFuZCIsImVyciIsIm1lc3NhZ2UiLCJ3YWl0TXMiLCJpbnRlcnZhbE1zIiwidGVzdCIsImNhcGFiaWxpdGllcyIsImZpcnN0TWF0Y2giLCJhbHdheXNNYXRjaCIsInNlc3Npb25JZCJdLCJzb3VyY2VSb290IjoiLi4vLi4iLCJzb3VyY2VzIjpbImxpYi9zYWZhcmkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG9zIGZyb20gJ29zJztcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgSldQcm94eSwgZXJyb3JzIH0gZnJvbSAnYXBwaXVtL2RyaXZlcic7XG5pbXBvcnQgeyBmcywgbG9nZ2VyLCB1dGlsIH0gZnJvbSAnYXBwaXVtL3N1cHBvcnQnO1xuaW1wb3J0IHsgU3ViUHJvY2VzcyB9IGZyb20gJ3RlZW5fcHJvY2Vzcyc7XG5pbXBvcnQgeyB3YWl0Rm9yQ29uZGl0aW9uIH0gZnJvbSAnYXN5bmNib3gnO1xuaW1wb3J0IHsgZmluZEFQb3J0Tm90SW5Vc2UgfSBmcm9tICdwb3J0c2Nhbm5lcic7XG5pbXBvcnQgeyBleGVjU3luYyB9IGZyb20gJ2NoaWxkX3Byb2Nlc3MnO1xuXG5jb25zdCBTRF9CSU5BUlkgPSAnc2FmYXJpZHJpdmVyJztcbmNvbnN0IFNUQVJUVVBfVElNRU9VVCA9IDEwMDAwOyAvLyBzZWNvbmRzXG5jb25zdCBTQUZBUklfUE9SVF9SQU5HRSA9IFs1MTAwLCA1MjAwXTtcbi8vIFRoaXMgZ3VhcmQgaXMgbmVlZGVkIHRvIG1ha2Ugc3VyZVxuLy8gd2UgbmV2ZXIgcnVuIG11bHRpcGxlIFNhZmFyaSBkcml2ZXIgcHJvY2Vzc2VzIGZvciB0aGUgc2FtZSBBcHBpdW0gcHJvY2Vzc1xuY29uc3QgU0FGQVJJX1NFUlZFUl9HVUFSRCA9IHV0aWwuZ2V0TG9ja0ZpbGVHdWFyZChcbiAgcGF0aC5yZXNvbHZlKG9zLnRtcGRpcigpLCAnc2FmYXJpX3NlcnZlcl9ndWFyZC5sb2NrJyksXG4gIHt0aW1lb3V0OiA1LCB0cnlSZWNvdmVyeTogdHJ1ZX1cbik7XG5cblxuY2xhc3MgU2FmYXJpUHJveHkgZXh0ZW5kcyBKV1Byb3h5IHtcbiAgYXN5bmMgcHJveHlDb21tYW5kICh1cmwsIG1ldGhvZCwgYm9keSA9IG51bGwpIHtcbiAgICBpZiAodGhpcy5kaWRQcm9jZXNzRXhpdCkge1xuICAgICAgdGhyb3cgbmV3IGVycm9ycy5JbnZhbGlkQ29udGV4dEVycm9yKFxuICAgICAgICBgJyR7bWV0aG9kfSAke3VybH0nIGNhbm5vdCBiZSBwcm94aWVkIHRvIFNhZmFyaSBEcml2ZXIgc2VydmVyIGJlY2F1c2UgYCArXG4gICAgICAgICd0aGUgcHJvY2VzcyBpcyBub3QgcnVubmluZyAocHJvYmFibHkgY3Jhc2hlZCkuIENoZWNrIHRoZSBzZXJ2ZXIgbG9nIGZvciBtb3JlIGRldGFpbHMnKTtcbiAgICB9XG4gICAgcmV0dXJuIGF3YWl0IHN1cGVyLnByb3h5Q29tbWFuZCh1cmwsIG1ldGhvZCwgYm9keSk7XG4gIH1cbn1cblxuY2xhc3MgU2FmYXJpRHJpdmVyUHJvY2VzcyB7XG4gIGNvbnN0cnVjdG9yICgpIHtcbiAgICB0aGlzLmxvZyA9IGxvZ2dlci5nZXRMb2dnZXIoJ1NhZmFyaURyaXZlclByb2Nlc3MnKTtcbiAgICB0aGlzLnBvcnQgPSBudWxsO1xuICAgIHRoaXMucHJvYyA9IG51bGw7XG4gIH1cblxuICBnZXQgaXNSdW5uaW5nICgpIHtcbiAgICByZXR1cm4gISEodGhpcy5wcm9jPy5pc1J1bm5pbmcpO1xuICB9XG5cbiAgYXN5bmMgaW5pdCAoKSB7XG4gICAgYXdhaXQgU0FGQVJJX1NFUlZFUl9HVUFSRChhc3luYyAoKSA9PiB7XG4gICAgICBpZiAodGhpcy5pc1J1bm5pbmcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBbc3RhcnRQb3J0LCBlbmRQb3J0XSA9IFNBRkFSSV9QT1JUX1JBTkdFO1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5wb3J0ID0gYXdhaXQgZmluZEFQb3J0Tm90SW5Vc2Uoc3RhcnRQb3J0LCBlbmRQb3J0KTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBDYW5ub3QgZmluZCBhbnkgZnJlZSBwb3J0IGluIHJhbmdlICR7c3RhcnRQb3J0fS4uJHtlbmRQb3J0fS4gYCArXG4gICAgICAgICAgYERvdWJsZSBjaGVjayB0aGUgcHJvY2Vzc2VzIHRoYXQgYXJlIGxvY2tpbmcgcG9ydHMgd2l0aGluIHRoaXMgcmFuZ2UgYW5kIHRlcm1pbmF0ZSBgICtcbiAgICAgICAgICBgdGhlc2Ugd2hpY2ggYXJlIG5vdCBuZWVkZWQgYW55bW9yZWApO1xuICAgICAgfVxuXG4gICAgICBsZXQgc2FmYXJpQmluO1xuICAgICAgdHJ5IHtcbiAgICAgICAgc2FmYXJpQmluID0gYXdhaXQgZnMud2hpY2goU0RfQklOQVJZKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke1NEX0JJTkFSWX0gYmluYXJ5IGNhbm5vdCBiZSBmb3VuZCBpbiBQQVRILiBgICtcbiAgICAgICAgICBgUGxlYXNlIG1ha2Ugc3VyZSBpdCBpcyBwcmVzZW50IG9uIHlvdXIgc3lzdGVtYCk7XG4gICAgICB9XG4gICAgICB0aGlzLnByb2MgPSBuZXcgU3ViUHJvY2VzcyhzYWZhcmlCaW4sIFsnLXAnLCB0aGlzLnBvcnQsICctLWRpYWdub3NlJ10pO1xuICAgICAgdGhpcy5wcm9jLm9uKCdvdXRwdXQnLCAoc3Rkb3V0LCBzdGRlcnIpID0+IHtcbiAgICAgICAgY29uc3QgbGluZSA9IHN0ZG91dCB8fCBzdGRlcnI7XG4gICAgICAgIHRoaXMubG9nLmRlYnVnKGBbJHtTRF9CSU5BUll9XSAke2xpbmV9YCk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMucHJvYy5vbignZXhpdCcsIChjb2RlLCBzaWduYWwpID0+IHtcbiAgICAgICAgdGhpcy5sb2cuaW5mbyhgJHtTRF9CSU5BUll9IGhhcyBleGl0ZWQgd2l0aCBjb2RlICR7Y29kZX0sIHNpZ25hbCAke3NpZ25hbH1gKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5sb2cuaW5mbyhgU3RhcnRpbmcgJyR7c2FmYXJpQmlufScgb24gcG9ydCAke3RoaXMucG9ydH1gKTtcbiAgICAgIGF3YWl0IHRoaXMucHJvYy5zdGFydCgwKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIGtpbGwgKCkge1xuICAgIGlmICh0aGlzLmlzUnVubmluZykge1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgdGhpcy5wcm9jLnN0b3AoJ1NJR0tJTEwnKTtcbiAgICAgIH0gY2F0Y2ggKGlnbikge31cbiAgICB9XG4gIH1cbn1cblxuLy8gU2luZ2xlIHNlcnZlciBwcm9jZXNzIHBlciBBcHBpdW0gaW5zdGFuY2VcbmNvbnN0IFNBRkFSSV9EUklWRVJfUFJPQ0VTUyA9IG5ldyBTYWZhcmlEcml2ZXJQcm9jZXNzKCk7XG5wcm9jZXNzLm9uY2UoJ2V4aXQnLCAoKSA9PiB7XG4gIGlmIChTQUZBUklfRFJJVkVSX1BST0NFU1MuaXNSdW5uaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIGV4ZWNTeW5jKGBraWxsICR7U0FGQVJJX0RSSVZFUl9QUk9DRVNTLnByb2MucGlkfWApO1xuICAgIH0gY2F0Y2ggKGlnbikge31cbiAgfVxufSk7XG5cbmNsYXNzIFNhZmFyaURyaXZlclNlcnZlciB7XG4gIGNvbnN0cnVjdG9yIChsb2cpIHtcbiAgICB0aGlzLmxvZyA9IGxvZztcbiAgICB0aGlzLnByb3h5ID0gbnVsbDtcbiAgfVxuXG4gIGdldCBpc1J1bm5pbmcgKCkge1xuICAgIHJldHVybiAhIShTQUZBUklfRFJJVkVSX1BST0NFU1MuaXNSdW5uaW5nKTtcbiAgfVxuXG4gIGFzeW5jIHN0YXJ0IChjYXBzKSB7XG4gICAgYXdhaXQgU0FGQVJJX0RSSVZFUl9QUk9DRVNTLmluaXQoKTtcblxuICAgIHRoaXMucHJveHkgPSBuZXcgU2FmYXJpUHJveHkoe1xuICAgICAgc2VydmVyOiAnMTI3LjAuMC4xJyxcbiAgICAgIHBvcnQ6IFNBRkFSSV9EUklWRVJfUFJPQ0VTUy5wb3J0LFxuICAgICAgYmFzZTogJycsXG4gICAgICBsb2c6IHRoaXMubG9nLFxuICAgICAga2VlcEFsaXZlOiB0cnVlLFxuICAgIH0pO1xuICAgIHRoaXMucHJveHkuZGlkUHJvY2Vzc0V4aXQgPSBmYWxzZTtcbiAgICBTQUZBUklfRFJJVkVSX1BST0NFU1MucHJvYy5vbignZXhpdCcsICgpID0+IHtcbiAgICAgIHRoaXMucHJveHkuZGlkUHJvY2Vzc0V4aXQgPSB0cnVlO1xuICAgIH0pO1xuXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHdhaXRGb3JDb25kaXRpb24oYXN5bmMgKCkgPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGF3YWl0IHRoaXMucHJveHkuY29tbWFuZCgnL3N0YXR1cycsICdHRVQnKTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgaWYgKHRoaXMucHJveHkuZGlkUHJvY2Vzc0V4aXQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnIubWVzc2FnZSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfSwge1xuICAgICAgICB3YWl0TXM6IFNUQVJUVVBfVElNRU9VVCxcbiAgICAgICAgaW50ZXJ2YWxNczogMTAwMCxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlmICgvQ29uZGl0aW9uIHVubWV0Ly50ZXN0KGUubWVzc2FnZSkpIHtcbiAgICAgICAgaWYgKFNBRkFSSV9EUklWRVJfUFJPQ0VTUy5pc1J1bm5pbmcpIHtcbiAgICAgICAgICAvLyBhdm9pZCBcImZyb3plblwiIHByb2Nlc3NlcyxcbiAgICAgICAgICBhd2FpdCBTQUZBUklfRFJJVkVSX1BST0NFU1Mua2lsbCgpO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgU2FmYXJpIERyaXZlciBzZXJ2ZXIgaXMgbm90IGxpc3RlbmluZyB3aXRoaW4gJHtTVEFSVFVQX1RJTUVPVVR9bXMgdGltZW91dC4gYCArXG4gICAgICAgICAgYE1ha2Ugc3VyZSBpdCBoYXMgYmVlbiBleGVjdXRlZCBtYW51YWxseSBhdCBsZWFzdCBvbmNlIHdpdGggJy0tZW5hYmxlJyBjb21tYW5kIGxpbmUgYXJndW1lbnQuIGAgK1xuICAgICAgICAgIGBDaGVjayB0aGUgc2VydmVyIGxvZyBmb3IgbW9yZSBkZXRhaWxzYCk7XG4gICAgICB9XG4gICAgICB0aHJvdyBlO1xuICAgIH1cblxuICAgIGF3YWl0IHRoaXMucHJveHkuY29tbWFuZCgnL3Nlc3Npb24nLCAnUE9TVCcsIHtcbiAgICAgIGNhcGFiaWxpdGllczoge1xuICAgICAgICBmaXJzdE1hdGNoOiBbe31dLFxuICAgICAgICBhbHdheXNNYXRjaDogY2FwcyxcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHN0b3AgKCkge1xuICAgIGlmICghdGhpcy5pc1J1bm5pbmcpIHtcbiAgICAgIHRoaXMubG9nLmluZm8oYCR7U0RfQklOQVJZfSBzZXNzaW9uIGNhbm5vdCBiZSBzdG9wcGVkLCBiZWNhdXNlIHRoZSBzZXJ2ZXIgaXMgbm90IHJ1bm5pbmdgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wcm94eT8uc2Vzc2lvbklkKSB7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCB0aGlzLnByb3h5LmNvbW1hbmQoYC9zZXNzaW9uLyR7dGhpcy5wcm94eS5zZXNzaW9uSWR9YCwgJ0RFTEVURScpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICB0aGlzLmxvZy5pbmZvKGAke1NEX0JJTkFSWX0gc2Vzc2lvbiBjYW5ub3QgYmUgZGVsZXRlZC4gT3JpZ2luYWwgZXJyb3I6ICR7ZS5tZXNzYWdlfWApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBTYWZhcmlEcml2ZXJTZXJ2ZXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsTUFBTUEsU0FBUyxHQUFHLGNBQWxCO0FBQ0EsTUFBTUMsZUFBZSxHQUFHLEtBQXhCO0FBQ0EsTUFBTUMsaUJBQWlCLEdBQUcsQ0FBQyxJQUFELEVBQU8sSUFBUCxDQUExQjs7QUFHQSxNQUFNQyxtQkFBbUIsR0FBR0MsYUFBQSxDQUFL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
|
package/build/lib/utils.js
CHANGED
|
@@ -30,4 +30,4 @@ function formatCapsForServer(caps) {
|
|
|
30
30
|
}require('source-map-support').install();
|
|
31
31
|
|
|
32
32
|
|
|
33
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL3V0aWxzLmpzIiwibmFtZXMiOlsiU0FGQVJJX0NBUF9QUkVGSVhFUyIsImZvcm1hdENhcHNGb3JTZXJ2ZXIiLCJjYXBzIiwicmVzdWx0IiwiYnJvd3Nlck5hbWUiLCJicm93c2VyVmVyc2lvbiIsInBsYXRmb3JtTmFtZSIsIm5hbWUiLCJ2YWx1ZSIsIl8iLCJ0b1BhaXJzIiwic29tZSIsInByZWZpeCIsInN0YXJ0c1dpdGgiXSwic291cmNlUm9vdCI6Ii4uLy4uIiwic291cmNlcyI6WyJsaWIvdXRpbHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxuY29uc3QgU0FGQVJJX0NBUF9QUkVGSVhFUyA9IFsnc2FmYXJpOicsICd3ZWJraXQ6J107XG5cbmZ1bmN0aW9uIGZvcm1hdENhcHNGb3JTZXJ2ZXIgKGNhcHMpIHtcbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIGJyb3dzZXJOYW1lOiAnU2FmYXJpJyxcbiAgICBicm93c2VyVmVyc2lvbjogY2Fwcy5icm93c2VyVmVyc2lvbixcbiAgICBwbGF0Zm9ybU5hbWU6IGNhcHMucGxhdGZvcm1OYW1lIHx8ICdpT1MnLFxuICB9O1xuICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgXy50b1BhaXJzKGNhcHMpKSB7XG4gICAgaWYgKFNBRkFSSV9DQVBfUFJFRklYRVMuc29tZSgocHJlZml4KSA9PiBuYW1lLnN0YXJ0c1dpdGgocHJlZml4KSkpIHtcbiAgICAgIHJlc3VsdFtuYW1lXSA9IHZhbHVlO1xuICAgIH1cbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgeyBmb3JtYXRDYXBzRm9yU2VydmVyIH07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBRUEsTUFBTUEsbUJBQW1CLEdBQUcsQ0FBQyxTQUFELEVBQVksU0FBWixDQUE1Qjs7QUFFQSxTQUFTQyxtQkFBVCxDQUE4QkMsSUFBOUIsRUFBb0M7RUFDbEMsTUFBTUMsTUFBTSxHQUFHO0lBQ2JDLFdBQVcsRUFBRSxRQURBO0lBRWJDLGNBQWMsRUFBRUgsSUFBSSxDQUFDRyxjQUZSO0lBR2JDLFlBQVksRUFBRUosSUFBSSxDQUFDSSxZQUFMLElBQXFCO0VBSHRCLENBQWY7O0VBS0EsS0FBSyxNQUFNLENBQUNDLElBQUQsRUFBT0MsS0FBUCxDQUFYLElBQTRCQyxlQUFBLENBQUVDLE9BQUYsQ0FBVVIsSUFBVixDQUE1QixFQUE2QztJQUMzQyxJQUFJRixtQkFBbUIsQ0FBQ1csSUFBcEIsQ0FBMEJDLE1BQUQsSUFBWUwsSUFBSSxDQUFDTSxVQUFMLENBQWdCRCxNQUFoQixDQUFyQyxDQUFKLEVBQW1FO01BQ2pFVCxNQUFNLENBQUNJLElBQUQsQ0FBTixHQUFlQyxLQUFmO0lBQ0Q7RUFDRjs7RUFDRCxPQUFPTCxNQUFQO0FBQ0QifQ==
|
|
@@ -6,7 +6,7 @@ require("source-map-support/register");
|
|
|
6
6
|
|
|
7
7
|
var _webdriverio = require("webdriverio");
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _server = require("../server");
|
|
10
10
|
|
|
11
11
|
var _chaiAsPromised = _interopRequireDefault(require("chai-as-promised"));
|
|
12
12
|
|
|
@@ -20,14 +20,15 @@ _chai.default.use(_chaiAsPromised.default);
|
|
|
20
20
|
|
|
21
21
|
const CAPS = {
|
|
22
22
|
browserName: 'AppiumSafari',
|
|
23
|
-
platformName: 'mac'
|
|
23
|
+
platformName: 'mac',
|
|
24
|
+
'appium:automationName': 'safari'
|
|
24
25
|
};
|
|
25
26
|
describe('Desktop SafariDriver', function () {
|
|
26
27
|
this.timeout(_utils.MOCHA_TIMEOUT);
|
|
27
28
|
let server;
|
|
28
29
|
let driver;
|
|
29
30
|
before(async function () {
|
|
30
|
-
server = await (0,
|
|
31
|
+
server = await (0, _server.startServer)(_utils.PORT, _utils.HOST);
|
|
31
32
|
});
|
|
32
33
|
after(async function () {
|
|
33
34
|
if (server) {
|
|
@@ -56,4 +57,4 @@ describe('Desktop SafariDriver', function () {
|
|
|
56
57
|
});require('source-map-support').install();
|
|
57
58
|
|
|
58
59
|
|
|
59
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC9mdW5jdGlvbmFsL2Rlc2t0b3AtZHJpdmVyLWUyZS1zcGVjcy5qcyIsIm5hbWVzIjpbImNoYWkiLCJzaG91bGQiLCJ1c2UiLCJjaGFpQXNQcm9taXNlZCIsIkNBUFMiLCJicm93c2VyTmFtZSIsInBsYXRmb3JtTmFtZSIsImRlc2NyaWJlIiwidGltZW91dCIsIk1PQ0hBX1RJTUVPVVQiLCJzZXJ2ZXIiLCJkcml2ZXIiLCJiZWZvcmUiLCJzdGFydFNlcnZlciIsIlBPUlQiLCJIT1NUIiwiYWZ0ZXIiLCJjbG9zZSIsImJlZm9yZUVhY2giLCJyZW1vdGUiLCJob3N0bmFtZSIsInBvcnQiLCJjYXBhYmlsaXRpZXMiLCJhZnRlckVhY2giLCJkZWxldGVTZXNzaW9uIiwiaXQiLCJ1cmwiLCJidXR0b24iLCIkIiwiZ2V0VGV4dCIsImV2ZW50dWFsbHkiLCJlcWwiXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uIiwic291cmNlcyI6WyJ0ZXN0L2Z1bmN0aW9uYWwvZGVza3RvcC1kcml2ZXItZTJlLXNwZWNzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlbW90ZSB9IGZyb20gJ3dlYmRyaXZlcmlvJztcbmltcG9ydCB7IHN0YXJ0U2VydmVyIH0gZnJvbSAnLi4vc2VydmVyJztcbmltcG9ydCBjaGFpQXNQcm9taXNlZCBmcm9tICdjaGFpLWFzLXByb21pc2VkJztcbmltcG9ydCBjaGFpIGZyb20gJ2NoYWknO1xuaW1wb3J0IHsgSE9TVCwgUE9SVCwgTU9DSEFfVElNRU9VVCB9IGZyb20gJy4uL3V0aWxzJztcblxuY2hhaS5zaG91bGQoKTtcbmNoYWkudXNlKGNoYWlBc1Byb21pc2VkKTtcblxuXG5jb25zdCBDQVBTID0ge1xuICBicm93c2VyTmFtZTogJ0FwcGl1bVNhZmFyaScsXG4gIHBsYXRmb3JtTmFtZTogJ21hYycsXG4gICdhcHBpdW06YXV0b21hdGlvbk5hbWUnOiAnc2FmYXJpJyxcbn07XG5cbmRlc2NyaWJlKCdEZXNrdG9wIFNhZmFyaURyaXZlcicsIGZ1bmN0aW9uICgpIHtcbiAgdGhpcy50aW1lb3V0KE1PQ0hBX1RJTUVPVVQpO1xuXG4gIGxldCBzZXJ2ZXI7XG4gIGxldCBkcml2ZXI7XG4gIGJlZm9yZShhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgc2VydmVyID0gYXdhaXQgc3RhcnRTZXJ2ZXIoUE9SVCwgSE9TVCk7XG4gIH0pO1xuICBhZnRlcihhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKHNlcnZlcikge1xuICAgICAgYXdhaXQgc2VydmVyLmNsb3NlKCk7XG4gICAgICBzZXJ2ZXIgPSBudWxsO1xuICAgIH1cbiAgfSk7XG4gIGJlZm9yZUVhY2goYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGRyaXZlciA9IGF3YWl0IHJlbW90ZSh7XG4gICAgICBob3N0bmFtZTogSE9TVCxcbiAgICAgIHBvcnQ6IFBPUlQsXG4gICAgICBjYXBhYmlsaXRpZXM6IENBUFMsXG4gICAgfSk7XG4gIH0pO1xuICBhZnRlckVhY2goYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGlmIChkcml2ZXIpIHtcbiAgICAgIGF3YWl0IGRyaXZlci5kZWxldGVTZXNzaW9uKCk7XG4gICAgICBkcml2ZXIgPSBudWxsO1xuICAgIH1cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBzdGFydCBhbmQgc3RvcCBhIHNlc3Npb24nLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgYXdhaXQgZHJpdmVyLnVybCgnaHR0cHM6Ly9hcHBpdW0uaW8vJyk7XG4gICAgY29uc3QgYnV0dG9uID0gYXdhaXQgZHJpdmVyLiQoJyNkb3dubG9hZExpbmsnKTtcbiAgICBhd2FpdCBidXR0b24uZ2V0VGV4dCgpLnNob3VsZC5ldmVudHVhbGx5LmVxbCgnRG93bmxvYWQgQXBwaXVtJyk7XG4gIH0pO1xufSk7XG5cblxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQUEsYUFBQSxDQUFLQyxNQUFMOztBQUNBRCxhQUFBLENBQUtFLEdBQUwsQ0FBU0MsdUJBQVQ7O0FBR0EsTUFBTUMsSUFBSSxHQUFHO0VBQ1hDLFdBQVcsRUFBRSxjQURGO0VBRVhDLFlBQVksRUFBRSxLQUZIO0VBR1gseUJBQXlCO0FBSGQsQ0FBYjtBQU1BQyxRQUFRLENBQUMsc0JBQUQsRUFBeUIsWUFBWTtFQUMzQyxLQUFLQyxPQUFMLENBQWFDLG9CQUFiO0VBRUEsSUFBSUMsTUFBSjtFQUNBLElBQUlDLE1BQUo7RUFDQUMsTUFBTSxDQUFDLGtCQUFrQjtJQUN2QkYsTUFBTSxHQUFHLE1BQU0sSUFBQUcsbUJBQUEsRUFBWUMsV0FBWixFQUFrQkMsV0FBbEIsQ0FBZjtFQUNELENBRkssQ0FBTjtFQUdBQyxLQUFLLENBQUMsa0JBQWtCO0lBQ3RCLElBQUlOLE1BQUosRUFBWTtNQUNWLE1BQU1BLE1BQU0sQ0FBQ08sS0FBUCxFQUFOO01BQ0FQLE1BQU0sR0FBRyxJQUFUO0lBQ0Q7RUFDRixDQUxJLENBQUw7RUFNQVEsVUFBVSxDQUFDLGtCQUFrQjtJQUMzQlAsTUFBTSxHQUFHLE1BQU0sSUFBQVEsbUJBQUEsRUFBTztNQUNwQkMsUUFBUSxFQUFFTCxXQURVO01BRXBCTSxJQUFJLEVBQUVQLFdBRmM7TUFHcEJRLFlBQVksRUFBRWxCO0lBSE0sQ0FBUCxDQUFmO0VBS0QsQ0FOUyxDQUFWO0VBT0FtQixTQUFTLENBQUMsa0JBQWtCO0lBQzFCLElBQUlaLE1BQUosRUFBWTtNQUNWLE1BQU1BLE1BQU0sQ0FBQ2EsYUFBUCxFQUFOO01BQ0FiLE1BQU0sR0FBRyxJQUFUO0lBQ0Q7RUFDRixDQUxRLENBQVQ7RUFPQWMsRUFBRSxDQUFDLGlDQUFELEVBQW9DLGtCQUFrQjtJQUN0RCxNQUFNZCxNQUFNLENBQUNlLEdBQVAsQ0FBVyxvQkFBWCxDQUFOO0lBQ0EsTUFBTUMsTUFBTSxHQUFHLE1BQU1oQixNQUFNLENBQUNpQixDQUFQLENBQVMsZUFBVCxDQUFyQjtJQUNBLE1BQU1ELE1BQU0sQ0FBQ0UsT0FBUCxHQUFpQjVCLE1BQWpCLENBQXdCNkIsVUFBeEIsQ0FBbUNDLEdBQW5DLENBQXVDLGlCQUF2QyxDQUFOO0VBQ0QsQ0FKQyxDQUFGO0FBS0QsQ0FqQ08sQ0FBUiJ9
|
|
@@ -6,7 +6,7 @@ require("source-map-support/register");
|
|
|
6
6
|
|
|
7
7
|
var _webdriverio = require("webdriverio");
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _server = require("../server");
|
|
10
10
|
|
|
11
11
|
var _chaiAsPromised = _interopRequireDefault(require("chai-as-promised"));
|
|
12
12
|
|
|
@@ -25,6 +25,7 @@ const DEVICE_NAME = process.env.DEVICE_NAME || 'iPhone 11 Pro Max';
|
|
|
25
25
|
const CAPS = {
|
|
26
26
|
browserName: 'AppiumSafari',
|
|
27
27
|
platformName: 'ios',
|
|
28
|
+
'appium:automationName': 'safari',
|
|
28
29
|
'safari:useSimulator': true,
|
|
29
30
|
'safari:platformVersion': PLATFORM_VERSION,
|
|
30
31
|
'safari:deviceName': DEVICE_NAME
|
|
@@ -54,7 +55,7 @@ describe('Mobile SafariDriver', function () {
|
|
|
54
55
|
await simctl.startBootMonitor();
|
|
55
56
|
}
|
|
56
57
|
|
|
57
|
-
server = await (0,
|
|
58
|
+
server = await (0, _server.startServer)(_utils.PORT, _utils.HOST);
|
|
58
59
|
});
|
|
59
60
|
after(async function () {
|
|
60
61
|
if (server) {
|
|
@@ -83,4 +84,4 @@ describe('Mobile SafariDriver', function () {
|
|
|
83
84
|
});require('source-map-support').install();
|
|
84
85
|
|
|
85
86
|
|
|
86
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC9mdW5jdGlvbmFsL21vYmlsZS1kcml2ZXItZTJlLXNwZWNzLmpzIiwibmFtZXMiOlsiY2hhaSIsInNob3VsZCIsInVzZSIsImNoYWlBc1Byb21pc2VkIiwiUExBVEZPUk1fVkVSU0lPTiIsInByb2Nlc3MiLCJlbnYiLCJERVZJQ0VfTkFNRSIsIkNBUFMiLCJicm93c2VyTmFtZSIsInBsYXRmb3JtTmFtZSIsImRlc2NyaWJlIiwidGltZW91dCIsIk1PQ0hBX1RJTUVPVVQiLCJzZXJ2ZXIiLCJkcml2ZXIiLCJiZWZvcmUiLCJDSSIsInNraXAiLCJzaW1jdGwiLCJTaW1jdGwiLCJhbGxEZXZpY2VzIiwiZ2V0RGV2aWNlcyIsImRldmljZSIsImZpbmQiLCJuYW1lIiwiRXJyb3IiLCJzdGF0ZSIsInVkaWQiLCJib290RGV2aWNlIiwic3RhcnRCb290TW9uaXRvciIsInN0YXJ0U2VydmVyIiwiUE9SVCIsIkhPU1QiLCJhZnRlciIsImNsb3NlIiwiYmVmb3JlRWFjaCIsInJlbW90ZSIsImhvc3RuYW1lIiwicG9ydCIsImNhcGFiaWxpdGllcyIsImFmdGVyRWFjaCIsImRlbGV0ZVNlc3Npb24iLCJpdCIsInVybCIsImJ1dHRvbiIsIiQiLCJnZXRUZXh0IiwiZXZlbnR1YWxseSIsImVxbCJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4iLCJzb3VyY2VzIjpbInRlc3QvZnVuY3Rpb25hbC9tb2JpbGUtZHJpdmVyLWUyZS1zcGVjcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZW1vdGUgfSBmcm9tICd3ZWJkcml2ZXJpbyc7XG5pbXBvcnQgeyBzdGFydFNlcnZlciB9IGZyb20gJy4uL3NlcnZlcic7XG5pbXBvcnQgY2hhaUFzUHJvbWlzZWQgZnJvbSAnY2hhaS1hcy1wcm9taXNlZCc7XG5pbXBvcnQgY2hhaSBmcm9tICdjaGFpJztcbmltcG9ydCBTaW1jdGwgZnJvbSAnbm9kZS1zaW1jdGwnO1xuaW1wb3J0IHsgSE9TVCwgUE9SVCwgTU9DSEFfVElNRU9VVCB9IGZyb20gJy4uL3V0aWxzJztcblxuY2hhaS5zaG91bGQoKTtcbmNoYWkudXNlKGNoYWlBc1Byb21pc2VkKTtcblxuY29uc3QgUExBVEZPUk1fVkVSU0lPTiA9IHByb2Nlc3MuZW52LlBMQVRGT1JNX1ZFUlNJT04gfHwgJzE0LjEnO1xuY29uc3QgREVWSUNFX05BTUUgPSBwcm9jZXNzLmVudi5ERVZJQ0VfTkFNRSB8fCAnaVBob25lIDExIFBybyBNYXgnO1xuY29uc3QgQ0FQUyA9IHtcbiAgYnJvd3Nlck5hbWU6ICdBcHBpdW1TYWZhcmknLFxuICBwbGF0Zm9ybU5hbWU6ICdpb3MnLFxuICAnYXBwaXVtOmF1dG9tYXRpb25OYW1lJzogJ3NhZmFyaScsXG4gICdzYWZhcmk6dXNlU2ltdWxhdG9yJzogdHJ1ZSxcbiAgJ3NhZmFyaTpwbGF0Zm9ybVZlcnNpb24nOiBQTEFURk9STV9WRVJTSU9OLFxuICAnc2FmYXJpOmRldmljZU5hbWUnOiBERVZJQ0VfTkFNRSxcbn07XG5cbmRlc2NyaWJlKCdNb2JpbGUgU2FmYXJpRHJpdmVyJywgZnVuY3Rpb24gKCkge1xuICB0aGlzLnRpbWVvdXQoTU9DSEFfVElNRU9VVCk7XG5cbiAgbGV0IHNlcnZlcjtcbiAgbGV0IGRyaXZlcjtcbiAgYmVmb3JlKGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuQ0kpIHtcbiAgICAgIC8vIEluIEF6dXJlIENJIHRoZSBzdHVmZiB1bmV4cGVjdGVkbHkgZmFpbHMgd2l0aFxuICAgICAgLy8gXCJUaGUgZGV2aWNlIGlzIG5vdCBjb25maWd1cmVkIHRvIGFsbG93IHJlbW90ZSBjb250cm9sIHZpYSBXZWJEcml2ZXIuIFRvIGZpeCB0aGlzLCB0b2dnbGUgJ0FsbG93IFJlbW90ZSBBdXRvbWF0aW9uJyBpbiBTYWZhcmkncyBzZXR0aW5ncyAoU2V0dGluZ3MgQXBwID4gU2FmYXJpID4gQWR2YW5jZWQpLlwiXG4gICAgICAvLyBlcnJvclxuICAgICAgcmV0dXJuIHRoaXMuc2tpcCgpO1xuICAgIH1cblxuICAgIC8vIFByZWJvb3QgU2ltdWxhdG9yIHRvIGF2b2lkIHVuZXhwZWN0ZWQgdGltZW91dHNcbiAgICBjb25zdCBzaW1jdGwgPSBuZXcgU2ltY3RsKCk7XG4gICAgY29uc3QgYWxsRGV2aWNlcyA9IGF3YWl0IHNpbWN0bC5nZXREZXZpY2VzKFBMQVRGT1JNX1ZFUlNJT04sICdpT1MnKTtcbiAgICBjb25zdCBkZXZpY2UgPSBhbGxEZXZpY2VzLmZpbmQoKHtuYW1lfSkgPT4gbmFtZSA9PT0gREVWSUNFX05BTUUpO1xuICAgIGlmICghZGV2aWNlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBmaW5kICcke0RFVklDRV9OQU1FfScgU2ltdWxhdG9yICgke1BMQVRGT1JNX1ZFUlNJT059KWApO1xuICAgIH1cbiAgICBpZiAoZGV2aWNlLnN0YXRlICE9PSAnQm9vdGVkJykge1xuICAgICAgc2ltY3RsLnVkaWQgPSBkZXZpY2UudWRpZDtcbiAgICAgIGF3YWl0IHNpbWN0bC5ib290RGV2aWNlKCk7XG4gICAgICBhd2FpdCBzaW1jdGwuc3RhcnRCb290TW9uaXRvcigpO1xuICAgIH1cblxuICAgIHNlcnZlciA9IGF3YWl0IHN0YXJ0U2VydmVyKFBPUlQsIEhPU1QpO1xuICB9KTtcbiAgYWZ0ZXIoYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGlmIChzZXJ2ZXIpIHtcbiAgICAgIGF3YWl0IHNlcnZlci5jbG9zZSgpO1xuICAgICAgc2VydmVyID0gbnVsbDtcbiAgICB9XG4gIH0pO1xuICBiZWZvcmVFYWNoKGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBkcml2ZXIgPSBhd2FpdCByZW1vdGUoe1xuICAgICAgaG9zdG5hbWU6IEhPU1QsXG4gICAgICBwb3J0OiBQT1JULFxuICAgICAgY2FwYWJpbGl0aWVzOiBDQVBTLFxuICAgIH0pO1xuICB9KTtcbiAgYWZ0ZXJFYWNoKGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBpZiAoZHJpdmVyKSB7XG4gICAgICBhd2FpdCBkcml2ZXIuZGVsZXRlU2Vzc2lvbigpO1xuICAgICAgZHJpdmVyID0gbnVsbDtcbiAgICB9XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgc3RhcnQgYW5kIHN0b3AgYSBzZXNzaW9uJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGF3YWl0IGRyaXZlci51cmwoJ2h0dHBzOi8vYXBwaXVtLmlvLycpO1xuICAgIGNvbnN0IGJ1dHRvbiA9IGF3YWl0IGRyaXZlci4kKCcjZG93bmxvYWRMaW5rJyk7XG4gICAgYXdhaXQgYnV0dG9uLmdldFRleHQoKS5zaG91bGQuZXZlbnR1YWxseS5lcWwoJ0Rvd25sb2FkIEFwcGl1bScpO1xuICB9KTtcbn0pO1xuXG5cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUFBLGFBQUEsQ0FBS0MsTUFBTDs7QUFDQUQsYUFBQSxDQUFLRSxHQUFMLENBQVNDLHVCQUFUOztBQUVBLE1BQU1DLGdCQUFnQixHQUFHQyxPQUFPLENBQUNDLEdBQVIsQ0FBWUYsZ0JBQVosSUFBZ0MsTUFBekQ7QUFDQSxNQUFNRyxXQUFXLEdBQUdGLE9BQU8sQ0FBQ0MsR0FBUixDQUFZQyxXQUFaLElBQTJCLG1CQUEvQztBQUNBLE1BQU1DLElBQUksR0FBRztFQUNYQyxXQUFXLEVBQUUsY0FERjtFQUVYQyxZQUFZLEVBQUUsS0FGSDtFQUdYLHlCQUF5QixRQUhkO0VBSVgsdUJBQXVCLElBSlo7RUFLWCwwQkFBMEJOLGdCQUxmO0VBTVgscUJBQXFCRztBQU5WLENBQWI7QUFTQUksUUFBUSxDQUFDLHFCQUFELEVBQXdCLFlBQVk7RUFDMUMsS0FBS0MsT0FBTCxDQUFhQyxvQkFBYjtFQUVBLElBQUlDLE1BQUo7RUFDQSxJQUFJQyxNQUFKO0VBQ0FDLE1BQU0sQ0FBQyxrQkFBa0I7SUFDdkIsSUFBSVgsT0FBTyxDQUFDQyxHQUFSLENBQVlXLEVBQWhCLEVBQW9CO01BSWxCLE9BQU8sS0FBS0MsSUFBTCxFQUFQO0lBQ0Q7O0lBR0QsTUFBTUMsTUFBTSxHQUFHLElBQUlDLG1CQUFKLEVBQWY7SUFDQSxNQUFNQyxVQUFVLEdBQUcsTUFBTUYsTUFBTSxDQUFDRyxVQUFQLENBQWtCbEIsZ0JBQWxCLEVBQW9DLEtBQXBDLENBQXpCO0lBQ0EsTUFBTW1CLE1BQU0sR0FBR0YsVUFBVSxDQUFDRyxJQUFYLENBQWdCLENBQUM7TUFBQ0M7SUFBRCxDQUFELEtBQVlBLElBQUksS0FBS2xCLFdBQXJDLENBQWY7O0lBQ0EsSUFBSSxDQUFDZ0IsTUFBTCxFQUFhO01BQ1gsTUFBTSxJQUFJRyxLQUFKLENBQVcsZ0JBQWVuQixXQUFZLGdCQUFlSCxnQkFBaUIsR0FBdEUsQ0FBTjtJQUNEOztJQUNELElBQUltQixNQUFNLENBQUNJLEtBQVAsS0FBaUIsUUFBckIsRUFBK0I7TUFDN0JSLE1BQU0sQ0FBQ1MsSUFBUCxHQUFjTCxNQUFNLENBQUNLLElBQXJCO01BQ0EsTUFBTVQsTUFBTSxDQUFDVSxVQUFQLEVBQU47TUFDQSxNQUFNVixNQUFNLENBQUNXLGdCQUFQLEVBQU47SUFDRDs7SUFFRGhCLE1BQU0sR0FBRyxNQUFNLElBQUFpQixtQkFBQSxFQUFZQyxXQUFaLEVBQWtCQyxXQUFsQixDQUFmO0VBQ0QsQ0F0QkssQ0FBTjtFQXVCQUMsS0FBSyxDQUFDLGtCQUFrQjtJQUN0QixJQUFJcEIsTUFBSixFQUFZO01BQ1YsTUFBTUEsTUFBTSxDQUFDcUIsS0FBUCxFQUFOO01BQ0FyQixNQUFNLEdBQUcsSUFBVDtJQUNEO0VBQ0YsQ0FMSSxDQUFMO0VBTUFzQixVQUFVLENBQUMsa0JBQWtCO0lBQzNCckIsTUFBTSxHQUFHLE1BQU0sSUFBQXNCLG1CQUFBLEVBQU87TUFDcEJDLFFBQVEsRUFBRUwsV0FEVTtNQUVwQk0sSUFBSSxFQUFFUCxXQUZjO01BR3BCUSxZQUFZLEVBQUVoQztJQUhNLENBQVAsQ0FBZjtFQUtELENBTlMsQ0FBVjtFQU9BaUMsU0FBUyxDQUFDLGtCQUFrQjtJQUMxQixJQUFJMUIsTUFBSixFQUFZO01BQ1YsTUFBTUEsTUFBTSxDQUFDMkIsYUFBUCxFQUFOO01BQ0EzQixNQUFNLEdBQUcsSUFBVDtJQUNEO0VBQ0YsQ0FMUSxDQUFUO0VBT0E0QixFQUFFLENBQUMsaUNBQUQsRUFBb0Msa0JBQWtCO0lBQ3RELE1BQU01QixNQUFNLENBQUM2QixHQUFQLENBQVcsb0JBQVgsQ0FBTjtJQUNBLE1BQU1DLE1BQU0sR0FBRyxNQUFNOUIsTUFBTSxDQUFDK0IsQ0FBUCxDQUFTLGVBQVQsQ0FBckI7SUFDQSxNQUFNRCxNQUFNLENBQUNFLE9BQVAsR0FBaUI5QyxNQUFqQixDQUF3QitDLFVBQXhCLENBQW1DQyxHQUFuQyxDQUF1QyxpQkFBdkMsQ0FBTjtFQUNELENBSkMsQ0FBRjtBQUtELENBckRPLENBQVIifQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.startServer = startServer;
|
|
7
|
+
|
|
8
|
+
require("source-map-support/register");
|
|
9
|
+
|
|
10
|
+
var _appium = require("appium");
|
|
11
|
+
|
|
12
|
+
async function startServer(port, address, relaxedSecurityEnabled = false) {
|
|
13
|
+
return await (0, _appium.main)({
|
|
14
|
+
port,
|
|
15
|
+
address,
|
|
16
|
+
relaxedSecurityEnabled
|
|
17
|
+
});
|
|
18
|
+
}require('source-map-support').install();
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC9zZXJ2ZXIuanMiLCJuYW1lcyI6WyJzdGFydFNlcnZlciIsInBvcnQiLCJhZGRyZXNzIiwicmVsYXhlZFNlY3VyaXR5RW5hYmxlZCIsInN0YXJ0QXBwaXVtIl0sInNvdXJjZVJvb3QiOiIuLi8uLiIsInNvdXJjZXMiOlsidGVzdC9zZXJ2ZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWFpbiBhcyBzdGFydEFwcGl1bSB9IGZyb20gJ2FwcGl1bSc7XG5cbmFzeW5jIGZ1bmN0aW9uIHN0YXJ0U2VydmVyIChwb3J0LCBhZGRyZXNzLCByZWxheGVkU2VjdXJpdHlFbmFibGVkID0gZmFsc2UpIHtcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FwcGl1bS9hcHBpdW0vYmxvYi8yLjAvcGFja2FnZXMvc2NoZW1hL2xpYi9hcHBpdW0tY29uZmlnLnNjaGVtYS5qc29uXG4gIHJldHVybiBhd2FpdCBzdGFydEFwcGl1bSh7cG9ydCwgYWRkcmVzcywgcmVsYXhlZFNlY3VyaXR5RW5hYmxlZH0pO1xufVxuXG5leHBvcnQgeyBzdGFydFNlcnZlciB9O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFFQSxlQUFlQSxXQUFmLENBQTRCQyxJQUE1QixFQUFrQ0MsT0FBbEMsRUFBMkNDLHNCQUFzQixHQUFHLEtBQXBFLEVBQTJFO0VBRXpFLE9BQU8sTUFBTSxJQUFBQyxZQUFBLEVBQVk7SUFBQ0gsSUFBRDtJQUFPQyxPQUFQO0lBQWdCQztFQUFoQixDQUFaLENBQWI7QUFDRCJ9
|
|
@@ -17,4 +17,4 @@ describe('SafariDriver', function () {
|
|
|
17
17
|
});require('source-map-support').install();
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC91bml0L2RyaXZlci1zcGVjcy5qcyIsIm5hbWVzIjpbInNob3VsZCIsImNoYWkiLCJkZXNjcmliZSIsIml0IiwiZXhpc3QiLCJTYWZhcmlEcml2ZXIiXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uIiwic291cmNlcyI6WyJ0ZXN0L3VuaXQvZHJpdmVyLXNwZWNzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTYWZhcmlEcml2ZXIgZnJvbSAnLi4vLi4nO1xuaW1wb3J0IGNoYWkgZnJvbSAnY2hhaSc7XG5jb25zdCBzaG91bGQgPSBjaGFpLnNob3VsZCgpO1xuXG5kZXNjcmliZSgnU2FmYXJpRHJpdmVyJywgZnVuY3Rpb24gKCkge1xuICBpdCgnc2hvdWxkIGV4aXN0JywgZnVuY3Rpb24gKCkge1xuICAgIHNob3VsZC5leGlzdChTYWZhcmlEcml2ZXIpO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7QUFDQTs7QUFDQSxNQUFNQSxNQUFNLEdBQUdDLGFBQUEsQ0FBS0QsTUFBTCxFQUFmOztBQUVBRSxRQUFRLENBQUMsY0FBRCxFQUFpQixZQUFZO0VBQ25DQyxFQUFFLENBQUMsY0FBRCxFQUFpQixZQUFZO0lBQzdCSCxNQUFNLENBQUNJLEtBQVAsQ0FBYUMsU0FBYjtFQUNELENBRkMsQ0FBRjtBQUdELENBSk8sQ0FBUiJ9
|
|
@@ -48,4 +48,4 @@ describe('formatCapsForServer', function () {
|
|
|
48
48
|
});require('source-map-support').install();
|
|
49
49
|
|
|
50
50
|
|
|
51
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC91bml0L3V0aWxzLXNwZWNzLmpzIiwibmFtZXMiOlsiY2hhaSIsInNob3VsZCIsImRlc2NyaWJlIiwiaXQiLCJyZXN1bHQiLCJmb3JtYXRDYXBzRm9yU2VydmVyIiwiZXFsIiwiYnJvd3Nlck5hbWUiLCJicm93c2VyVmVyc2lvbiIsInVuZGVmaW5lZCIsInBsYXRmb3JtTmFtZSJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4iLCJzb3VyY2VzIjpbInRlc3QvdW5pdC91dGlscy1zcGVjcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXRDYXBzRm9yU2VydmVyIH0gZnJvbSAnLi4vLi4vbGliL3V0aWxzJztcbmltcG9ydCBjaGFpIGZyb20gJ2NoYWknO1xuXG5jaGFpLnNob3VsZCgpO1xuXG5kZXNjcmliZSgnZm9ybWF0Q2Fwc0ZvclNlcnZlcicsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJ3Nob3VsZCBmb3JtYXQgZW1wdHkgY2FwcycsIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCByZXN1bHQgPSBmb3JtYXRDYXBzRm9yU2VydmVyKHt9KTtcbiAgICByZXN1bHQuc2hvdWxkLmVxbCh7XG4gICAgICBicm93c2VyTmFtZTogJ1NhZmFyaScsXG4gICAgICBicm93c2VyVmVyc2lvbjogdW5kZWZpbmVkLFxuICAgICAgcGxhdGZvcm1OYW1lOiAnaU9TJyxcbiAgICB9KTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBhc3NpZ24gZGVmYXVsdCBjYXBzJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IHJlc3VsdCA9IGZvcm1hdENhcHNGb3JTZXJ2ZXIoe1xuICAgICAgYnJvd3Nlck5hbWU6ICd5b2xvJyxcbiAgICAgIGJyb3dzZXJWZXJzaW9uOiAnMTInLFxuICAgICAgcGxhdGZvcm1OYW1lOiAnbWFjJyxcbiAgICB9KTtcbiAgICByZXN1bHQuc2hvdWxkLmVxbCh7XG4gICAgICBicm93c2VyTmFtZTogJ1NhZmFyaScsXG4gICAgICBicm93c2VyVmVyc2lvbjogJzEyJyxcbiAgICAgIHBsYXRmb3JtTmFtZTogJ21hYycsXG4gICAgfSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgb25seSBwYXNzIGNhcHMgd2l0aCBzdXBwb3J0ZWQgcHJlZml4ZXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gZm9ybWF0Q2Fwc0ZvclNlcnZlcih7XG4gICAgICAnc2FmYXJpOmRldmljZVVESUQnOiAnMTIzNCcsXG4gICAgICAnd2Via2l0OnlvbG8nOiAnNTY3JyxcbiAgICAgICdhcHBpdW06YmFyJzogJzc4OScsXG4gICAgfSk7XG4gICAgcmVzdWx0LnNob3VsZC5lcWwoe1xuICAgICAgYnJvd3Nlck5hbWU6ICdTYWZhcmknLFxuICAgICAgYnJvd3NlclZlcnNpb246IHVuZGVmaW5lZCxcbiAgICAgIHBsYXRmb3JtTmFtZTogJ2lPUycsXG4gICAgICAnc2FmYXJpOmRldmljZVVESUQnOiAnMTIzNCcsXG4gICAgICAnd2Via2l0OnlvbG8nOiAnNTY3JyxcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0FBQ0E7O0FBRUFBLGFBQUEsQ0FBS0MsTUFBTDs7QUFFQUMsUUFBUSxDQUFDLHFCQUFELEVBQXdCLFlBQVk7RUFDMUNDLEVBQUUsQ0FBQywwQkFBRCxFQUE2QixZQUFZO0lBQ3pDLE1BQU1DLE1BQU0sR0FBRyxJQUFBQywwQkFBQSxFQUFvQixFQUFwQixDQUFmO0lBQ0FELE1BQU0sQ0FBQ0gsTUFBUCxDQUFjSyxHQUFkLENBQWtCO01BQ2hCQyxXQUFXLEVBQUUsUUFERztNQUVoQkMsY0FBYyxFQUFFQyxTQUZBO01BR2hCQyxZQUFZLEVBQUU7SUFIRSxDQUFsQjtFQUtELENBUEMsQ0FBRjtFQVNBUCxFQUFFLENBQUMsNEJBQUQsRUFBK0IsWUFBWTtJQUMzQyxNQUFNQyxNQUFNLEdBQUcsSUFBQUMsMEJBQUEsRUFBb0I7TUFDakNFLFdBQVcsRUFBRSxNQURvQjtNQUVqQ0MsY0FBYyxFQUFFLElBRmlCO01BR2pDRSxZQUFZLEVBQUU7SUFIbUIsQ0FBcEIsQ0FBZjtJQUtBTixNQUFNLENBQUNILE1BQVAsQ0FBY0ssR0FBZCxDQUFrQjtNQUNoQkMsV0FBVyxFQUFFLFFBREc7TUFFaEJDLGNBQWMsRUFBRSxJQUZBO01BR2hCRSxZQUFZLEVBQUU7SUFIRSxDQUFsQjtFQUtELENBWEMsQ0FBRjtFQWFBUCxFQUFFLENBQUMsK0NBQUQsRUFBa0QsWUFBWTtJQUM5RCxNQUFNQyxNQUFNLEdBQUcsSUFBQUMsMEJBQUEsRUFBb0I7TUFDakMscUJBQXFCLE1BRFk7TUFFakMsZUFBZSxLQUZrQjtNQUdqQyxjQUFjO0lBSG1CLENBQXBCLENBQWY7SUFLQUQsTUFBTSxDQUFDSCxNQUFQLENBQWNLLEdBQWQsQ0FBa0I7TUFDaEJDLFdBQVcsRUFBRSxRQURHO01BRWhCQyxjQUFjLEVBQUVDLFNBRkE7TUFHaEJDLFlBQVksRUFBRSxLQUhFO01BSWhCLHFCQUFxQixNQUpMO01BS2hCLGVBQWU7SUFMQyxDQUFsQjtFQU9ELENBYkMsQ0FBRjtBQWNELENBckNPLENBQVIifQ==
|
package/index.js
CHANGED
|
@@ -1,23 +1,4 @@
|
|
|
1
1
|
import SafariDriver from './lib/driver';
|
|
2
|
-
import { startServer } from './lib/server';
|
|
3
|
-
import { asyncify } from 'asyncbox';
|
|
4
|
-
|
|
5
|
-
const DEFAULT_HOST = 'localhost';
|
|
6
|
-
const DEFAULT_PORT = 4797;
|
|
7
|
-
|
|
8
|
-
async function main () {
|
|
9
|
-
const getArgValue = (argName) => {
|
|
10
|
-
const argIndex = process.argv.indexOf(argName);
|
|
11
|
-
return argIndex > 0 ? process.argv[argIndex + 1] : null;
|
|
12
|
-
};
|
|
13
|
-
const port = parseInt(getArgValue('--port'), 10) || DEFAULT_PORT;
|
|
14
|
-
const host = getArgValue('--host') || DEFAULT_HOST;
|
|
15
|
-
return await startServer(port, host);
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
if (require.main === module) {
|
|
19
|
-
asyncify(main);
|
|
20
|
-
}
|
|
21
2
|
|
|
22
3
|
export default SafariDriver;
|
|
23
|
-
export { SafariDriver
|
|
4
|
+
export { SafariDriver };
|
package/lib/commands/find.js
CHANGED