appium-espresso-driver 2.19.0 → 2.20.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/CHANGELOG.md +14 -0
- package/README.md +1 -0
- package/build/lib/server-builder.js +2 -2
- package/build/lib/server-builder.js.map +1 -1
- package/espresso-server/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk +0 -0
- package/espresso-server/app/build.gradle.kts +6 -5
- package/lib/server-builder.js +1 -0
- package/npm-shrinkwrap.json +50 -54
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
## [2.20.1](https://github.com/appium/appium-espresso-driver/compare/v2.20.0...v2.20.1) (2023-04-10)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Miscellaneous Chores
|
|
5
|
+
|
|
6
|
+
* **deps-dev:** bump rimraf from 4.4.1 to 5.0.0 ([#868](https://github.com/appium/appium-espresso-driver/issues/868)) ([67cfe30](https://github.com/appium/appium-espresso-driver/commit/67cfe30e1345cbb6ede1d975213179f074aa8151))
|
|
7
|
+
|
|
8
|
+
## [2.20.0](https://github.com/appium/appium-espresso-driver/compare/v2.19.0...v2.20.0) (2023-03-29)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* add ability to customize espresso version ([#866](https://github.com/appium/appium-espresso-driver/issues/866)) ([8b62ecb](https://github.com/appium/appium-espresso-driver/commit/8b62ecbf2be804b3fa4a41ecfa30c3d38e3942f3))
|
|
14
|
+
|
|
1
15
|
## [2.19.0](https://github.com/appium/appium-espresso-driver/compare/v2.18.1...v2.19.0) (2023-03-26)
|
|
2
16
|
|
|
3
17
|
|
package/README.md
CHANGED
|
@@ -247,6 +247,7 @@ minSdk | Minimum Android SDK version to compile the server for. By default the v
|
|
|
247
247
|
targetSdk | Target Android SDK version to compile the server for. By default the version from the app [build.gradle.kts](https://github.com/appium/appium-espresso-driver/blob/master/espresso-server/app/build.gradle.kts) is used | 28
|
|
248
248
|
kotlin | Kotlin version to compile the server for. By default the version from the [build.gradle.kts](https://github.com/appium/appium-espresso-driver/blob/master/espresso-server/build.gradle.kts) is used | '1.3.72'
|
|
249
249
|
composeVersion | The version for the Jetpack Compose dependencies to use for Espresso server building. By default the version from the [build.gradle.kts](https://github.com/appium/appium-espresso-driver/blob/master/espresso-server/build.gradle.kts) is used | '1.1.1'
|
|
250
|
+
espressoVersion | The version for the Espresso dependencies to use for Espresso server building. By default the version from the [build.gradle.kts](https://github.com/appium/appium-espresso-driver/blob/master/espresso-server/build.gradle.kts) is used | '3.5.0'
|
|
250
251
|
sourceCompatibility | The minimum version of JVM the project sources are compatible with. The default value is `VERSION_1_8` | VERSION_12
|
|
251
252
|
targetCompatibility | The target version of JVM the project sources are compatible with. The default value is `VERSION_1_8` | VERSION_12
|
|
252
253
|
jvmTarget | Target version of the generated JVM bytecode as a string. The default value is `1_8` | `1_10`
|
|
@@ -20,7 +20,7 @@ const GRADLE_URL_TEMPLATE = 'https\\://services.gradle.org/distributions/gradle-
|
|
|
20
20
|
exports.GRADLE_URL_TEMPLATE = GRADLE_URL_TEMPLATE;
|
|
21
21
|
const GRADLE_MAX_ERROR_LOG_LINES = 15;
|
|
22
22
|
const DEPENDENCY_PROP_NAMES = ['additionalAppDependencies', 'additionalAndroidTestDependencies'];
|
|
23
|
-
const VERSION_KEYS = [GRADLE_VERSION_KEY, 'androidGradlePlugin', 'compileSdk', 'buildTools', 'minSdk', 'targetSdk', 'kotlin', 'sourceCompatibility', 'targetCompatibility', 'jvmTarget', 'composeVersion', 'annotationVersion'];
|
|
23
|
+
const VERSION_KEYS = [GRADLE_VERSION_KEY, 'androidGradlePlugin', 'compileSdk', 'buildTools', 'minSdk', 'targetSdk', 'kotlin', 'sourceCompatibility', 'targetCompatibility', 'jvmTarget', 'composeVersion', 'espressoVersion', 'annotationVersion'];
|
|
24
24
|
exports.VERSION_KEYS = VERSION_KEYS;
|
|
25
25
|
function buildServerSigningConfig(args) {
|
|
26
26
|
return {
|
|
@@ -159,4 +159,4 @@ class ServerBuilder {
|
|
|
159
159
|
exports.ServerBuilder = ServerBuilder;
|
|
160
160
|
var _default = ServerBuilder;
|
|
161
161
|
exports.default = _default;
|
|
162
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdGVlbl9wcm9jZXNzIiwicmVxdWlyZSIsIl9zdXBwb3J0IiwiX2xvZGFzaCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcGF0aCIsIl9vcyIsIl91dGlscyIsIkdSQURMRV9WRVJTSU9OX0tFWSIsIkdSQURMRV9VUkxfUFJFRklYIiwiR1JBRExFX1VSTF9URU1QTEFURSIsImV4cG9ydHMiLCJHUkFETEVfTUFYX0VSUk9SX0xPR19MSU5FUyIsIkRFUEVOREVOQ1lfUFJPUF9OQU1FUyIsIlZFUlNJT05fS0VZUyIsImJ1aWxkU2VydmVyU2lnbmluZ0NvbmZpZyIsImFyZ3MiLCJ6aXBBbGlnbiIsImtleXN0b3JlRmlsZSIsImtleXN0b3JlUGFzc3dvcmQiLCJrZXlBbGlhcyIsImtleVBhc3N3b3JkIiwiU2VydmVyQnVpbGRlciIsImNvbnN0cnVjdG9yIiwibG9nIiwic2VydmVyUGF0aCIsInNob3dHcmFkbGVMb2ciLCJidWlsZENvbmZpZ3VyYXRpb24iLCJ2ZXJzaW9uQ29uZmlndXJhdGlvbiIsInRvb2xzVmVyc2lvbnMiLCJzZXJ2ZXJWZXJzaW9ucyIsIl8iLCJyZWR1Y2UiLCJhY2MiLCJ2YWx1ZSIsImtleSIsImluY2x1ZGVzIiwid2FybiIsInRlc3RBcHBQYWNrYWdlIiwic2lnbmluZ0NvbmZpZyIsInByb3BOYW1lIiwiYnVpbGQiLCJzZXRHcmFkbGVXcmFwcGVyVmVyc2lvbiIsImluc2VydEFkZGl0aW9uYWxEZXBlbmRlbmNpZXMiLCJydW5CdWlsZFByb2Nlc3MiLCJnZXRDb21tYW5kIiwiY21kIiwic3lzdGVtIiwiaXNXaW5kb3dzIiwicGF0aCIsInJlc29sdmUiLCJidWlsZFByb3BlcnR5IiwiZmlsdGVyIiwibWFwIiwic2VydmVyVmVyc2lvbiIsImdyYWRsZVByb3BlcnR5IiwiY2hhckF0IiwidG9VcHBlckNhc2UiLCJzbGljZSIsIkJvb2xlYW4iLCJwdXNoIiwia2V5cyIsInVwcGVyRmlyc3QiLCJrIiwidiIsInZlcnNpb24iLCJwcm9wZXJ0aWVzUGF0aCIsIm9yaWdpbmFsUHJvcGVydGllcyIsImZzIiwicmVhZEZpbGUiLCJuZXdQcm9wZXJ0aWVzIiwidXBkYXRlR3JhZGxlRGlzdFVybCIsIndyaXRlRmlsZSIsInByb3BlcnRpZXNDb250ZW50IiwicmVwbGFjZSIsIlJlZ0V4cCIsImVzY2FwZVJlZ0V4cCIsImhhc0FkZGl0aW9uYWxEZXBzIiwiaXNBcnJheSIsIkVycm9yIiwiaXNFbXB0eSIsImxpbmUiLCJ0cmltIiwiZGVwIiwidGVzdCIsImJ1aWxkUGF0aCIsImNvbmZpZ3VyYXRpb24iLCJwcmVmaXgiLCJkZXBzIiwiaW5mbyIsInVwZGF0ZURlcGVuZGVuY3lMaW5lcyIsImRlYnVnIiwiam9pbiIsImdyYWRsZWJ1aWxkIiwiU3ViUHJvY2VzcyIsImN3ZCIsInN0ZGlvIiwid2luZG93c1ZlcmJhdGltQXJndW1lbnRzIiwiYnVpbGRMYXN0TGluZXMiLCJsb2dNc2ciLCJvbiIsInN0YXJ0c1dpdGgiLCJFT0wiLCJsZW5ndGgiLCJzdGFydCIsImVyciIsIm1zZyIsIm1lc3NhZ2UiLCJlcnJvckFuZFRocm93IiwiX2RlZmF1bHQiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vbGliL3NlcnZlci1idWlsZGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YlByb2Nlc3MgfSBmcm9tICd0ZWVuX3Byb2Nlc3MnO1xuaW1wb3J0IHsgZnMsIHN5c3RlbSB9IGZyb20gJ2FwcGl1bS9zdXBwb3J0JztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IEVPTCB9IGZyb20gJ29zJztcbmltcG9ydCB7IHVwZGF0ZURlcGVuZGVuY3lMaW5lcyB9IGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBHUkFETEVfVkVSU0lPTl9LRVkgPSAnZ3JhZGxlJztcbmNvbnN0IEdSQURMRV9VUkxfUFJFRklYID0gJ2Rpc3RyaWJ1dGlvblVybD0nO1xuY29uc3QgR1JBRExFX1VSTF9URU1QTEFURSA9ICdodHRwc1xcXFw6Ly9zZXJ2aWNlcy5ncmFkbGUub3JnL2Rpc3RyaWJ1dGlvbnMvZ3JhZGxlLVZFUlNJT04tYWxsLnppcCc7XG5jb25zdCBHUkFETEVfTUFYX0VSUk9SX0xPR19MSU5FUyA9IDE1O1xuY29uc3QgREVQRU5ERU5DWV9QUk9QX05BTUVTID0gWydhZGRpdGlvbmFsQXBwRGVwZW5kZW5jaWVzJywgJ2FkZGl0aW9uYWxBbmRyb2lkVGVzdERlcGVuZGVuY2llcyddO1xuXG5jb25zdCBWRVJTSU9OX0tFWVMgPSBbXG4gIEdSQURMRV9WRVJTSU9OX0tFWSxcbiAgJ2FuZHJvaWRHcmFkbGVQbHVnaW4nLFxuICAnY29tcGlsZVNkaycsXG4gICdidWlsZFRvb2xzJyxcbiAgJ21pblNkaycsXG4gICd0YXJnZXRTZGsnLFxuICAna290bGluJyxcbiAgJ3NvdXJjZUNvbXBhdGliaWxpdHknLFxuICAndGFyZ2V0Q29tcGF0aWJpbGl0eScsXG4gICdqdm1UYXJnZXQnLFxuICAnY29tcG9zZVZlcnNpb24nLFxuICAnYW5ub3RhdGlvblZlcnNpb24nXG5dO1xuXG5mdW5jdGlvbiBidWlsZFNlcnZlclNpZ25pbmdDb25maWcgKGFyZ3MpIHtcbiAgcmV0dXJuIHtcbiAgICB6aXBBbGlnbjogdHJ1ZSxcbiAgICBrZXlzdG9yZUZpbGU6IGFyZ3Mua2V5c3RvcmVGaWxlLFxuICAgIGtleXN0b3JlUGFzc3dvcmQ6IGFyZ3Mua2V5c3RvcmVQYXNzd29yZCxcbiAgICBrZXlBbGlhczogYXJncy5rZXlBbGlhcyxcbiAgICBrZXlQYXNzd29yZDogYXJncy5rZXlQYXNzd29yZFxuICB9O1xufVxuXG5jbGFzcyBTZXJ2ZXJCdWlsZGVyIHtcbiAgY29uc3RydWN0b3IgKGxvZywgYXJncyA9IHt9KSB7XG4gICAgdGhpcy5sb2cgPSBsb2c7XG4gICAgdGhpcy5zZXJ2ZXJQYXRoID0gYXJncy5zZXJ2ZXJQYXRoO1xuICAgIHRoaXMuc2hvd0dyYWRsZUxvZyA9IGFyZ3Muc2hvd0dyYWRsZUxvZztcblxuICAgIGNvbnN0IGJ1aWxkQ29uZmlndXJhdGlvbiA9IGFyZ3MuYnVpbGRDb25maWd1cmF0aW9uIHx8IHt9O1xuXG4gICAgY29uc3QgdmVyc2lvbkNvbmZpZ3VyYXRpb24gPSBidWlsZENvbmZpZ3VyYXRpb24udG9vbHNWZXJzaW9ucyB8fCB7fTtcbiAgICB0aGlzLnNlcnZlclZlcnNpb25zID0gXy5yZWR1Y2UodmVyc2lvbkNvbmZpZ3VyYXRpb24sIChhY2MsIHZhbHVlLCBrZXkpID0+IHtcbiAgICAgIGlmIChWRVJTSU9OX0tFWVMuaW5jbHVkZXMoa2V5KSkge1xuICAgICAgICBhY2Nba2V5XSA9IHZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbG9nLndhcm4oYEdvdCB1bmV4cGVjdGVkICcke2tleX0nIGluIHRvb2xzVmVyc2lvbiBibG9jayBvZiB0aGUgYnVpbGQgY29uZmlndXJhdGlvbmApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGFjYztcbiAgICB9LCB7fSk7XG5cbiAgICB0aGlzLnRlc3RBcHBQYWNrYWdlID0gYXJncy50ZXN0QXBwUGFja2FnZTtcbiAgICB0aGlzLnNpZ25pbmdDb25maWcgPSBhcmdzLnNpZ25pbmdDb25maWc7XG5cbiAgICBmb3IgKGNvbnN0IHByb3BOYW1lIG9mIERFUEVOREVOQ1lfUFJPUF9OQU1FUykge1xuICAgICAgdGhpc1twcm9wTmFtZV0gPSBidWlsZENvbmZpZ3VyYXRpb25bcHJvcE5hbWVdIHx8IFtdO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGJ1aWxkICgpIHtcbiAgICBpZiAodGhpcy5zZXJ2ZXJWZXJzaW9uc1tHUkFETEVfVkVSU0lPTl9LRVldKSB7XG4gICAgICBhd2FpdCB0aGlzLnNldEdyYWRsZVdyYXBwZXJWZXJzaW9uKHRoaXMuc2VydmVyVmVyc2lvbnNbR1JBRExFX1ZFUlNJT05fS0VZXSk7XG4gICAgfVxuXG4gICAgYXdhaXQgdGhpcy5pbnNlcnRBZGRpdGlvbmFsRGVwZW5kZW5jaWVzKCk7XG5cbiAgICBhd2FpdCB0aGlzLnJ1bkJ1aWxkUHJvY2VzcygpO1xuICB9XG5cbiAgZ2V0Q29tbWFuZCAoKSB7XG4gICAgY29uc3QgY21kID0gc3lzdGVtLmlzV2luZG93cygpID8gJ2dyYWRsZXcuYmF0JyA6IHBhdGgucmVzb2x2ZSh0aGlzLnNlcnZlclBhdGgsICdncmFkbGV3Jyk7XG4gICAgY29uc3QgYnVpbGRQcm9wZXJ0eSA9IChrZXksIHZhbHVlKSA9PiB2YWx1ZSA/IGAtUCR7a2V5fT0ke3ZhbHVlfWAgOiBudWxsO1xuICAgIGxldCBhcmdzID0gVkVSU0lPTl9LRVlTXG4gICAgICAuZmlsdGVyKChrZXkpID0+IGtleSAhPT0gR1JBRExFX1ZFUlNJT05fS0VZKVxuICAgICAgLm1hcCgoa2V5KSA9PiB7XG4gICAgICAgIGNvbnN0IHNlcnZlclZlcnNpb24gPSB0aGlzLnNlcnZlclZlcnNpb25zW2tleV07XG4gICAgICAgIGNvbnN0IGdyYWRsZVByb3BlcnR5ID0gYGFwcGl1bSR7a2V5LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpfSR7a2V5LnNsaWNlKDEpfWA7XG4gICAgICAgIHJldHVybiBidWlsZFByb3BlcnR5KGdyYWRsZVByb3BlcnR5LCBzZXJ2ZXJWZXJzaW9uKTtcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKEJvb2xlYW4pO1xuXG4gICAgaWYgKHRoaXMuc2lnbmluZ0NvbmZpZykge1xuICAgICAgYXJncy5wdXNoKC4uLihcbiAgICAgICAgXy5rZXlzKHRoaXMuc2lnbmluZ0NvbmZpZylcbiAgICAgICAgLm1hcCgoa2V5KSA9PiBbYGFwcGl1bSR7Xy51cHBlckZpcnN0KGtleSl9YCwgdGhpcy5zaWduaW5nQ29uZmlnW2tleV1dKVxuICAgICAgICAubWFwKChbaywgdl0pID0+IGJ1aWxkUHJvcGVydHkoaywgdikpXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgICkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnRlc3RBcHBQYWNrYWdlKSB7XG4gICAgICBhcmdzLnB1c2goYnVpbGRQcm9wZXJ0eSgnYXBwaXVtVGFyZ2V0UGFja2FnZScsIHRoaXMudGVzdEFwcFBhY2thZ2UpKTtcbiAgICB9XG4gICAgYXJncy5wdXNoKCdhcHA6YXNzZW1ibGVBbmRyb2lkVGVzdCcpO1xuXG4gICAgcmV0dXJuIHtjbWQsIGFyZ3N9O1xuICB9XG5cbiAgYXN5bmMgc2V0R3JhZGxlV3JhcHBlclZlcnNpb24gKHZlcnNpb24pIHtcbiAgICBjb25zdCBwcm9wZXJ0aWVzUGF0aCA9IHBhdGgucmVzb2x2ZSh0aGlzLnNlcnZlclBhdGgsICdncmFkbGUnLCAnd3JhcHBlcicsICdncmFkbGUtd3JhcHBlci5wcm9wZXJ0aWVzJyk7XG4gICAgY29uc3Qgb3JpZ2luYWxQcm9wZXJ0aWVzID0gYXdhaXQgZnMucmVhZEZpbGUocHJvcGVydGllc1BhdGgsICd1dGY4Jyk7XG4gICAgY29uc3QgbmV3UHJvcGVydGllcyA9IHRoaXMudXBkYXRlR3JhZGxlRGlzdFVybChvcmlnaW5hbFByb3BlcnRpZXMsIHZlcnNpb24pO1xuICAgIGF3YWl0IGZzLndyaXRlRmlsZShwcm9wZXJ0aWVzUGF0aCwgbmV3UHJvcGVydGllcywgJ3V0ZjgnKTtcbiAgfVxuXG4gIHVwZGF0ZUdyYWRsZURpc3RVcmwgKHByb3BlcnRpZXNDb250ZW50LCB2ZXJzaW9uKSB7XG4gICAgcmV0dXJuIHByb3BlcnRpZXNDb250ZW50LnJlcGxhY2UoXG4gICAgICBuZXcgUmVnRXhwKGBeKCR7Xy5lc2NhcGVSZWdFeHAoR1JBRExFX1VSTF9QUkVGSVgpfSkuKyRgLCAnZ20nKSxcbiAgICAgIGAkMSR7R1JBRExFX1VSTF9URU1QTEFURS5yZXBsYWNlKCdWRVJTSU9OJywgdmVyc2lvbil9YFxuICAgICk7XG4gIH1cblxuICBhc3luYyBpbnNlcnRBZGRpdGlvbmFsRGVwZW5kZW5jaWVzICgpIHtcbiAgICBsZXQgaGFzQWRkaXRpb25hbERlcHMgPSBmYWxzZTtcbiAgICBmb3IgKGNvbnN0IHByb3BOYW1lIG9mIERFUEVOREVOQ1lfUFJPUF9OQU1FUykge1xuICAgICAgaWYgKCFfLmlzQXJyYXkodGhpc1twcm9wTmFtZV0pKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgJyR7cHJvcE5hbWV9JyBtdXN0IGJlIGFuIGFycmF5YCk7XG4gICAgICB9XG4gICAgICBpZiAoXy5pc0VtcHR5KHRoaXNbcHJvcE5hbWVdLmZpbHRlcigobGluZSkgPT4gXy50cmltKGxpbmUpKSkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGZvciAoY29uc3QgZGVwIG9mIHRoaXNbcHJvcE5hbWVdKSB7XG4gICAgICAgIGlmICgvW1xccydcXFxcJF0vLnRlc3QoZGVwKSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignU2luZ2xlIHF1b3RlcywgZG9sbGFyIGNoYXJhY3RlcnMgYW5kIHdoaXRlc3BhY2UgY2hhcmFjdGVycycgK1xuICAgICAgICAgICAgYCBhcmUgZGlzYWxsb3dlZCBpbiBhZGRpdGlvbmFsIGRlcGVuZGVuY2llczogJHtkZXB9YCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGhhc0FkZGl0aW9uYWxEZXBzID0gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKCFoYXNBZGRpdGlvbmFsRGVwcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGJ1aWxkUGF0aCA9IHBhdGgucmVzb2x2ZSh0aGlzLnNlcnZlclBhdGgsICdhcHAnLCAnYnVpbGQuZ3JhZGxlLmt0cycpO1xuICAgIGxldCBjb25maWd1cmF0aW9uID0gYXdhaXQgZnMucmVhZEZpbGUoYnVpbGRQYXRoLCAndXRmOCcpO1xuICAgIGZvciAoY29uc3QgcHJvcE5hbWUgb2YgREVQRU5ERU5DWV9QUk9QX05BTUVTKSB7XG4gICAgICBjb25zdCBwcmVmaXggPSBwcm9wTmFtZSA9PT0gREVQRU5ERU5DWV9QUk9QX05BTUVTWzBdXG4gICAgICAgID8gJ2ltcGxlbWVudGF0aW9uJ1xuICAgICAgICA6ICdhbmRyb2lkVGVzdEltcGxlbWVudGF0aW9uJztcbiAgICAgIGNvbnN0IGRlcHMgPSB0aGlzW3Byb3BOYW1lXVxuICAgICAgICAuZmlsdGVyKChsaW5lKSA9PiBfLnRyaW0obGluZSkpXG4gICAgICAgIC5tYXAoKGxpbmUpID0+IGAke3ByZWZpeH0oXCIke2xpbmV9XCIpYCk7XG4gICAgICBpZiAoXy5pc0VtcHR5KGRlcHMpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmxvZy5pbmZvKGBBZGRpbmcgdGhlIGZvbGxvd2luZyAke3Byb3BOYW1lfSB0byBidWlsZC5ncmFkbGUua3RzOiAke2RlcHN9YCk7XG4gICAgICBjb25maWd1cmF0aW9uID0gdXBkYXRlRGVwZW5kZW5jeUxpbmVzKGNvbmZpZ3VyYXRpb24sIHByb3BOYW1lLCBkZXBzKTtcbiAgICB9XG4gICAgYXdhaXQgZnMud3JpdGVGaWxlKGJ1aWxkUGF0aCwgY29uZmlndXJhdGlvbiwgJ3V0ZjgnKTtcbiAgfVxuXG4gIGFzeW5jIHJ1bkJ1aWxkUHJvY2VzcyAoKSB7XG4gICAgY29uc3Qge2NtZCwgYXJnc30gPSB0aGlzLmdldENvbW1hbmQoKTtcbiAgICB0aGlzLmxvZy5kZWJ1ZyhgQmVnaW5uaW5nIGJ1aWxkIHdpdGggY29tbWFuZCAnJHtjbWR9ICR7YXJncy5qb2luKCcgJyl9JyBgICtcbiAgICAgIGBpbiBkaXJlY3RvcnkgJyR7dGhpcy5zZXJ2ZXJQYXRofSdgKTtcbiAgICBjb25zdCBncmFkbGVidWlsZCA9IG5ldyBTdWJQcm9jZXNzKGNtZCwgYXJncywge1xuICAgICAgY3dkOiB0aGlzLnNlcnZlclBhdGgsXG4gICAgICBzdGRpbzogWydpZ25vcmUnLCAncGlwZScsICdwaXBlJ10sXG4gICAgICB3aW5kb3dzVmVyYmF0aW1Bcmd1bWVudHM6IHRydWVcbiAgICB9KTtcbiAgICBsZXQgYnVpbGRMYXN0TGluZXMgPSBbXTtcblxuICAgIGNvbnN0IGxvZ01zZyA9IGBPdXRwdXQgZnJvbSBHcmFkbGUgJHt0aGlzLnNob3dHcmFkbGVMb2cgPyAnd2lsbCcgOiAnd2lsbCBub3QnfSBiZSBsb2dnZWRgO1xuICAgIHRoaXMubG9nLmRlYnVnKGAke2xvZ01zZ30uIFRvIGNoYW5nZSB0aGlzLCB1c2UgJ3Nob3dHcmFkbGVMb2cnIGRlc2lyZWQgY2FwYWJpbGl0eWApO1xuICAgIGdyYWRsZWJ1aWxkLm9uKCdzdHJlYW0tbGluZScsIChsaW5lKSA9PiB7XG4gICAgICBpZiAodGhpcy5zaG93R3JhZGxlTG9nKSB7XG4gICAgICAgIGlmIChsaW5lLnN0YXJ0c1dpdGgoJ1tTVERFUlJdJykpIHtcbiAgICAgICAgICB0aGlzLmxvZy53YXJuKGBbR3JhZGxlXSAke2xpbmV9YCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sb2cuaW5mbyhgW0dyYWRsZV0gJHtsaW5lfWApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBidWlsZExhc3RMaW5lcy5wdXNoKGAke0VPTH0ke2xpbmV9YCk7XG4gICAgICBpZiAoYnVpbGRMYXN0TGluZXMubGVuZ3RoID4gR1JBRExFX01BWF9FUlJPUl9MT0dfTElORVMpIHtcbiAgICAgICAgYnVpbGRMYXN0TGluZXMgPSBidWlsZExhc3RMaW5lcy5zbGljZSgtR1JBRExFX01BWF9FUlJPUl9MT0dfTElORVMpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGdyYWRsZWJ1aWxkLnN0YXJ0KCk7XG4gICAgICBhd2FpdCBncmFkbGVidWlsZC5qb2luKCk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBsZXQgbXNnID0gYFVuYWJsZSB0byBidWlsZCBFc3ByZXNzbyBzZXJ2ZXIgLSAke2Vyci5tZXNzYWdlfVxcbmAgK1xuICAgICAgICBgR3JhZGxlIGVycm9yIG1lc3NhZ2U6JHtFT0x9JHtidWlsZExhc3RMaW5lc31gO1xuICAgICAgdGhpcy5sb2cuZXJyb3JBbmRUaHJvdyhtc2cpO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgeyBTZXJ2ZXJCdWlsZGVyLCBWRVJTSU9OX0tFWVMsIEdSQURMRV9VUkxfVEVNUExBVEUsIGJ1aWxkU2VydmVyU2lnbmluZ0NvbmZpZyB9O1xuZXhwb3J0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
|
|
162
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdGVlbl9wcm9jZXNzIiwicmVxdWlyZSIsIl9zdXBwb3J0IiwiX2xvZGFzaCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcGF0aCIsIl9vcyIsIl91dGlscyIsIkdSQURMRV9WRVJTSU9OX0tFWSIsIkdSQURMRV9VUkxfUFJFRklYIiwiR1JBRExFX1VSTF9URU1QTEFURSIsImV4cG9ydHMiLCJHUkFETEVfTUFYX0VSUk9SX0xPR19MSU5FUyIsIkRFUEVOREVOQ1lfUFJPUF9OQU1FUyIsIlZFUlNJT05fS0VZUyIsImJ1aWxkU2VydmVyU2lnbmluZ0NvbmZpZyIsImFyZ3MiLCJ6aXBBbGlnbiIsImtleXN0b3JlRmlsZSIsImtleXN0b3JlUGFzc3dvcmQiLCJrZXlBbGlhcyIsImtleVBhc3N3b3JkIiwiU2VydmVyQnVpbGRlciIsImNvbnN0cnVjdG9yIiwibG9nIiwic2VydmVyUGF0aCIsInNob3dHcmFkbGVMb2ciLCJidWlsZENvbmZpZ3VyYXRpb24iLCJ2ZXJzaW9uQ29uZmlndXJhdGlvbiIsInRvb2xzVmVyc2lvbnMiLCJzZXJ2ZXJWZXJzaW9ucyIsIl8iLCJyZWR1Y2UiLCJhY2MiLCJ2YWx1ZSIsImtleSIsImluY2x1ZGVzIiwid2FybiIsInRlc3RBcHBQYWNrYWdlIiwic2lnbmluZ0NvbmZpZyIsInByb3BOYW1lIiwiYnVpbGQiLCJzZXRHcmFkbGVXcmFwcGVyVmVyc2lvbiIsImluc2VydEFkZGl0aW9uYWxEZXBlbmRlbmNpZXMiLCJydW5CdWlsZFByb2Nlc3MiLCJnZXRDb21tYW5kIiwiY21kIiwic3lzdGVtIiwiaXNXaW5kb3dzIiwicGF0aCIsInJlc29sdmUiLCJidWlsZFByb3BlcnR5IiwiZmlsdGVyIiwibWFwIiwic2VydmVyVmVyc2lvbiIsImdyYWRsZVByb3BlcnR5IiwiY2hhckF0IiwidG9VcHBlckNhc2UiLCJzbGljZSIsIkJvb2xlYW4iLCJwdXNoIiwia2V5cyIsInVwcGVyRmlyc3QiLCJrIiwidiIsInZlcnNpb24iLCJwcm9wZXJ0aWVzUGF0aCIsIm9yaWdpbmFsUHJvcGVydGllcyIsImZzIiwicmVhZEZpbGUiLCJuZXdQcm9wZXJ0aWVzIiwidXBkYXRlR3JhZGxlRGlzdFVybCIsIndyaXRlRmlsZSIsInByb3BlcnRpZXNDb250ZW50IiwicmVwbGFjZSIsIlJlZ0V4cCIsImVzY2FwZVJlZ0V4cCIsImhhc0FkZGl0aW9uYWxEZXBzIiwiaXNBcnJheSIsIkVycm9yIiwiaXNFbXB0eSIsImxpbmUiLCJ0cmltIiwiZGVwIiwidGVzdCIsImJ1aWxkUGF0aCIsImNvbmZpZ3VyYXRpb24iLCJwcmVmaXgiLCJkZXBzIiwiaW5mbyIsInVwZGF0ZURlcGVuZGVuY3lMaW5lcyIsImRlYnVnIiwiam9pbiIsImdyYWRsZWJ1aWxkIiwiU3ViUHJvY2VzcyIsImN3ZCIsInN0ZGlvIiwid2luZG93c1ZlcmJhdGltQXJndW1lbnRzIiwiYnVpbGRMYXN0TGluZXMiLCJsb2dNc2ciLCJvbiIsInN0YXJ0c1dpdGgiLCJFT0wiLCJsZW5ndGgiLCJzdGFydCIsImVyciIsIm1zZyIsIm1lc3NhZ2UiLCJlcnJvckFuZFRocm93IiwiX2RlZmF1bHQiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vbGliL3NlcnZlci1idWlsZGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YlByb2Nlc3MgfSBmcm9tICd0ZWVuX3Byb2Nlc3MnO1xuaW1wb3J0IHsgZnMsIHN5c3RlbSB9IGZyb20gJ2FwcGl1bS9zdXBwb3J0JztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IEVPTCB9IGZyb20gJ29zJztcbmltcG9ydCB7IHVwZGF0ZURlcGVuZGVuY3lMaW5lcyB9IGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBHUkFETEVfVkVSU0lPTl9LRVkgPSAnZ3JhZGxlJztcbmNvbnN0IEdSQURMRV9VUkxfUFJFRklYID0gJ2Rpc3RyaWJ1dGlvblVybD0nO1xuY29uc3QgR1JBRExFX1VSTF9URU1QTEFURSA9ICdodHRwc1xcXFw6Ly9zZXJ2aWNlcy5ncmFkbGUub3JnL2Rpc3RyaWJ1dGlvbnMvZ3JhZGxlLVZFUlNJT04tYWxsLnppcCc7XG5jb25zdCBHUkFETEVfTUFYX0VSUk9SX0xPR19MSU5FUyA9IDE1O1xuY29uc3QgREVQRU5ERU5DWV9QUk9QX05BTUVTID0gWydhZGRpdGlvbmFsQXBwRGVwZW5kZW5jaWVzJywgJ2FkZGl0aW9uYWxBbmRyb2lkVGVzdERlcGVuZGVuY2llcyddO1xuXG5jb25zdCBWRVJTSU9OX0tFWVMgPSBbXG4gIEdSQURMRV9WRVJTSU9OX0tFWSxcbiAgJ2FuZHJvaWRHcmFkbGVQbHVnaW4nLFxuICAnY29tcGlsZVNkaycsXG4gICdidWlsZFRvb2xzJyxcbiAgJ21pblNkaycsXG4gICd0YXJnZXRTZGsnLFxuICAna290bGluJyxcbiAgJ3NvdXJjZUNvbXBhdGliaWxpdHknLFxuICAndGFyZ2V0Q29tcGF0aWJpbGl0eScsXG4gICdqdm1UYXJnZXQnLFxuICAnY29tcG9zZVZlcnNpb24nLFxuICAnZXNwcmVzc29WZXJzaW9uJyxcbiAgJ2Fubm90YXRpb25WZXJzaW9uJ1xuXTtcblxuZnVuY3Rpb24gYnVpbGRTZXJ2ZXJTaWduaW5nQ29uZmlnIChhcmdzKSB7XG4gIHJldHVybiB7XG4gICAgemlwQWxpZ246IHRydWUsXG4gICAga2V5c3RvcmVGaWxlOiBhcmdzLmtleXN0b3JlRmlsZSxcbiAgICBrZXlzdG9yZVBhc3N3b3JkOiBhcmdzLmtleXN0b3JlUGFzc3dvcmQsXG4gICAga2V5QWxpYXM6IGFyZ3Mua2V5QWxpYXMsXG4gICAga2V5UGFzc3dvcmQ6IGFyZ3Mua2V5UGFzc3dvcmRcbiAgfTtcbn1cblxuY2xhc3MgU2VydmVyQnVpbGRlciB7XG4gIGNvbnN0cnVjdG9yIChsb2csIGFyZ3MgPSB7fSkge1xuICAgIHRoaXMubG9nID0gbG9nO1xuICAgIHRoaXMuc2VydmVyUGF0aCA9IGFyZ3Muc2VydmVyUGF0aDtcbiAgICB0aGlzLnNob3dHcmFkbGVMb2cgPSBhcmdzLnNob3dHcmFkbGVMb2c7XG5cbiAgICBjb25zdCBidWlsZENvbmZpZ3VyYXRpb24gPSBhcmdzLmJ1aWxkQ29uZmlndXJhdGlvbiB8fCB7fTtcblxuICAgIGNvbnN0IHZlcnNpb25Db25maWd1cmF0aW9uID0gYnVpbGRDb25maWd1cmF0aW9uLnRvb2xzVmVyc2lvbnMgfHwge307XG4gICAgdGhpcy5zZXJ2ZXJWZXJzaW9ucyA9IF8ucmVkdWNlKHZlcnNpb25Db25maWd1cmF0aW9uLCAoYWNjLCB2YWx1ZSwga2V5KSA9PiB7XG4gICAgICBpZiAoVkVSU0lPTl9LRVlTLmluY2x1ZGVzKGtleSkpIHtcbiAgICAgICAgYWNjW2tleV0gPSB2YWx1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxvZy53YXJuKGBHb3QgdW5leHBlY3RlZCAnJHtrZXl9JyBpbiB0b29sc1ZlcnNpb24gYmxvY2sgb2YgdGhlIGJ1aWxkIGNvbmZpZ3VyYXRpb25gKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30pO1xuXG4gICAgdGhpcy50ZXN0QXBwUGFja2FnZSA9IGFyZ3MudGVzdEFwcFBhY2thZ2U7XG4gICAgdGhpcy5zaWduaW5nQ29uZmlnID0gYXJncy5zaWduaW5nQ29uZmlnO1xuXG4gICAgZm9yIChjb25zdCBwcm9wTmFtZSBvZiBERVBFTkRFTkNZX1BST1BfTkFNRVMpIHtcbiAgICAgIHRoaXNbcHJvcE5hbWVdID0gYnVpbGRDb25maWd1cmF0aW9uW3Byb3BOYW1lXSB8fCBbXTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBidWlsZCAoKSB7XG4gICAgaWYgKHRoaXMuc2VydmVyVmVyc2lvbnNbR1JBRExFX1ZFUlNJT05fS0VZXSkge1xuICAgICAgYXdhaXQgdGhpcy5zZXRHcmFkbGVXcmFwcGVyVmVyc2lvbih0aGlzLnNlcnZlclZlcnNpb25zW0dSQURMRV9WRVJTSU9OX0tFWV0pO1xuICAgIH1cblxuICAgIGF3YWl0IHRoaXMuaW5zZXJ0QWRkaXRpb25hbERlcGVuZGVuY2llcygpO1xuXG4gICAgYXdhaXQgdGhpcy5ydW5CdWlsZFByb2Nlc3MoKTtcbiAgfVxuXG4gIGdldENvbW1hbmQgKCkge1xuICAgIGNvbnN0IGNtZCA9IHN5c3RlbS5pc1dpbmRvd3MoKSA/ICdncmFkbGV3LmJhdCcgOiBwYXRoLnJlc29sdmUodGhpcy5zZXJ2ZXJQYXRoLCAnZ3JhZGxldycpO1xuICAgIGNvbnN0IGJ1aWxkUHJvcGVydHkgPSAoa2V5LCB2YWx1ZSkgPT4gdmFsdWUgPyBgLVAke2tleX09JHt2YWx1ZX1gIDogbnVsbDtcbiAgICBsZXQgYXJncyA9IFZFUlNJT05fS0VZU1xuICAgICAgLmZpbHRlcigoa2V5KSA9PiBrZXkgIT09IEdSQURMRV9WRVJTSU9OX0tFWSlcbiAgICAgIC5tYXAoKGtleSkgPT4ge1xuICAgICAgICBjb25zdCBzZXJ2ZXJWZXJzaW9uID0gdGhpcy5zZXJ2ZXJWZXJzaW9uc1trZXldO1xuICAgICAgICBjb25zdCBncmFkbGVQcm9wZXJ0eSA9IGBhcHBpdW0ke2tleS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKX0ke2tleS5zbGljZSgxKX1gO1xuICAgICAgICByZXR1cm4gYnVpbGRQcm9wZXJ0eShncmFkbGVQcm9wZXJ0eSwgc2VydmVyVmVyc2lvbik7XG4gICAgICB9KVxuICAgICAgLmZpbHRlcihCb29sZWFuKTtcblxuICAgIGlmICh0aGlzLnNpZ25pbmdDb25maWcpIHtcbiAgICAgIGFyZ3MucHVzaCguLi4oXG4gICAgICAgIF8ua2V5cyh0aGlzLnNpZ25pbmdDb25maWcpXG4gICAgICAgIC5tYXAoKGtleSkgPT4gW2BhcHBpdW0ke18udXBwZXJGaXJzdChrZXkpfWAsIHRoaXMuc2lnbmluZ0NvbmZpZ1trZXldXSlcbiAgICAgICAgLm1hcCgoW2ssIHZdKSA9PiBidWlsZFByb3BlcnR5KGssIHYpKVxuICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICApKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50ZXN0QXBwUGFja2FnZSkge1xuICAgICAgYXJncy5wdXNoKGJ1aWxkUHJvcGVydHkoJ2FwcGl1bVRhcmdldFBhY2thZ2UnLCB0aGlzLnRlc3RBcHBQYWNrYWdlKSk7XG4gICAgfVxuICAgIGFyZ3MucHVzaCgnYXBwOmFzc2VtYmxlQW5kcm9pZFRlc3QnKTtcblxuICAgIHJldHVybiB7Y21kLCBhcmdzfTtcbiAgfVxuXG4gIGFzeW5jIHNldEdyYWRsZVdyYXBwZXJWZXJzaW9uICh2ZXJzaW9uKSB7XG4gICAgY29uc3QgcHJvcGVydGllc1BhdGggPSBwYXRoLnJlc29sdmUodGhpcy5zZXJ2ZXJQYXRoLCAnZ3JhZGxlJywgJ3dyYXBwZXInLCAnZ3JhZGxlLXdyYXBwZXIucHJvcGVydGllcycpO1xuICAgIGNvbnN0IG9yaWdpbmFsUHJvcGVydGllcyA9IGF3YWl0IGZzLnJlYWRGaWxlKHByb3BlcnRpZXNQYXRoLCAndXRmOCcpO1xuICAgIGNvbnN0IG5ld1Byb3BlcnRpZXMgPSB0aGlzLnVwZGF0ZUdyYWRsZURpc3RVcmwob3JpZ2luYWxQcm9wZXJ0aWVzLCB2ZXJzaW9uKTtcbiAgICBhd2FpdCBmcy53cml0ZUZpbGUocHJvcGVydGllc1BhdGgsIG5ld1Byb3BlcnRpZXMsICd1dGY4Jyk7XG4gIH1cblxuICB1cGRhdGVHcmFkbGVEaXN0VXJsIChwcm9wZXJ0aWVzQ29udGVudCwgdmVyc2lvbikge1xuICAgIHJldHVybiBwcm9wZXJ0aWVzQ29udGVudC5yZXBsYWNlKFxuICAgICAgbmV3IFJlZ0V4cChgXigke18uZXNjYXBlUmVnRXhwKEdSQURMRV9VUkxfUFJFRklYKX0pLiskYCwgJ2dtJyksXG4gICAgICBgJDEke0dSQURMRV9VUkxfVEVNUExBVEUucmVwbGFjZSgnVkVSU0lPTicsIHZlcnNpb24pfWBcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgaW5zZXJ0QWRkaXRpb25hbERlcGVuZGVuY2llcyAoKSB7XG4gICAgbGV0IGhhc0FkZGl0aW9uYWxEZXBzID0gZmFsc2U7XG4gICAgZm9yIChjb25zdCBwcm9wTmFtZSBvZiBERVBFTkRFTkNZX1BST1BfTkFNRVMpIHtcbiAgICAgIGlmICghXy5pc0FycmF5KHRoaXNbcHJvcE5hbWVdKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCcke3Byb3BOYW1lfScgbXVzdCBiZSBhbiBhcnJheWApO1xuICAgICAgfVxuICAgICAgaWYgKF8uaXNFbXB0eSh0aGlzW3Byb3BOYW1lXS5maWx0ZXIoKGxpbmUpID0+IF8udHJpbShsaW5lKSkpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGNvbnN0IGRlcCBvZiB0aGlzW3Byb3BOYW1lXSkge1xuICAgICAgICBpZiAoL1tcXHMnXFxcXCRdLy50ZXN0KGRlcCkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NpbmdsZSBxdW90ZXMsIGRvbGxhciBjaGFyYWN0ZXJzIGFuZCB3aGl0ZXNwYWNlIGNoYXJhY3RlcnMnICtcbiAgICAgICAgICAgIGAgYXJlIGRpc2FsbG93ZWQgaW4gYWRkaXRpb25hbCBkZXBlbmRlbmNpZXM6ICR7ZGVwfWApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBoYXNBZGRpdGlvbmFsRGVwcyA9IHRydWU7XG4gICAgfVxuICAgIGlmICghaGFzQWRkaXRpb25hbERlcHMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBidWlsZFBhdGggPSBwYXRoLnJlc29sdmUodGhpcy5zZXJ2ZXJQYXRoLCAnYXBwJywgJ2J1aWxkLmdyYWRsZS5rdHMnKTtcbiAgICBsZXQgY29uZmlndXJhdGlvbiA9IGF3YWl0IGZzLnJlYWRGaWxlKGJ1aWxkUGF0aCwgJ3V0ZjgnKTtcbiAgICBmb3IgKGNvbnN0IHByb3BOYW1lIG9mIERFUEVOREVOQ1lfUFJPUF9OQU1FUykge1xuICAgICAgY29uc3QgcHJlZml4ID0gcHJvcE5hbWUgPT09IERFUEVOREVOQ1lfUFJPUF9OQU1FU1swXVxuICAgICAgICA/ICdpbXBsZW1lbnRhdGlvbidcbiAgICAgICAgOiAnYW5kcm9pZFRlc3RJbXBsZW1lbnRhdGlvbic7XG4gICAgICBjb25zdCBkZXBzID0gdGhpc1twcm9wTmFtZV1cbiAgICAgICAgLmZpbHRlcigobGluZSkgPT4gXy50cmltKGxpbmUpKVxuICAgICAgICAubWFwKChsaW5lKSA9PiBgJHtwcmVmaXh9KFwiJHtsaW5lfVwiKWApO1xuICAgICAgaWYgKF8uaXNFbXB0eShkZXBzKSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5sb2cuaW5mbyhgQWRkaW5nIHRoZSBmb2xsb3dpbmcgJHtwcm9wTmFtZX0gdG8gYnVpbGQuZ3JhZGxlLmt0czogJHtkZXBzfWApO1xuICAgICAgY29uZmlndXJhdGlvbiA9IHVwZGF0ZURlcGVuZGVuY3lMaW5lcyhjb25maWd1cmF0aW9uLCBwcm9wTmFtZSwgZGVwcyk7XG4gICAgfVxuICAgIGF3YWl0IGZzLndyaXRlRmlsZShidWlsZFBhdGgsIGNvbmZpZ3VyYXRpb24sICd1dGY4Jyk7XG4gIH1cblxuICBhc3luYyBydW5CdWlsZFByb2Nlc3MgKCkge1xuICAgIGNvbnN0IHtjbWQsIGFyZ3N9ID0gdGhpcy5nZXRDb21tYW5kKCk7XG4gICAgdGhpcy5sb2cuZGVidWcoYEJlZ2lubmluZyBidWlsZCB3aXRoIGNvbW1hbmQgJyR7Y21kfSAke2FyZ3Muam9pbignICcpfScgYCArXG4gICAgICBgaW4gZGlyZWN0b3J5ICcke3RoaXMuc2VydmVyUGF0aH0nYCk7XG4gICAgY29uc3QgZ3JhZGxlYnVpbGQgPSBuZXcgU3ViUHJvY2VzcyhjbWQsIGFyZ3MsIHtcbiAgICAgIGN3ZDogdGhpcy5zZXJ2ZXJQYXRoLFxuICAgICAgc3RkaW86IFsnaWdub3JlJywgJ3BpcGUnLCAncGlwZSddLFxuICAgICAgd2luZG93c1ZlcmJhdGltQXJndW1lbnRzOiB0cnVlXG4gICAgfSk7XG4gICAgbGV0IGJ1aWxkTGFzdExpbmVzID0gW107XG5cbiAgICBjb25zdCBsb2dNc2cgPSBgT3V0cHV0IGZyb20gR3JhZGxlICR7dGhpcy5zaG93R3JhZGxlTG9nID8gJ3dpbGwnIDogJ3dpbGwgbm90J30gYmUgbG9nZ2VkYDtcbiAgICB0aGlzLmxvZy5kZWJ1ZyhgJHtsb2dNc2d9LiBUbyBjaGFuZ2UgdGhpcywgdXNlICdzaG93R3JhZGxlTG9nJyBkZXNpcmVkIGNhcGFiaWxpdHlgKTtcbiAgICBncmFkbGVidWlsZC5vbignc3RyZWFtLWxpbmUnLCAobGluZSkgPT4ge1xuICAgICAgaWYgKHRoaXMuc2hvd0dyYWRsZUxvZykge1xuICAgICAgICBpZiAobGluZS5zdGFydHNXaXRoKCdbU1RERVJSXScpKSB7XG4gICAgICAgICAgdGhpcy5sb2cud2FybihgW0dyYWRsZV0gJHtsaW5lfWApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubG9nLmluZm8oYFtHcmFkbGVdICR7bGluZX1gKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYnVpbGRMYXN0TGluZXMucHVzaChgJHtFT0x9JHtsaW5lfWApO1xuICAgICAgaWYgKGJ1aWxkTGFzdExpbmVzLmxlbmd0aCA+IEdSQURMRV9NQVhfRVJST1JfTE9HX0xJTkVTKSB7XG4gICAgICAgIGJ1aWxkTGFzdExpbmVzID0gYnVpbGRMYXN0TGluZXMuc2xpY2UoLUdSQURMRV9NQVhfRVJST1JfTE9HX0xJTkVTKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBncmFkbGVidWlsZC5zdGFydCgpO1xuICAgICAgYXdhaXQgZ3JhZGxlYnVpbGQuam9pbigpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgbGV0IG1zZyA9IGBVbmFibGUgdG8gYnVpbGQgRXNwcmVzc28gc2VydmVyIC0gJHtlcnIubWVzc2FnZX1cXG5gICtcbiAgICAgICAgYEdyYWRsZSBlcnJvciBtZXNzYWdlOiR7RU9MfSR7YnVpbGRMYXN0TGluZXN9YDtcbiAgICAgIHRoaXMubG9nLmVycm9yQW5kVGhyb3cobXNnKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IHsgU2VydmVyQnVpbGRlciwgVkVSU0lPTl9LRVlTLCBHUkFETEVfVVJMX1RFTVBMQVRFLCBidWlsZFNlcnZlclNp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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-builder.js","names":["_teen_process","require","_support","_lodash","_interopRequireDefault","_path","_os","_utils","GRADLE_VERSION_KEY","GRADLE_URL_PREFIX","GRADLE_URL_TEMPLATE","exports","GRADLE_MAX_ERROR_LOG_LINES","DEPENDENCY_PROP_NAMES","VERSION_KEYS","buildServerSigningConfig","args","zipAlign","keystoreFile","keystorePassword","keyAlias","keyPassword","ServerBuilder","constructor","log","serverPath","showGradleLog","buildConfiguration","versionConfiguration","toolsVersions","serverVersions","_","reduce","acc","value","key","includes","warn","testAppPackage","signingConfig","propName","build","setGradleWrapperVersion","insertAdditionalDependencies","runBuildProcess","getCommand","cmd","system","isWindows","path","resolve","buildProperty","filter","map","serverVersion","gradleProperty","charAt","toUpperCase","slice","Boolean","push","keys","upperFirst","k","v","version","propertiesPath","originalProperties","fs","readFile","newProperties","updateGradleDistUrl","writeFile","propertiesContent","replace","RegExp","escapeRegExp","hasAdditionalDeps","isArray","Error","isEmpty","line","trim","dep","test","buildPath","configuration","prefix","deps","info","updateDependencyLines","debug","join","gradlebuild","SubProcess","cwd","stdio","windowsVerbatimArguments","buildLastLines","logMsg","on","startsWith","EOL","length","start","err","msg","message","errorAndThrow","_default","default"],"sources":["../../lib/server-builder.js"],"sourcesContent":["import { SubProcess } from 'teen_process';\nimport { fs, system } from 'appium/support';\nimport _ from 'lodash';\nimport path from 'path';\nimport { EOL } from 'os';\nimport { updateDependencyLines } from './utils';\n\nconst GRADLE_VERSION_KEY = 'gradle';\nconst GRADLE_URL_PREFIX = 'distributionUrl=';\nconst GRADLE_URL_TEMPLATE = 'https\\\\://services.gradle.org/distributions/gradle-VERSION-all.zip';\nconst GRADLE_MAX_ERROR_LOG_LINES = 15;\nconst DEPENDENCY_PROP_NAMES = ['additionalAppDependencies', 'additionalAndroidTestDependencies'];\n\nconst VERSION_KEYS = [\n GRADLE_VERSION_KEY,\n 'androidGradlePlugin',\n 'compileSdk',\n 'buildTools',\n 'minSdk',\n 'targetSdk',\n 'kotlin',\n 'sourceCompatibility',\n 'targetCompatibility',\n 'jvmTarget',\n 'composeVersion',\n 'annotationVersion'\n];\n\nfunction buildServerSigningConfig (args) {\n return {\n zipAlign: true,\n keystoreFile: args.keystoreFile,\n keystorePassword: args.keystorePassword,\n keyAlias: args.keyAlias,\n keyPassword: args.keyPassword\n };\n}\n\nclass ServerBuilder {\n constructor (log, args = {}) {\n this.log = log;\n this.serverPath = args.serverPath;\n this.showGradleLog = args.showGradleLog;\n\n const buildConfiguration = args.buildConfiguration || {};\n\n const versionConfiguration = buildConfiguration.toolsVersions || {};\n this.serverVersions = _.reduce(versionConfiguration, (acc, value, key) => {\n if (VERSION_KEYS.includes(key)) {\n acc[key] = value;\n } else {\n log.warn(`Got unexpected '${key}' in toolsVersion block of the build configuration`);\n }\n return acc;\n }, {});\n\n this.testAppPackage = args.testAppPackage;\n this.signingConfig = args.signingConfig;\n\n for (const propName of DEPENDENCY_PROP_NAMES) {\n this[propName] = buildConfiguration[propName] || [];\n }\n }\n\n async build () {\n if (this.serverVersions[GRADLE_VERSION_KEY]) {\n await this.setGradleWrapperVersion(this.serverVersions[GRADLE_VERSION_KEY]);\n }\n\n await this.insertAdditionalDependencies();\n\n await this.runBuildProcess();\n }\n\n getCommand () {\n const cmd = system.isWindows() ? 'gradlew.bat' : path.resolve(this.serverPath, 'gradlew');\n const buildProperty = (key, value) => value ? `-P${key}=${value}` : null;\n let args = VERSION_KEYS\n .filter((key) => key !== GRADLE_VERSION_KEY)\n .map((key) => {\n const serverVersion = this.serverVersions[key];\n const gradleProperty = `appium${key.charAt(0).toUpperCase()}${key.slice(1)}`;\n return buildProperty(gradleProperty, serverVersion);\n })\n .filter(Boolean);\n\n if (this.signingConfig) {\n args.push(...(\n _.keys(this.signingConfig)\n .map((key) => [`appium${_.upperFirst(key)}`, this.signingConfig[key]])\n .map(([k, v]) => buildProperty(k, v))\n .filter(Boolean)\n ));\n }\n\n if (this.testAppPackage) {\n args.push(buildProperty('appiumTargetPackage', this.testAppPackage));\n }\n args.push('app:assembleAndroidTest');\n\n return {cmd, args};\n }\n\n async setGradleWrapperVersion (version) {\n const propertiesPath = path.resolve(this.serverPath, 'gradle', 'wrapper', 'gradle-wrapper.properties');\n const originalProperties = await fs.readFile(propertiesPath, 'utf8');\n const newProperties = this.updateGradleDistUrl(originalProperties, version);\n await fs.writeFile(propertiesPath, newProperties, 'utf8');\n }\n\n updateGradleDistUrl (propertiesContent, version) {\n return propertiesContent.replace(\n new RegExp(`^(${_.escapeRegExp(GRADLE_URL_PREFIX)}).+$`, 'gm'),\n `$1${GRADLE_URL_TEMPLATE.replace('VERSION', version)}`\n );\n }\n\n async insertAdditionalDependencies () {\n let hasAdditionalDeps = false;\n for (const propName of DEPENDENCY_PROP_NAMES) {\n if (!_.isArray(this[propName])) {\n throw new Error(`'${propName}' must be an array`);\n }\n if (_.isEmpty(this[propName].filter((line) => _.trim(line)))) {\n continue;\n }\n\n for (const dep of this[propName]) {\n if (/[\\s'\\\\$]/.test(dep)) {\n throw new Error('Single quotes, dollar characters and whitespace characters' +\n ` are disallowed in additional dependencies: ${dep}`);\n }\n }\n hasAdditionalDeps = true;\n }\n if (!hasAdditionalDeps) {\n return;\n }\n\n const buildPath = path.resolve(this.serverPath, 'app', 'build.gradle.kts');\n let configuration = await fs.readFile(buildPath, 'utf8');\n for (const propName of DEPENDENCY_PROP_NAMES) {\n const prefix = propName === DEPENDENCY_PROP_NAMES[0]\n ? 'implementation'\n : 'androidTestImplementation';\n const deps = this[propName]\n .filter((line) => _.trim(line))\n .map((line) => `${prefix}(\"${line}\")`);\n if (_.isEmpty(deps)) {\n continue;\n }\n\n this.log.info(`Adding the following ${propName} to build.gradle.kts: ${deps}`);\n configuration = updateDependencyLines(configuration, propName, deps);\n }\n await fs.writeFile(buildPath, configuration, 'utf8');\n }\n\n async runBuildProcess () {\n const {cmd, args} = this.getCommand();\n this.log.debug(`Beginning build with command '${cmd} ${args.join(' ')}' ` +\n `in directory '${this.serverPath}'`);\n const gradlebuild = new SubProcess(cmd, args, {\n cwd: this.serverPath,\n stdio: ['ignore', 'pipe', 'pipe'],\n windowsVerbatimArguments: true\n });\n let buildLastLines = [];\n\n const logMsg = `Output from Gradle ${this.showGradleLog ? 'will' : 'will not'} be logged`;\n this.log.debug(`${logMsg}. To change this, use 'showGradleLog' desired capability`);\n gradlebuild.on('stream-line', (line) => {\n if (this.showGradleLog) {\n if (line.startsWith('[STDERR]')) {\n this.log.warn(`[Gradle] ${line}`);\n } else {\n this.log.info(`[Gradle] ${line}`);\n }\n }\n buildLastLines.push(`${EOL}${line}`);\n if (buildLastLines.length > GRADLE_MAX_ERROR_LOG_LINES) {\n buildLastLines = buildLastLines.slice(-GRADLE_MAX_ERROR_LOG_LINES);\n }\n });\n\n try {\n await gradlebuild.start();\n await gradlebuild.join();\n } catch (err) {\n let msg = `Unable to build Espresso server - ${err.message}\\n` +\n `Gradle error message:${EOL}${buildLastLines}`;\n this.log.errorAndThrow(msg);\n }\n }\n}\n\nexport { ServerBuilder, VERSION_KEYS, GRADLE_URL_TEMPLATE, buildServerSigningConfig };\nexport default ServerBuilder;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server-builder.js","names":["_teen_process","require","_support","_lodash","_interopRequireDefault","_path","_os","_utils","GRADLE_VERSION_KEY","GRADLE_URL_PREFIX","GRADLE_URL_TEMPLATE","exports","GRADLE_MAX_ERROR_LOG_LINES","DEPENDENCY_PROP_NAMES","VERSION_KEYS","buildServerSigningConfig","args","zipAlign","keystoreFile","keystorePassword","keyAlias","keyPassword","ServerBuilder","constructor","log","serverPath","showGradleLog","buildConfiguration","versionConfiguration","toolsVersions","serverVersions","_","reduce","acc","value","key","includes","warn","testAppPackage","signingConfig","propName","build","setGradleWrapperVersion","insertAdditionalDependencies","runBuildProcess","getCommand","cmd","system","isWindows","path","resolve","buildProperty","filter","map","serverVersion","gradleProperty","charAt","toUpperCase","slice","Boolean","push","keys","upperFirst","k","v","version","propertiesPath","originalProperties","fs","readFile","newProperties","updateGradleDistUrl","writeFile","propertiesContent","replace","RegExp","escapeRegExp","hasAdditionalDeps","isArray","Error","isEmpty","line","trim","dep","test","buildPath","configuration","prefix","deps","info","updateDependencyLines","debug","join","gradlebuild","SubProcess","cwd","stdio","windowsVerbatimArguments","buildLastLines","logMsg","on","startsWith","EOL","length","start","err","msg","message","errorAndThrow","_default","default"],"sources":["../../lib/server-builder.js"],"sourcesContent":["import { SubProcess } from 'teen_process';\nimport { fs, system } from 'appium/support';\nimport _ from 'lodash';\nimport path from 'path';\nimport { EOL } from 'os';\nimport { updateDependencyLines } from './utils';\n\nconst GRADLE_VERSION_KEY = 'gradle';\nconst GRADLE_URL_PREFIX = 'distributionUrl=';\nconst GRADLE_URL_TEMPLATE = 'https\\\\://services.gradle.org/distributions/gradle-VERSION-all.zip';\nconst GRADLE_MAX_ERROR_LOG_LINES = 15;\nconst DEPENDENCY_PROP_NAMES = ['additionalAppDependencies', 'additionalAndroidTestDependencies'];\n\nconst VERSION_KEYS = [\n GRADLE_VERSION_KEY,\n 'androidGradlePlugin',\n 'compileSdk',\n 'buildTools',\n 'minSdk',\n 'targetSdk',\n 'kotlin',\n 'sourceCompatibility',\n 'targetCompatibility',\n 'jvmTarget',\n 'composeVersion',\n 'espressoVersion',\n 'annotationVersion'\n];\n\nfunction buildServerSigningConfig (args) {\n return {\n zipAlign: true,\n keystoreFile: args.keystoreFile,\n keystorePassword: args.keystorePassword,\n keyAlias: args.keyAlias,\n keyPassword: args.keyPassword\n };\n}\n\nclass ServerBuilder {\n constructor (log, args = {}) {\n this.log = log;\n this.serverPath = args.serverPath;\n this.showGradleLog = args.showGradleLog;\n\n const buildConfiguration = args.buildConfiguration || {};\n\n const versionConfiguration = buildConfiguration.toolsVersions || {};\n this.serverVersions = _.reduce(versionConfiguration, (acc, value, key) => {\n if (VERSION_KEYS.includes(key)) {\n acc[key] = value;\n } else {\n log.warn(`Got unexpected '${key}' in toolsVersion block of the build configuration`);\n }\n return acc;\n }, {});\n\n this.testAppPackage = args.testAppPackage;\n this.signingConfig = args.signingConfig;\n\n for (const propName of DEPENDENCY_PROP_NAMES) {\n this[propName] = buildConfiguration[propName] || [];\n }\n }\n\n async build () {\n if (this.serverVersions[GRADLE_VERSION_KEY]) {\n await this.setGradleWrapperVersion(this.serverVersions[GRADLE_VERSION_KEY]);\n }\n\n await this.insertAdditionalDependencies();\n\n await this.runBuildProcess();\n }\n\n getCommand () {\n const cmd = system.isWindows() ? 'gradlew.bat' : path.resolve(this.serverPath, 'gradlew');\n const buildProperty = (key, value) => value ? `-P${key}=${value}` : null;\n let args = VERSION_KEYS\n .filter((key) => key !== GRADLE_VERSION_KEY)\n .map((key) => {\n const serverVersion = this.serverVersions[key];\n const gradleProperty = `appium${key.charAt(0).toUpperCase()}${key.slice(1)}`;\n return buildProperty(gradleProperty, serverVersion);\n })\n .filter(Boolean);\n\n if (this.signingConfig) {\n args.push(...(\n _.keys(this.signingConfig)\n .map((key) => [`appium${_.upperFirst(key)}`, this.signingConfig[key]])\n .map(([k, v]) => buildProperty(k, v))\n .filter(Boolean)\n ));\n }\n\n if (this.testAppPackage) {\n args.push(buildProperty('appiumTargetPackage', this.testAppPackage));\n }\n args.push('app:assembleAndroidTest');\n\n return {cmd, args};\n }\n\n async setGradleWrapperVersion (version) {\n const propertiesPath = path.resolve(this.serverPath, 'gradle', 'wrapper', 'gradle-wrapper.properties');\n const originalProperties = await fs.readFile(propertiesPath, 'utf8');\n const newProperties = this.updateGradleDistUrl(originalProperties, version);\n await fs.writeFile(propertiesPath, newProperties, 'utf8');\n }\n\n updateGradleDistUrl (propertiesContent, version) {\n return propertiesContent.replace(\n new RegExp(`^(${_.escapeRegExp(GRADLE_URL_PREFIX)}).+$`, 'gm'),\n `$1${GRADLE_URL_TEMPLATE.replace('VERSION', version)}`\n );\n }\n\n async insertAdditionalDependencies () {\n let hasAdditionalDeps = false;\n for (const propName of DEPENDENCY_PROP_NAMES) {\n if (!_.isArray(this[propName])) {\n throw new Error(`'${propName}' must be an array`);\n }\n if (_.isEmpty(this[propName].filter((line) => _.trim(line)))) {\n continue;\n }\n\n for (const dep of this[propName]) {\n if (/[\\s'\\\\$]/.test(dep)) {\n throw new Error('Single quotes, dollar characters and whitespace characters' +\n ` are disallowed in additional dependencies: ${dep}`);\n }\n }\n hasAdditionalDeps = true;\n }\n if (!hasAdditionalDeps) {\n return;\n }\n\n const buildPath = path.resolve(this.serverPath, 'app', 'build.gradle.kts');\n let configuration = await fs.readFile(buildPath, 'utf8');\n for (const propName of DEPENDENCY_PROP_NAMES) {\n const prefix = propName === DEPENDENCY_PROP_NAMES[0]\n ? 'implementation'\n : 'androidTestImplementation';\n const deps = this[propName]\n .filter((line) => _.trim(line))\n .map((line) => `${prefix}(\"${line}\")`);\n if (_.isEmpty(deps)) {\n continue;\n }\n\n this.log.info(`Adding the following ${propName} to build.gradle.kts: ${deps}`);\n configuration = updateDependencyLines(configuration, propName, deps);\n }\n await fs.writeFile(buildPath, configuration, 'utf8');\n }\n\n async runBuildProcess () {\n const {cmd, args} = this.getCommand();\n this.log.debug(`Beginning build with command '${cmd} ${args.join(' ')}' ` +\n `in directory '${this.serverPath}'`);\n const gradlebuild = new SubProcess(cmd, args, {\n cwd: this.serverPath,\n stdio: ['ignore', 'pipe', 'pipe'],\n windowsVerbatimArguments: true\n });\n let buildLastLines = [];\n\n const logMsg = `Output from Gradle ${this.showGradleLog ? 'will' : 'will not'} be logged`;\n this.log.debug(`${logMsg}. To change this, use 'showGradleLog' desired capability`);\n gradlebuild.on('stream-line', (line) => {\n if (this.showGradleLog) {\n if (line.startsWith('[STDERR]')) {\n this.log.warn(`[Gradle] ${line}`);\n } else {\n this.log.info(`[Gradle] ${line}`);\n }\n }\n buildLastLines.push(`${EOL}${line}`);\n if (buildLastLines.length > GRADLE_MAX_ERROR_LOG_LINES) {\n buildLastLines = buildLastLines.slice(-GRADLE_MAX_ERROR_LOG_LINES);\n }\n });\n\n try {\n await gradlebuild.start();\n await gradlebuild.join();\n } catch (err) {\n let msg = `Unable to build Espresso server - ${err.message}\\n` +\n `Gradle error message:${EOL}${buildLastLines}`;\n this.log.errorAndThrow(msg);\n }\n }\n}\n\nexport { ServerBuilder, VERSION_KEYS, GRADLE_URL_TEMPLATE, buildServerSigningConfig };\nexport default ServerBuilder;\n"],"mappings":"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"}
|
|
Binary file
|
|
@@ -86,6 +86,7 @@ android {
|
|
|
86
86
|
|
|
87
87
|
val kotlinVersion = rootProject.extra["appiumKotlin"]
|
|
88
88
|
val composeVersion = getStringProperty("appiumComposeVersion", Version.compose)
|
|
89
|
+
val espressoVersion = getStringProperty("appiumEspressoVersion", Version.espresso)
|
|
89
90
|
val annotationVersion = getStringProperty("appiumAnnotationVersion", Version.annotation)
|
|
90
91
|
|
|
91
92
|
dependencies {
|
|
@@ -97,9 +98,9 @@ dependencies {
|
|
|
97
98
|
testImplementation("org.powermock:powermock-module-junit4-rule:${Version.mocklib}")
|
|
98
99
|
testImplementation("org.powermock:powermock-module-junit4:${Version.mocklib}")
|
|
99
100
|
testImplementation("androidx.annotation:annotation:${annotationVersion}")
|
|
100
|
-
testImplementation("androidx.test.espresso:espresso-contrib:${
|
|
101
|
-
testImplementation("androidx.test.espresso:espresso-core:${
|
|
102
|
-
testImplementation("androidx.test.espresso:espresso-web:${
|
|
101
|
+
testImplementation("androidx.test.espresso:espresso-contrib:${espressoVersion}")
|
|
102
|
+
testImplementation("androidx.test.espresso:espresso-core:${espressoVersion}")
|
|
103
|
+
testImplementation("androidx.test.espresso:espresso-web:${espressoVersion}")
|
|
103
104
|
testImplementation("androidx.test.uiautomator:uiautomator:${Version.uia}")
|
|
104
105
|
testImplementation("androidx.test:core:${Version.testlib}")
|
|
105
106
|
testImplementation("androidx.test:runner:${Version.testlib}")
|
|
@@ -116,12 +117,12 @@ dependencies {
|
|
|
116
117
|
testImplementation("androidx.compose.ui:ui-test-junit4:${composeVersion}")
|
|
117
118
|
|
|
118
119
|
androidTestImplementation("androidx.annotation:annotation:${annotationVersion}")
|
|
119
|
-
androidTestImplementation("androidx.test.espresso:espresso-contrib:${
|
|
120
|
+
androidTestImplementation("androidx.test.espresso:espresso-contrib:${espressoVersion}") {
|
|
120
121
|
// Exclude transitive dependencies to limit conflicts with AndroidX libraries from AUT.
|
|
121
122
|
// Link to PR with fix and discussion https://github.com/appium/appium-espresso-driver/pull/596
|
|
122
123
|
isTransitive = false
|
|
123
124
|
}
|
|
124
|
-
androidTestImplementation("androidx.test.espresso:espresso-web:${
|
|
125
|
+
androidTestImplementation("androidx.test.espresso:espresso-web:${espressoVersion}") {
|
|
125
126
|
because("Espresso Web Atoms support (mobile: webAtoms)")
|
|
126
127
|
}
|
|
127
128
|
androidTestImplementation("androidx.test.uiautomator:uiautomator:${Version.uia}") {
|
package/lib/server-builder.js
CHANGED
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "appium-espresso-driver",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.20.1",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "appium-espresso-driver",
|
|
9
|
-
"version": "2.
|
|
9
|
+
"version": "2.20.1",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@babel/runtime": "^7.4.3",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"lint-staged": "^13.0.3",
|
|
47
47
|
"mocha": "^10.0.0",
|
|
48
48
|
"pre-commit": "^1.2.2",
|
|
49
|
-
"rimraf": "^
|
|
49
|
+
"rimraf": "^5.0.0",
|
|
50
50
|
"semantic-release": "^20.0.2",
|
|
51
51
|
"sinon": "^15.0.0",
|
|
52
52
|
"webdriverio": "^8.0.2",
|
|
@@ -61,11 +61,11 @@
|
|
|
61
61
|
}
|
|
62
62
|
},
|
|
63
63
|
"node_modules/@appium/base-driver": {
|
|
64
|
-
"version": "9.3.
|
|
64
|
+
"version": "9.3.5",
|
|
65
65
|
"license": "Apache-2.0",
|
|
66
66
|
"dependencies": {
|
|
67
|
-
"@appium/support": "^3.1.
|
|
68
|
-
"@appium/types": "^0.10.
|
|
67
|
+
"@appium/support": "^3.1.9",
|
|
68
|
+
"@appium/types": "^0.10.3",
|
|
69
69
|
"@colors/colors": "1.5.0",
|
|
70
70
|
"@types/async-lock": "1.4.0",
|
|
71
71
|
"@types/bluebird": "3.5.38",
|
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
"morgan": "1.10.0",
|
|
87
87
|
"serve-favicon": "2.5.0",
|
|
88
88
|
"source-map-support": "0.5.21",
|
|
89
|
-
"type-fest": "3.
|
|
89
|
+
"type-fest": "3.7.2",
|
|
90
90
|
"validate.js": "0.13.1"
|
|
91
91
|
},
|
|
92
92
|
"engines": {
|
|
@@ -102,12 +102,12 @@
|
|
|
102
102
|
}
|
|
103
103
|
},
|
|
104
104
|
"node_modules/@appium/base-plugin": {
|
|
105
|
-
"version": "2.2.
|
|
105
|
+
"version": "2.2.5",
|
|
106
106
|
"extraneous": true,
|
|
107
107
|
"license": "Apache-2.0",
|
|
108
108
|
"dependencies": {
|
|
109
|
-
"@appium/base-driver": "^9.3.
|
|
110
|
-
"@appium/support": "^3.1.
|
|
109
|
+
"@appium/base-driver": "^9.3.5",
|
|
110
|
+
"@appium/support": "^3.1.9"
|
|
111
111
|
},
|
|
112
112
|
"engines": {
|
|
113
113
|
"node": "^14.17.0 || ^16.13.0 || >=18.0.0",
|
|
@@ -115,13 +115,13 @@
|
|
|
115
115
|
}
|
|
116
116
|
},
|
|
117
117
|
"node_modules/@appium/docutils": {
|
|
118
|
-
"version": "0.3.
|
|
118
|
+
"version": "0.3.4",
|
|
119
119
|
"extraneous": true,
|
|
120
120
|
"license": "Apache-2.0",
|
|
121
121
|
"dependencies": {
|
|
122
|
-
"@appium/support": "^3.1.
|
|
122
|
+
"@appium/support": "^3.1.9",
|
|
123
123
|
"@appium/tsconfig": "^0.2.4",
|
|
124
|
-
"@appium/typedoc-plugin-appium": "^0.
|
|
124
|
+
"@appium/typedoc-plugin-appium": "^0.6.0",
|
|
125
125
|
"@sliphua/lilconfig-ts-loader": "3.2.2",
|
|
126
126
|
"chalk": "4.1.2",
|
|
127
127
|
"consola": "2.15.3",
|
|
@@ -137,8 +137,8 @@
|
|
|
137
137
|
"semver": "7.3.8",
|
|
138
138
|
"source-map-support": "0.5.21",
|
|
139
139
|
"teen_process": "2.0.2",
|
|
140
|
-
"type-fest": "3.
|
|
141
|
-
"typedoc": "0.23.
|
|
140
|
+
"type-fest": "3.7.2",
|
|
141
|
+
"typedoc": "0.23.28",
|
|
142
142
|
"typedoc-plugin-markdown": "3.14.0",
|
|
143
143
|
"typedoc-plugin-resolve-crossmodule-references": "0.3.3",
|
|
144
144
|
"typescript": "4.9.5",
|
|
@@ -254,13 +254,13 @@
|
|
|
254
254
|
}
|
|
255
255
|
},
|
|
256
256
|
"node_modules/@appium/support": {
|
|
257
|
-
"version": "3.1.
|
|
257
|
+
"version": "3.1.9",
|
|
258
258
|
"license": "Apache-2.0",
|
|
259
259
|
"dependencies": {
|
|
260
260
|
"@appium/tsconfig": "^0.2.4",
|
|
261
|
-
"@appium/types": "^0.10.
|
|
261
|
+
"@appium/types": "^0.10.3",
|
|
262
262
|
"@colors/colors": "1.5.0",
|
|
263
|
-
"@types/archiver": "5.3.
|
|
263
|
+
"@types/archiver": "5.3.2",
|
|
264
264
|
"@types/base64-stream": "1.0.2",
|
|
265
265
|
"@types/find-root": "1.1.2",
|
|
266
266
|
"@types/glob": "8.1.0",
|
|
@@ -311,7 +311,7 @@
|
|
|
311
311
|
"source-map-support": "0.5.21",
|
|
312
312
|
"supports-color": "8.1.1",
|
|
313
313
|
"teen_process": "2.0.2",
|
|
314
|
-
"type-fest": "3.
|
|
314
|
+
"type-fest": "3.7.2",
|
|
315
315
|
"uuid": "9.0.0",
|
|
316
316
|
"which": "3.0.0",
|
|
317
317
|
"yauzl": "2.10.0"
|
|
@@ -443,14 +443,14 @@
|
|
|
443
443
|
}
|
|
444
444
|
},
|
|
445
445
|
"node_modules/@appium/typedoc-plugin-appium": {
|
|
446
|
-
"version": "0.
|
|
446
|
+
"version": "0.6.0",
|
|
447
447
|
"extraneous": true,
|
|
448
448
|
"license": "Apache-2.0",
|
|
449
449
|
"dependencies": {
|
|
450
450
|
"handlebars": "4.7.7",
|
|
451
451
|
"lodash": "4.17.21",
|
|
452
452
|
"pluralize": "8.0.0",
|
|
453
|
-
"type-fest": "3.
|
|
453
|
+
"type-fest": "3.7.2"
|
|
454
454
|
},
|
|
455
455
|
"engines": {
|
|
456
456
|
"node": "^14.17.0 || ^16.13.0 || >=18.0.0",
|
|
@@ -461,11 +461,11 @@
|
|
|
461
461
|
"typedoc": "^0.23.14",
|
|
462
462
|
"typedoc-plugin-markdown": "^3.14.0",
|
|
463
463
|
"typedoc-plugin-resolve-crossmodule-references": "~0.3.3",
|
|
464
|
-
"typescript": "^4.7.0"
|
|
464
|
+
"typescript": "^4.7.0 || ^5.0.0"
|
|
465
465
|
}
|
|
466
466
|
},
|
|
467
467
|
"node_modules/@appium/types": {
|
|
468
|
-
"version": "0.10.
|
|
468
|
+
"version": "0.10.3",
|
|
469
469
|
"license": "Apache-2.0",
|
|
470
470
|
"dependencies": {
|
|
471
471
|
"@appium/schema": "^0.2.6",
|
|
@@ -473,7 +473,7 @@
|
|
|
473
473
|
"@types/express": "4.17.17",
|
|
474
474
|
"@types/npmlog": "4.1.4",
|
|
475
475
|
"@types/ws": "8.5.4",
|
|
476
|
-
"type-fest": "3.
|
|
476
|
+
"type-fest": "3.7.2"
|
|
477
477
|
},
|
|
478
478
|
"engines": {
|
|
479
479
|
"node": "^14.17.0 || ^16.13.0 || >=18.0.0",
|
|
@@ -481,7 +481,7 @@
|
|
|
481
481
|
}
|
|
482
482
|
},
|
|
483
483
|
"node_modules/@babel/code-frame": {
|
|
484
|
-
"version": "7.
|
|
484
|
+
"version": "7.21.4",
|
|
485
485
|
"license": "MIT",
|
|
486
486
|
"dependencies": {
|
|
487
487
|
"@babel/highlight": "^7.18.6"
|
|
@@ -998,10 +998,10 @@
|
|
|
998
998
|
"license": "MIT"
|
|
999
999
|
},
|
|
1000
1000
|
"node_modules/@types/archiver": {
|
|
1001
|
-
"version": "5.3.
|
|
1001
|
+
"version": "5.3.2",
|
|
1002
1002
|
"license": "MIT",
|
|
1003
1003
|
"dependencies": {
|
|
1004
|
-
"@types/glob": "*"
|
|
1004
|
+
"@types/readdir-glob": "*"
|
|
1005
1005
|
}
|
|
1006
1006
|
},
|
|
1007
1007
|
"node_modules/@types/argparse": {
|
|
@@ -1124,7 +1124,7 @@
|
|
|
1124
1124
|
}
|
|
1125
1125
|
},
|
|
1126
1126
|
"node_modules/@types/node": {
|
|
1127
|
-
"version": "18.15.
|
|
1127
|
+
"version": "18.15.11",
|
|
1128
1128
|
"license": "MIT"
|
|
1129
1129
|
},
|
|
1130
1130
|
"node_modules/@types/normalize-package-data": {
|
|
@@ -1154,6 +1154,13 @@
|
|
|
1154
1154
|
"version": "1.2.4",
|
|
1155
1155
|
"license": "MIT"
|
|
1156
1156
|
},
|
|
1157
|
+
"node_modules/@types/readdir-glob": {
|
|
1158
|
+
"version": "1.1.1",
|
|
1159
|
+
"license": "MIT",
|
|
1160
|
+
"dependencies": {
|
|
1161
|
+
"@types/node": "*"
|
|
1162
|
+
}
|
|
1163
|
+
},
|
|
1157
1164
|
"node_modules/@types/rimraf": {
|
|
1158
1165
|
"version": "3.0.2",
|
|
1159
1166
|
"license": "MIT",
|
|
@@ -1218,7 +1225,7 @@
|
|
|
1218
1225
|
}
|
|
1219
1226
|
},
|
|
1220
1227
|
"node_modules/@xmldom/xmldom": {
|
|
1221
|
-
"version": "0.8.
|
|
1228
|
+
"version": "0.8.7",
|
|
1222
1229
|
"license": "MIT",
|
|
1223
1230
|
"engines": {
|
|
1224
1231
|
"node": ">=10.0.0"
|
|
@@ -1322,7 +1329,7 @@
|
|
|
1322
1329
|
"license": "MIT"
|
|
1323
1330
|
},
|
|
1324
1331
|
"node_modules/appium-adb": {
|
|
1325
|
-
"version": "9.
|
|
1332
|
+
"version": "9.11.0",
|
|
1326
1333
|
"license": "Apache-2.0",
|
|
1327
1334
|
"dependencies": {
|
|
1328
1335
|
"@appium/support": "^3.0.0",
|
|
@@ -1379,11 +1386,11 @@
|
|
|
1379
1386
|
"license": "ISC"
|
|
1380
1387
|
},
|
|
1381
1388
|
"node_modules/appium-android-driver": {
|
|
1382
|
-
"version": "5.
|
|
1389
|
+
"version": "5.9.0",
|
|
1383
1390
|
"license": "Apache-2.0",
|
|
1384
1391
|
"dependencies": {
|
|
1385
1392
|
"@babel/runtime": "^7.0.0",
|
|
1386
|
-
"appium-adb": "^9.
|
|
1393
|
+
"appium-adb": "^9.11.0",
|
|
1387
1394
|
"appium-chromedriver": "^5.2.0",
|
|
1388
1395
|
"asyncbox": "^2.8.0",
|
|
1389
1396
|
"axios": "^1.x",
|
|
@@ -1445,7 +1452,7 @@
|
|
|
1445
1452
|
"license": "ISC"
|
|
1446
1453
|
},
|
|
1447
1454
|
"node_modules/appium-chromedriver": {
|
|
1448
|
-
"version": "5.3.
|
|
1455
|
+
"version": "5.3.4",
|
|
1449
1456
|
"hasInstallScript": true,
|
|
1450
1457
|
"license": "Apache-2.0",
|
|
1451
1458
|
"dependencies": {
|
|
@@ -1879,7 +1886,7 @@
|
|
|
1879
1886
|
}
|
|
1880
1887
|
},
|
|
1881
1888
|
"node_modules/cli-spinners": {
|
|
1882
|
-
"version": "2.
|
|
1889
|
+
"version": "2.8.0",
|
|
1883
1890
|
"extraneous": true,
|
|
1884
1891
|
"license": "MIT",
|
|
1885
1892
|
"engines": {
|
|
@@ -3119,17 +3126,6 @@
|
|
|
3119
3126
|
"triple-beam": "^1.3.0"
|
|
3120
3127
|
}
|
|
3121
3128
|
},
|
|
3122
|
-
"node_modules/longjohn": {
|
|
3123
|
-
"version": "0.2.12",
|
|
3124
|
-
"extraneous": true,
|
|
3125
|
-
"license": "MIT",
|
|
3126
|
-
"dependencies": {
|
|
3127
|
-
"source-map-support": "0.3.2 - 1.0.0"
|
|
3128
|
-
},
|
|
3129
|
-
"engines": {
|
|
3130
|
-
"node": ">= 0.9.3"
|
|
3131
|
-
}
|
|
3132
|
-
},
|
|
3133
3129
|
"node_modules/lunr": {
|
|
3134
3130
|
"version": "2.3.9",
|
|
3135
3131
|
"extraneous": true,
|
|
@@ -3272,7 +3268,7 @@
|
|
|
3272
3268
|
}
|
|
3273
3269
|
},
|
|
3274
3270
|
"node_modules/moment-timezone": {
|
|
3275
|
-
"version": "0.5.
|
|
3271
|
+
"version": "0.5.43",
|
|
3276
3272
|
"license": "MIT",
|
|
3277
3273
|
"dependencies": {
|
|
3278
3274
|
"moment": "^2.29.4"
|
|
@@ -3606,7 +3602,7 @@
|
|
|
3606
3602
|
}
|
|
3607
3603
|
},
|
|
3608
3604
|
"node_modules/package-changed": {
|
|
3609
|
-
"version": "
|
|
3605
|
+
"version": "3.0.0",
|
|
3610
3606
|
"extraneous": true,
|
|
3611
3607
|
"license": "ISC",
|
|
3612
3608
|
"dependencies": {
|
|
@@ -3947,7 +3943,7 @@
|
|
|
3947
3943
|
}
|
|
3948
3944
|
},
|
|
3949
3945
|
"node_modules/readdir-glob": {
|
|
3950
|
-
"version": "1.1.
|
|
3946
|
+
"version": "1.1.3",
|
|
3951
3947
|
"license": "Apache-2.0",
|
|
3952
3948
|
"dependencies": {
|
|
3953
3949
|
"minimatch": "^5.1.0"
|
|
@@ -3991,10 +3987,10 @@
|
|
|
3991
3987
|
}
|
|
3992
3988
|
},
|
|
3993
3989
|
"node_modules/resolve": {
|
|
3994
|
-
"version": "1.22.
|
|
3990
|
+
"version": "1.22.2",
|
|
3995
3991
|
"license": "MIT",
|
|
3996
3992
|
"dependencies": {
|
|
3997
|
-
"is-core-module": "^2.
|
|
3993
|
+
"is-core-module": "^2.11.0",
|
|
3998
3994
|
"path-parse": "^1.0.7",
|
|
3999
3995
|
"supports-preserve-symlinks-flag": "^1.0.0"
|
|
4000
3996
|
},
|
|
@@ -4501,7 +4497,7 @@
|
|
|
4501
4497
|
"license": "0BSD"
|
|
4502
4498
|
},
|
|
4503
4499
|
"node_modules/type-fest": {
|
|
4504
|
-
"version": "3.
|
|
4500
|
+
"version": "3.7.2",
|
|
4505
4501
|
"license": "(MIT OR CC0-1.0)",
|
|
4506
4502
|
"engines": {
|
|
4507
4503
|
"node": ">=14.16"
|
|
@@ -4522,7 +4518,7 @@
|
|
|
4522
4518
|
}
|
|
4523
4519
|
},
|
|
4524
4520
|
"node_modules/typedoc": {
|
|
4525
|
-
"version": "0.23.
|
|
4521
|
+
"version": "0.23.28",
|
|
4526
4522
|
"extraneous": true,
|
|
4527
4523
|
"license": "Apache-2.0",
|
|
4528
4524
|
"dependencies": {
|
|
@@ -4538,7 +4534,7 @@
|
|
|
4538
4534
|
"node": ">= 14.14"
|
|
4539
4535
|
},
|
|
4540
4536
|
"peerDependencies": {
|
|
4541
|
-
"typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x"
|
|
4537
|
+
"typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x"
|
|
4542
4538
|
}
|
|
4543
4539
|
},
|
|
4544
4540
|
"node_modules/typedoc-plugin-markdown": {
|
|
@@ -4575,7 +4571,7 @@
|
|
|
4575
4571
|
}
|
|
4576
4572
|
},
|
|
4577
4573
|
"node_modules/typedoc/node_modules/minimatch": {
|
|
4578
|
-
"version": "7.4.
|
|
4574
|
+
"version": "7.4.6",
|
|
4579
4575
|
"extraneous": true,
|
|
4580
4576
|
"license": "ISC",
|
|
4581
4577
|
"dependencies": {
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"automated testing",
|
|
8
8
|
"android"
|
|
9
9
|
],
|
|
10
|
-
"version": "2.
|
|
10
|
+
"version": "2.20.1",
|
|
11
11
|
"author": "Appium Contributors",
|
|
12
12
|
"license": "Apache-2.0",
|
|
13
13
|
"repository": {
|
|
@@ -126,7 +126,7 @@
|
|
|
126
126
|
"lint-staged": "^13.0.3",
|
|
127
127
|
"mocha": "^10.0.0",
|
|
128
128
|
"pre-commit": "^1.2.2",
|
|
129
|
-
"rimraf": "^
|
|
129
|
+
"rimraf": "^5.0.0",
|
|
130
130
|
"semantic-release": "^20.0.2",
|
|
131
131
|
"sinon": "^15.0.0",
|
|
132
132
|
"webdriverio": "^8.0.2",
|