appium-espresso-driver 2.21.0 → 2.22.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/CHANGELOG.md +14 -0
- package/build/lib/commands/general.js +1 -1
- package/build/lib/commands/general.js.map +1 -1
- package/build/lib/commands/index.js +1 -1
- package/build/lib/commands/index.js.map +1 -1
- package/build/lib/driver.js +1 -1
- package/build/lib/driver.js.map +1 -1
- package/build/lib/espresso-runner.js +1 -1
- package/build/lib/espresso-runner.js.map +1 -1
- package/build/lib/server-builder.js +1 -1
- 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 +2 -1
- package/espresso-server/app/src/main/AndroidManifest.xml +1 -2
- package/npm-shrinkwrap.json +422 -115
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
## [2.22.0](https://github.com/appium/appium-espresso-driver/compare/v2.21.1...v2.22.0) (2023-05-11)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Features
|
|
5
|
+
|
|
6
|
+
* remove isTransitive in compose for newer compose versions ([#875](https://github.com/appium/appium-espresso-driver/issues/875)) ([d82abda](https://github.com/appium/appium-espresso-driver/commit/d82abda466ed5703ba429e3006c90e6e0428919a))
|
|
7
|
+
|
|
8
|
+
## [2.21.1](https://github.com/appium/appium-espresso-driver/compare/v2.21.0...v2.21.1) (2023-04-20)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* build app with Gradle 8.x ([894d7d2](https://github.com/appium/appium-espresso-driver/commit/894d7d22d65a1c3498eb066d8f2616437bc0b206))
|
|
14
|
+
|
|
1
15
|
## [2.21.0](https://github.com/appium/appium-espresso-driver/compare/v2.20.1...v2.21.0) (2023-04-18)
|
|
2
16
|
|
|
3
17
|
|
|
@@ -297,4 +297,4 @@ commands.mobileDismissAutofill = async function mobileDismissAutofill(opts = {})
|
|
|
297
297
|
Object.assign(extensions, commands, helpers);
|
|
298
298
|
var _default = extensions;
|
|
299
299
|
exports.default = _default;
|
|
300
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfc3VwcG9ydCIsIl92YWxpZGF0ZSIsIl9kcml2ZXIiLCJfdXRpbHMiLCJjb21tYW5kcyIsImhlbHBlcnMiLCJleHRlbnNpb25zIiwiZXhwb3J0cyIsImFzc2VydFJlcXVpcmVkT3B0aW9ucyIsIm9wdGlvbnMiLCJyZXF1aXJlZE9wdGlvbk5hbWVzIiwiXyIsImlzQXJyYXkiLCJwcmVzZW50T3B0aW9uTmFtZXMiLCJrZXlzIiwibWlzc2luZ09wdGlvbk5hbWVzIiwiZGlmZmVyZW5jZSIsImlzRW1wdHkiLCJFcnJvciIsIkpTT04iLCJzdHJpbmdpZnkiLCJsYXVuY2hBcHAiLCJlcnJvcnMiLCJVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yIiwiY2xvc2VBcHAiLCJyZXNldCIsImdldENsaXBib2FyZCIsImFkYiIsImdldEFwaUxldmVsIiwiZXNwcmVzc28iLCJqd3Byb3h5IiwiY29tbWFuZCIsIm1vYmlsZVBlcmZvcm1FZGl0b3JBY3Rpb24iLCJvcHRzIiwiYWN0aW9uIiwibW9iaWxlU3dpcGUiLCJkaXJlY3Rpb24iLCJlbGVtZW50Iiwic3dpcGVyIiwic3RhcnRDb29yZGluYXRlcyIsImVuZENvb3JkaW5hdGVzIiwicHJlY2lzaW9uRGVzY3JpYmVyIiwidXRpbCIsInVud3JhcEVsZW1lbnQiLCJtb2JpbGVHZXREZXZpY2VJbmZvIiwibW9iaWxlSXNUb2FzdFZpc2libGUiLCJ0ZXh0IiwiaXNSZWdleHAiLCJoYXNWYWx1ZSIsIkludmFsaWRBcmd1bWVudEVycm9yIiwibW9iaWxlT3BlbkRyYXdlciIsImdyYXZpdHkiLCJtb2JpbGVDbG9zZURyYXdlciIsIm1vYmlsZVNldERhdGUiLCJ5ZWFyIiwibW9udGhPZlllYXIiLCJkYXlPZk1vbnRoIiwibW9iaWxlU2V0VGltZSIsImhvdXJzIiwibWludXRlcyIsIm1vYmlsZU5hdmlnYXRlVG8iLCJtZW51SXRlbUlkIiwibWVudUl0ZW1JZEFzTnVtYmVyIiwicGFyc2VJbnQiLCJpc05hTiIsIm1vYmlsZVdlYkF0b21zIiwiZ2V0RGlzcGxheURlbnNpdHkiLCJtb2JpbGVTY3JvbGxUb1BhZ2UiLCJzY3JvbGxUb1R5cGVzIiwicmVzIiwidmFsaWRhdGUiLCJwcmVzZW5jZSIsInNjcm9sbFRvIiwiaW5jbHVzaW9uIiwid2l0aGluIiwibWVzc2FnZSIsImpvaW4iLCJzY3JvbGxUb1BhZ2UiLCJudW1lcmljYWxpdHkiLCJvbmx5SW50ZWdlciIsImdyZWF0ZXJUaGFuT3JFcXVhbFRvIiwic21vb3RoU2Nyb2xsIiwibG9nIiwid2FybiIsIm1vYmlsZUJhY2tkb29yIiwidGFyZ2V0IiwibWV0aG9kcyIsImVsZW1lbnRJZCIsInRhcmdldEVsZW1lbnQiLCJtb2JpbGVVaWF1dG9tYXRvciIsInN0cmF0ZWd5IiwibG9jYXRvciIsImluZGV4IiwibW9iaWxlVWlhdXRvbWF0b3JQYWdlU291cmNlIiwibW9iaWxlRmxhc2hFbGVtZW50IiwiZHVyYXRpb25NaWxsaXMiLCJyZXBlYXRDb3VudCIsIm1vYmlsZUNsaWNrQWN0aW9uIiwidGFwcGVyIiwiY29vcmRpbmF0ZXNQcm92aWRlciIsImlucHV0RGV2aWNlIiwiYnV0dG9uU3RhdGUiLCJ1cGRhdGVTZXR0aW5ncyIsInNldHRpbmdzIiwiZ2V0U2V0dGluZ3MiLCJzdXNwZW5kQ2hyb21lZHJpdmVyUHJveHkiLCJjaHJvbWVkcml2ZXIiLCJwcm94eVJlcVJlcyIsImJpbmQiLCJwcm94eUNvbW1hbmQiLCJqd3BQcm94eUFjdGl2ZSIsIm1vYmlsZVN0YXJ0QWN0aXZpdHkiLCJhcHBQYWNrYWdlIiwiY2FwcyIsImFwcEFjdGl2aXR5IiwibG9jYWxlIiwib3B0aW9uYWxJbnRlbnRBcmd1bWVudHMiLCJvcHRpb25hbEFjdGl2aXR5QXJndW1lbnRzIiwic3RhcnRBY3Rpdml0eSIsImFwcFdhaXRQYWNrYWdlIiwiYXBwV2FpdEFjdGl2aXR5IiwicXVhbGlmeUFjdGl2aXR5TmFtZSIsImRlYnVnIiwid2FpdEZvckFjdGl2aXR5IiwibW9iaWxlRGlzbWlzc0F1dG9maWxsIiwiT2JqZWN0IiwiYXNzaWduIiwiX2RlZmF1bHQiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL2NvbW1hbmRzL2dlbmVyYWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IHV0aWwgfSBmcm9tICdhcHBpdW0vc3VwcG9ydCc7XG5pbXBvcnQgdmFsaWRhdGUgZnJvbSAndmFsaWRhdGUuanMnO1xuaW1wb3J0IHsgZXJyb3JzIH0gZnJvbSAnYXBwaXVtL2RyaXZlcic7XG5pbXBvcnQgeyBxdWFsaWZ5QWN0aXZpdHlOYW1lIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5jb25zdCBjb21tYW5kcyA9IHt9LCBoZWxwZXJzID0ge30sIGV4dGVuc2lvbnMgPSB7fTtcblxuZnVuY3Rpb24gYXNzZXJ0UmVxdWlyZWRPcHRpb25zIChvcHRpb25zLCByZXF1aXJlZE9wdGlvbk5hbWVzKSB7XG4gIGlmICghXy5pc0FycmF5KHJlcXVpcmVkT3B0aW9uTmFtZXMpKSB7XG4gICAgcmVxdWlyZWRPcHRpb25OYW1lcyA9IFtyZXF1aXJlZE9wdGlvbk5hbWVzXTtcbiAgfVxuICBjb25zdCBwcmVzZW50T3B0aW9uTmFtZXMgPSBfLmtleXMob3B0aW9ucyk7XG4gIGNvbnN0IG1pc3NpbmdPcHRpb25OYW1lcyA9IF8uZGlmZmVyZW5jZShyZXF1aXJlZE9wdGlvbk5hbWVzLCBwcmVzZW50T3B0aW9uTmFtZXMpO1xuICBpZiAoXy5pc0VtcHR5KG1pc3NpbmdPcHRpb25OYW1lcykpIHtcbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBmb2xsb3dpbmcgb3B0aW9ucyBhcmUgcmVxdWlyZWQ6ICR7SlNPTi5zdHJpbmdpZnkobWlzc2luZ09wdGlvbk5hbWVzKX0uIGAgK1xuICAgIGBZb3UgaGF2ZSBvbmx5IHByb3ZpZGVkOiAke0pTT04uc3RyaW5naWZ5KHByZXNlbnRPcHRpb25OYW1lcyl9YCk7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZXF1aXJlLWF3YWl0XG5jb21tYW5kcy5sYXVuY2hBcHAgPSBhc3luYyBmdW5jdGlvbiBsYXVuY2hBcHAgKCkge1xuICB0aHJvdyBuZXcgZXJyb3JzLlVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3IoJ1BsZWFzZSBjcmVhdGUgYSBuZXcgc2Vzc2lvbiBpbiBvcmRlciB0byBsYXVuY2ggdGhlIGFwcGxpY2F0aW9uIHVuZGVyIHRlc3QnKTtcbn07XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZXF1aXJlLWF3YWl0XG5jb21tYW5kcy5jbG9zZUFwcCA9IGFzeW5jIGZ1bmN0aW9uIGNsb3NlQXBwICgpIHtcbiAgdGhyb3cgbmV3IGVycm9ycy5VbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yKCdQbGVhc2UgcXVpdCB0aGUgc2Vzc2lvbiBpbiBvcmRlciB0byBjbG9zZSB0aGUgYXBwbGljYXRpb24gdW5kZXIgdGVzdCcpO1xufTtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlcXVpcmUtYXdhaXRcbmNvbW1hbmRzLnJlc2V0ID0gYXN5bmMgZnVuY3Rpb24gcmVzZXQgKCkge1xuICB0aHJvdyBuZXcgZXJyb3JzLlVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3IoXG4gICAgJ1BsZWFzZSBxdWl0IHRoZSBzZXNzaW9uIGFuZCBjcmVhdGUgYSBuZXcgb25lICcgK1xuICAgICdpbiBvcmRlciB0byBjbG9zZSBhbmQgbGF1bmNoIHRoZSBhcHBsaWNhdGlvbiB1bmRlciB0ZXN0Jyk7XG59O1xuXG5jb21tYW5kcy5nZXRDbGlwYm9hcmQgPSBhc3luYyBmdW5jdGlvbiBnZXRDbGlwYm9hcmQgKCkge1xuICByZXR1cm4gKGF3YWl0IHRoaXMuYWRiLmdldEFwaUxldmVsKCkgPCAyOSlcbiAgICA/IChhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZCgnL2FwcGl1bS9kZXZpY2UvZ2V0X2NsaXBib2FyZCcsICdQT1NUJywge30pKVxuICAgIDogKGF3YWl0IHRoaXMuYWRiLmdldENsaXBib2FyZCgpKTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZVBlcmZvcm1FZGl0b3JBY3Rpb24gPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVQZXJmb3JtRWRpdG9yQWN0aW9uIChvcHRzID0ge30pIHtcbiAgY29uc3Qge2FjdGlvbn0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydhY3Rpb24nXSk7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZCgnL2FwcGl1bS9kZXZpY2UvcGVyZm9ybV9lZGl0b3JfYWN0aW9uJywgJ1BPU1QnLCB7YWN0aW9ufSk7XG59O1xuXG5jb21tYW5kcy5tb2JpbGVTd2lwZSA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVN3aXBlIChvcHRzID0ge30pIHtcbiAgY29uc3Qge2RpcmVjdGlvbiwgZWxlbWVudCwgc3dpcGVyLCBzdGFydENvb3JkaW5hdGVzLCBlbmRDb29yZGluYXRlcywgcHJlY2lzaW9uRGVzY3JpYmVyfSA9IGFzc2VydFJlcXVpcmVkT3B0aW9ucyhvcHRzLCBbJ2VsZW1lbnQnXSk7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vc3dpcGVgLCAnUE9TVCcsIHtcbiAgICBkaXJlY3Rpb24sIGVsZW1lbnQsIHN3aXBlciwgc3RhcnRDb29yZGluYXRlcywgZW5kQ29vcmRpbmF0ZXMsIHByZWNpc2lvbkRlc2NyaWJlclxuICB9KTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZUdldERldmljZUluZm8gPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVHZXREZXZpY2VJbmZvICgpIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKCcvYXBwaXVtL2RldmljZS9pbmZvJywgJ0dFVCcpO1xufTtcblxuY29tbWFuZHMubW9iaWxlSXNUb2FzdFZpc2libGUgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVJc1RvYXN0VmlzaWJsZSAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHt0ZXh0LCBpc1JlZ2V4cH0gPSBvcHRzO1xuICBpZiAoIXV0aWwuaGFzVmFsdWUodGV4dCkpIHtcbiAgICB0aHJvdyBuZXcgZXJyb3JzLkludmFsaWRBcmd1bWVudEVycm9yKGAndGV4dCcgYXJndW1lbnQgaXMgbWFuZGF0b3J5YCk7XG4gIH1cbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKCcvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlL2lzX3RvYXN0X2Rpc3BsYXllZCcsICdQT1NUJywge1xuICAgIHRleHQsXG4gICAgaXNSZWdleHAsXG4gIH0pO1xufTtcblxuY29tbWFuZHMubW9iaWxlT3BlbkRyYXdlciA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZU9wZW5EcmF3ZXIgKG9wdHMgPSB7fSkge1xuICBjb25zdCB7ZWxlbWVudCwgZ3Jhdml0eX0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50J10pO1xuXG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vb3Blbl9kcmF3ZXJgLCAnUE9TVCcsIHtcbiAgICBncmF2aXR5XG4gIH0pO1xufTtcblxuY29tbWFuZHMubW9iaWxlQ2xvc2VEcmF3ZXIgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVDbG9zZURyYXdlciAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtlbGVtZW50LCBncmF2aXR5fSA9IGFzc2VydFJlcXVpcmVkT3B0aW9ucyhvcHRzLCBbJ2VsZW1lbnQnXSk7XG5cbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlLyR7dXRpbC51bndyYXBFbGVtZW50KGVsZW1lbnQpfS9jbG9zZV9kcmF3ZXJgLCAnUE9TVCcsIHtcbiAgICBncmF2aXR5XG4gIH0pO1xufTtcblxuY29tbWFuZHMubW9iaWxlU2V0RGF0ZSA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVNldERhdGUgKG9wdHMgPSB7fSkge1xuICBjb25zdCB7ZWxlbWVudCwgeWVhciwgbW9udGhPZlllYXIsIGRheU9mTW9udGh9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnZWxlbWVudCcsICd5ZWFyJywgJ21vbnRoT2ZZZWFyJywgJ2RheU9mTW9udGgnXSk7XG5cbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlLyR7dXRpbC51bndyYXBFbGVtZW50KGVsZW1lbnQpfS9zZXRfZGF0ZWAsICdQT1NUJywge1xuICAgIHllYXIsXG4gICAgbW9udGhPZlllYXIsXG4gICAgZGF5T2ZNb250aCxcbiAgfSk7XG59O1xuXG5jb21tYW5kcy5tb2JpbGVTZXRUaW1lID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlU2V0VGltZSAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtlbGVtZW50LCBob3VycywgbWludXRlc30gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50JywgJ2hvdXJzJywgJ21pbnV0ZXMnXSk7XG5cbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlLyR7dXRpbC51bndyYXBFbGVtZW50KGVsZW1lbnQpfS9zZXRfdGltZWAsICdQT1NUJywge1xuICAgIGhvdXJzLFxuICAgIG1pbnV0ZXMsXG4gIH0pO1xufTtcblxuY29tbWFuZHMubW9iaWxlTmF2aWdhdGVUbyA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZU5hdmlnYXRlVG8gKG9wdHMgPSB7fSkge1xuICBsZXQge2VsZW1lbnQsIG1lbnVJdGVtSWR9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnbWVudUl0ZW1JZCcsICdlbGVtZW50J10pO1xuXG4gIGxldCBtZW51SXRlbUlkQXNOdW1iZXIgPSBwYXJzZUludChtZW51SXRlbUlkLCAxMCk7XG4gIGlmIChfLmlzTmFOKG1lbnVJdGVtSWRBc051bWJlcikgfHwgbWVudUl0ZW1JZEFzTnVtYmVyIDwgMCkge1xuICAgIHRocm93IG5ldyBlcnJvcnMuSW52YWxpZEFyZ3VtZW50RXJyb3IoYCdtZW51SXRlbUlkJyBtdXN0IGJlIGEgbm9uLW5lZ2F0aXZlIG51bWJlci4gRm91bmQgJHttZW51SXRlbUlkfWApO1xuICB9XG5cbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlLyR7dXRpbC51bndyYXBFbGVtZW50KGVsZW1lbnQpfS9uYXZpZ2F0ZV90b2AsICdQT1NUJywge1xuICAgIG1lbnVJdGVtSWRcbiAgfSk7XG59O1xuXG4vKipcbiAqIFJ1bnMgYSBjaGFpbiBvZiBFc3ByZXNzbyB3ZWIgYXRvbXMgKHNlZSBodHRwczovL2RldmVsb3Blci5hbmRyb2lkLmNvbS90cmFpbmluZy90ZXN0aW5nL2VzcHJlc3NvL3dlYiBmb3IgcmVmZXJlbmNlKVxuICpcbiAqIFRha2VzIEpTT04gb2YgdGhlIGZvcm1cbiAqXG4gKiB7XG4gKiAgIFwid2Vidmlld0VsXCI6IFwiPEVMRU1FTlRfSUQ+XCIsIC8vIG9wdGlvbmFsIHdlYnZpZXcgZWxlbWVudCB0byBvcGVyYXRlIG9uXG4gKiAgIFwiZm9yY2VKYXZhc2NyaXB0RW5hYmxlZFwiOiB0cnVlfGZhbHNlLCAvLyBpZiB3ZWJ2aWV3IGRpc2FibGVzIGphdmFzY3JpcHQsIHdlYmF0b21zIHdvbid0IHdvcmssIHRoaXMgZm9yY2VzIGl0XG4gKiAgIFwibWV0aG9kQ2hhaW5cIjogW1xuICogICAgIHtcIm5hbWVcIjogXCJtZXRob2ROYW1lXCIsIFwiYXRvbVwiOiB7XCJuYW1lXCI6IFwiYXRvbU5hbWVcIiwgXCJhcmdzXCI6IFtcImFyZzFcIiwgXCJhcmcyXCIsIC4uLl19fSxcbiAqICAgICAuLi5cbiAqICAgXVxuICogfVxuICpcbiAqL1xuY29tbWFuZHMubW9iaWxlV2ViQXRvbXMgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVXZWJBdG9tcyAob3B0cyA9IHt9KSB7XG4gIG9wdHMgPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydtZXRob2RDaGFpbiddKTtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlL3dlYl9hdG9tc2AsICdQT1NUJywgb3B0cyk7XG59O1xuXG5jb21tYW5kcy5nZXREaXNwbGF5RGVuc2l0eSA9IGFzeW5jIGZ1bmN0aW9uIGdldERpc3BsYXlEZW5zaXR5ICgpIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKCcvYXBwaXVtL2RldmljZS9kaXNwbGF5X2RlbnNpdHknLCAnR0VUJywge30pO1xufTtcblxuY29tbWFuZHMubW9iaWxlU2Nyb2xsVG9QYWdlID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlU2Nyb2xsVG9QYWdlIChvcHRzID0ge30pIHtcblxuICAvLyBWYWxpZGF0ZSB0aGUgcGFyYW1ldGVyc1xuICBjb25zdCBzY3JvbGxUb1R5cGVzID0gWydmaXJzdCcsICdsYXN0JywgJ2xlZnQnLCAncmlnaHQnXTtcbiAgY29uc3QgcmVzID0gdmFsaWRhdGUob3B0cywge1xuICAgIGVsZW1lbnQ6IHtwcmVzZW5jZTogdHJ1ZX0sXG4gICAgc2Nyb2xsVG86IHtcbiAgICAgIGluY2x1c2lvbjoge1xuICAgICAgICB3aXRoaW46IHNjcm9sbFRvVHlwZXMsXG4gICAgICAgIG1lc3NhZ2U6IGBcInNjcm9sbFRvXCIgbXVzdCBiZSBvbmUgb2YgXCIke3Njcm9sbFRvVHlwZXMuam9pbignLCAnKX1cIiBmb3VuZCAnJXt2YWx1ZX0nYCxcbiAgICAgIH1cbiAgICB9LFxuICAgIHNjcm9sbFRvUGFnZToge1xuICAgICAgbnVtZXJpY2FsaXR5OiB7XG4gICAgICAgIG9ubHlJbnRlZ2VyOiB0cnVlLFxuICAgICAgICBncmVhdGVyVGhhbk9yRXF1YWxUbzogMCxcbiAgICAgICAgbWVzc2FnZTogYFwic2Nyb2xsVG9QYWdlXCIgbXVzdCBiZSBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyLiBGb3VuZCAnJXt2YWx1ZX0nYFxuICAgICAgfSxcbiAgICB9LFxuICB9KTtcbiAgaWYgKHV0aWwuaGFzVmFsdWUocmVzKSkge1xuICAgIHRocm93IG5ldyBlcnJvcnMuSW52YWxpZEFyZ3VtZW50RXJyb3IoYEludmFsaWQgc2Nyb2xsVG8gcGFyYW1ldGVyczogJHtKU09OLnN0cmluZ2lmeShyZXMpfWApO1xuICB9XG5cbiAgY29uc3Qge2VsZW1lbnQsIHNjcm9sbFRvLCBzY3JvbGxUb1BhZ2UsIHNtb290aFNjcm9sbH0gPSBvcHRzO1xuXG4gIGlmICh1dGlsLmhhc1ZhbHVlKHNjcm9sbFRvKSAmJiB1dGlsLmhhc1ZhbHVlKHNjcm9sbFRvUGFnZSkpIHtcbiAgICB0aGlzLmxvZy53YXJuKGAnc2Nyb2xsVG8nIGFuZCAnc2Nyb2xsVG9QYWdlJyB3aGVyZSBib3RoIHByb3ZpZGVkLiBEZWZhdWx0aW5nIHRvICdzY3JvbGxUbydgKTtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vc2Nyb2xsX3RvX3BhZ2VgLCAnUE9TVCcsIHtcbiAgICBzY3JvbGxUbyxcbiAgICBzY3JvbGxUb1BhZ2UsXG4gICAgc21vb3RoU2Nyb2xsLFxuICB9KTtcbn07XG5cblxuLyoqXG4gKiAgQVBJIHRvIGludm9rZSBtZXRob2RzIGRlZmluZWQgaW4gQW5kcm9pZCBhcHAuXG4gKlxuICogIEV4YW1wbGUgZGF0YVxuICogIHtcbiAqICAgdGFyZ2V0OiAnYWN0aXZpdHknLFxuICogICBtZXRob2RzOlxuICogICAgICAgICBbXG4gKiAgICAgICAgICAge1xuICogICAgICAgICAgICAgICBuYW1lOiBcInNvbWVNZXRob2RcIixcbiAqICAgICAgICAgICB9LFxuICogICAgICAgICAgIHtcbiAqICAgICAgICAgICAgICAgbmFtZTogXCJhbm90aGVyTWV0aG9kXCIsXG4gKiAgICAgICAgICAgICAgIGFyZ3M6XG4gKiAgICAgICAgICAgICAgICAgICBbXG4gKiAgICAgICAgICAgICAgICAgICAgICAge3ZhbHVlOiBcIkxvbFwiLCB0eXBlOiAnamF2YS5sYW5nLkNoYXJTZXF1ZW5jZSd9LFxuICogICAgICAgICAgICAgICAgICAgICAgIHt2YWx1ZTogMSwgdHlwZTogJ2ludCd9XG4gKiAgICAgICAgICAgICAgICAgICBdXG4gKiAgICAgICAgICAgfVxuICogICAgICAgICBdXG4gKiB9XG4gKlxuICogSW4gYWJvdmUgZXhhbXBsZSwgbWV0aG9kIFwic29tZU1ldGhvZFwiIHdpbGwgYmUgaW52b2tlZCBvbiAnYWN0aXZpdHknLiBPbiB0aGUgcmVzdWx0LCBcImFub3RoZXJNZXRob2RcIiB3aWxsIGJlIGludm9rZWRcbiAqICBcInRhcmdldFwiIGNhbiBiZSBlaXRoZXIgJ2FjdGl2aXR5JywgJ2FwcGxpY2F0aW9uJyBvciAnZWxlbWVudCdcbiAqICBJZiB0YXJnZXQgaXMgc2V0IHRvICdhcHBsaWNhdGlvbicsIG1ldGhvZHMgd2lsbCBiZSBpbnZva2VkIG9uIGFwcGxpY2F0aW9uIGNsYXNzXG4gKiAgSWYgdGFyZ2V0IGlzIHNldCB0byAnYWN0aXZpdHknLCBtZXRob2RzIHdpbGwgYmUgaW52b2tlZCBvbiBjdXJyZW50IGFjdGl2aXR5XG4gKiAgSWYgdGFyZ2V0IGlzIHNldCB0byAnZWxlbWVudCcsICdlbGVtZW50SWQnIG11c3QgYmUgc3BlY2lmaWVkXG4gKlxuICogLSBPbmx5ICdQdWJsaWMnIG1ldGhvZHMgY2FuIGJlIGludm9rZWQuICgnb3BlbicgbW9kaWZpcmUgaXMgbmVjZXNzYXJ5IGluIEtvdGxpbilcbiAqIC0gZm9sbG93aW5nIHByaW1pdGl2ZSB0eXBlcyBhcmUgc3VwcG9ydGVkOiBcImludFwiLCBcImJvb2xlYW5cIiwgXCJieXRlXCIsIFwic2hvcnRcIiwgXCJsb25nXCIsIFwiZmxvYXRcIiwgXCJjaGFyXCJcbiAqIC0gIE5vbi1wcmltaXRpdmUgdHlwZXMgd2l0aCBmdWxseSBxdWFsaWZpZWQgbmFtZSBcImphdmEubGFuZy4qXCIgaXMgYWxzbyBzdXBwb3J0ZWQ6XG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVnLiBcImphdmEubGFuZy5DaGFyU2VxdWVuY2VcIiwgXCJqYXZhLmxhbmcuU3RyaW5nXCIsIFwiamF2YS5sYW5nLkludGVnZXJcIiwgXCJqYXZhLmxhbmcuRmxvYXRcIixcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJqYXZhLmxhbmcuRG91YmxlXCIsIFwiamF2YS5sYW5nLkJvb2xlYW5cIiwgXCJqYXZhLmxhbmcuTG9uZ1wiLCBcImphdmEubGFuZy5TaG9ydFwiLFxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImphdmEubGFuZy5DaGFyYWN0ZXJcIiBldGMuLi5cbiAqXG4gKlxuICogQHRocm93cyAge0Vycm9yfSBpZiB0YXJnZXQgaXMgbm90ICdhY3Rpdml0eScgb3IgJ2FwcGxpY2F0aW9uJ1xuICogQHRocm93cyAge0Vycm9yfSBpZiBhIG1ldGhvZCBpcyBub3QgZm91bmQgd2l0aCBnaXZlbiBhcmd1bWVudCB0eXBlc1xuICpcbiAqIEByZXR1cm4geyp9IHRoZSByZXN1bHQgb2YgdGhlIGxhc3QgbWV0aG9kIGluIHRoZSBpbnZvY2F0aW9uIGNoYWluLiBJZiBtZXRob2QgcmV0dXJuIHR5cGUgaXMgdm9pZCwgdGhlbiBcIjxWT0lEPlwiIHdpbGwgYmUgcmV0dXJuZWRcbiAqXG4gKi9cbmNvbW1hbmRzLm1vYmlsZUJhY2tkb29yID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlQmFja2Rvb3IgKG9wdHMgPSB7fSkge1xuICBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWyd0YXJnZXQnLCAnbWV0aG9kcyddKTtcbiAgY29uc3Qge3RhcmdldCwgbWV0aG9kc30gPSBvcHRzO1xuICBpZiAodGFyZ2V0ID09PSAnZWxlbWVudCcpIHtcbiAgICBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50SWQnXSk7XG4gIH1cbiAgY29uc3Qge2VsZW1lbnRJZDogdGFyZ2V0RWxlbWVudH0gPSBvcHRzO1xuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvYmFja2Rvb3JgLCAnUE9TVCcsIHt0YXJnZXQsIG1ldGhvZHMsIHRhcmdldEVsZW1lbnR9KTtcbn07XG5cbi8qKlxuICogIEV4ZWN1dGUgVWlBdXRvbWF0b3IyIGNvbW1hbmRzIHRvIGRyaXZlIG91dCBvZiBhcHAgYXJlYXMuXG4gKiAgc3RyYXRlZ3kgY2FuIGJlIG9uZSBvZjogXCJjbGF6elwiLCBcInJlc1wiLCBcInRleHRcIiwgXCJ0ZXh0Q29udGFpbnNcIiwgXCJ0ZXh0RW5kc1dpdGhcIiwgXCJ0ZXh0U3RhcnRzV2l0aFwiLFxuICogICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGVzY1wiLCBcImRlc2NDb250YWluc1wiLCBcImRlc2NFbmRzV2l0aFwiLCBcImRlc2NTdGFydHNXaXRoXCIsIFwicGtnXCJcbiAqXG4gKiAgYWN0aW9uIGNhbiBiZSBvbmUgb2Y6IFwiY2xpY2tcIiwgXCJsb25nQ2xpY2tcIiwgXCJnZXRUZXh0XCIsIFwiZ2V0Q29udGVudERlc2NyaXB0aW9uXCIsIFwiZ2V0Q2xhc3NOYW1lXCIsXG4gKiAgICAgICAgICAgICAgICAgICAgICAgIFwiZ2V0UmVzb3VyY2VOYW1lXCIsIFwiZ2V0VmlzaWJsZUJvdW5kc1wiLCBcImdldFZpc2libGVDZW50ZXJcIiwgXCJnZXRBcHBsaWNhdGlvblBhY2thZ2VcIixcbiAqICAgICAgICAgICAgICAgICAgICAgICAgXCJnZXRDaGlsZENvdW50XCIsIFwiY2xlYXJcIiwgXCJpc0NoZWNrYWJsZVwiLCBcImlzQ2hlY2tlZFwiLCBcImlzQ2xpY2thYmxlXCIsIFwiaXNFbmFibGVkXCIsXG4gKiAgICAgICAgICAgICAgICAgICAgICAgIFwiaXNGb2N1c2FibGVcIiwgXCJpc0ZvY3VzZWRcIiwgXCJpc0xvbmdDbGlja2FibGVcIiwgXCJpc1Njcm9sbGFibGVcIiwgXCJpc1NlbGVjdGVkXCJcbiAqL1xuY29tbWFuZHMubW9iaWxlVWlhdXRvbWF0b3IgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVVaWF1dG9tYXRvciAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtzdHJhdGVneSwgbG9jYXRvciwgYWN0aW9uLCBpbmRleH0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydzdHJhdGVneScsICdsb2NhdG9yJywgJ2FjdGlvbiddKTtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlL3VpYXV0b21hdG9yYCwgJ1BPU1QnLCB7c3RyYXRlZ3ksIGxvY2F0b3IsIGluZGV4LCBhY3Rpb259KTtcbn07XG5cbi8qKlxuICogIEV4ZWN1dGUgVWlBdXRvbWF0b3IyIGNvbW1hbmQgdG8gcmV0dXJuIHRoZSBVSSBkdW1wIHdoZW4gQVVUIGlzIGluIGJhY2tncm91bmQuXG4gKiBAdGhyb3dzICB7RXJyb3J9IGlmIHVpYXV0b21hdG9yIHZpZXcgZHVtcCBpcyB1bnN1Y2Nlc3NmdWxcbiAqIEByZXR1cm5zIHtzdHJpbmd9IHVpYXV0b21hdG9yIERPTSB4bWwgYXMgc3RyaW5nXG4gKi9cbmNvbW1hbmRzLm1vYmlsZVVpYXV0b21hdG9yUGFnZVNvdXJjZSA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVVpYXV0b21hdG9yUGFnZVNvdXJjZSAoKSB7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS91aWF1dG9tYXRvcl9wYWdlX3NvdXJjZWAsICdHRVQnKTtcbn07XG5cbi8qKlxuICogIEZsYXNoIHRoZSBlbGVtZW50IHdpdGggZ2l2ZW4gaWQuXG4gKiAgZHVyYXRpb25NaWxsaXMgYW5kIHJlcGVhdENvdW50IGFyZSBvcHRpb25hbFxuICpcbiAqL1xuY29tbWFuZHMubW9iaWxlRmxhc2hFbGVtZW50ID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlRmxhc2hFbGVtZW50IChvcHRzID0ge30pIHtcbiAgY29uc3Qge2VsZW1lbnR9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnZWxlbWVudCddKTtcbiAgY29uc3Qge2R1cmF0aW9uTWlsbGlzLCByZXBlYXRDb3VudH0gPSBvcHRzO1xuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvJHt1dGlsLnVud3JhcEVsZW1lbnQoZWxlbWVudCl9L2ZsYXNoYCwgJ1BPU1QnLCB7XG4gICAgZHVyYXRpb25NaWxsaXMsXG4gICAgcmVwZWF0Q291bnRcbiAgfSk7XG59O1xuXG4vKipcbiAqIFBlcmZvcm0gYSAnR2VuZXJhbENsaWNrQWN0aW9uJyAoaHR0cHM6Ly9kZXZlbG9wZXIuYW5kcm9pZC5jb20vcmVmZXJlbmNlL2FuZHJvaWR4L3Rlc3QvZXNwcmVzc28vYWN0aW9uL0dlbmVyYWxDbGlja0FjdGlvbilcbiAqL1xuY29tbWFuZHMubW9iaWxlQ2xpY2tBY3Rpb24gPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVDbGlja0FjdGlvbiAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtlbGVtZW50LCB0YXBwZXIsIGNvb3JkaW5hdGVzUHJvdmlkZXIsIHByZWNpc2lvbkRlc2NyaWJlcixcbiAgICAgICAgIGlucHV0RGV2aWNlLCBidXR0b25TdGF0ZX0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50J10pO1xuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvJHt1dGlsLnVud3JhcEVsZW1lbnQoZWxlbWVudCl9L2NsaWNrX2FjdGlvbmAsICdQT1NUJywge1xuICAgIHRhcHBlciwgY29vcmRpbmF0ZXNQcm92aWRlciwgcHJlY2lzaW9uRGVzY3JpYmVyLCBpbnB1dERldmljZSwgYnV0dG9uU3RhdGVcbiAgfSk7XG59O1xuXG5jb21tYW5kcy51cGRhdGVTZXR0aW5ncyA9IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVNldHRpbmdzIChzZXR0aW5ncykge1xuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vc2V0dGluZ3NgLCAnUE9TVCcsIHsgc2V0dGluZ3MgfSk7XG59O1xuXG5jb21tYW5kcy5nZXRTZXR0aW5ncyA9IGFzeW5jIGZ1bmN0aW9uIGdldFNldHRpbmdzICgpIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL3NldHRpbmdzYCwgJ0dFVCcpO1xufTtcblxuLy8gU3RvcCBwcm94eWluZyB0byBhbnkgQ2hyb21lZHJpdmVyIGFuZCByZWRpcmVjdCB0byBFc3ByZXNzb1xuaGVscGVycy5zdXNwZW5kQ2hyb21lZHJpdmVyUHJveHkgPSBmdW5jdGlvbiBzdXNwZW5kQ2hyb21lZHJpdmVyUHJveHkgKCkge1xuICB0aGlzLmNocm9tZWRyaXZlciA9IG51bGw7XG4gIHRoaXMucHJveHlSZXFSZXMgPSB0aGlzLmVzcHJlc3NvLnByb3h5UmVxUmVzLmJpbmQodGhpcy5lc3ByZXNzbyk7XG4gIHRoaXMucHJveHlDb21tYW5kID0gdGhpcy5lc3ByZXNzby5wcm94eUNvbW1hbmQuYmluZCh0aGlzLmVzcHJlc3NvKTtcbiAgdGhpcy5qd3BQcm94eUFjdGl2ZSA9IHRydWU7XG59O1xuXG4vKipcbiAqICBTdGFydHMgdGhlIGdpdmVuIGFjdGl2aXR5IHdpdGggaW50ZW50IG9wdGlvbnMsIGFjdGl2aXR5IG9wdGlvbnMgYW5kIGxvY2FsZS5cbiAqICBBY3Rpdml0eSBjb3VsZCBvbmx5IGJlIGV4ZWN1dGVkIGluIHNjb3BlIG9mIHRoZSBjdXJyZW50IGFwcCBwYWNrYWdlLlxuICpcbiAqICBhcHBBY3Rpdml0eSBpcyBtYW5kYXRvcnlcbiAqXG4gKiAgbG9jYWxlLCBvcHRpb25hbEludGVudEFyZ3VtZW50cywgb3B0aW9uYWxBY3Rpdml0eUFyZ3VtZW50cyBhcmUgb3B0aW9uYWxcbiAqL1xuY29tbWFuZHMubW9iaWxlU3RhcnRBY3Rpdml0eSA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVN0YXJ0QWN0aXZpdHkgKG9wdHMgPSB7fSkge1xuICBjb25zdCBhcHBQYWNrYWdlID0gdGhpcy5jYXBzLmFwcFBhY2thZ2U7XG4gIGNvbnN0IHtcbiAgICBhcHBBY3Rpdml0eSxcbiAgICBsb2NhbGUsXG4gICAgb3B0aW9uYWxJbnRlbnRBcmd1bWVudHMsXG4gICAgb3B0aW9uYWxBY3Rpdml0eUFyZ3VtZW50c1xuICB9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnYXBwQWN0aXZpdHknXSk7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9kZXZpY2Uvc3RhcnRfYWN0aXZpdHlgLCAnUE9TVCcsIHtcbiAgICBhcHBQYWNrYWdlLFxuICAgIGFwcEFjdGl2aXR5LFxuICAgIGxvY2FsZSxcbiAgICBvcHRpb25hbEludGVudEFyZ3VtZW50cyxcbiAgICBvcHRpb25hbEFjdGl2aXR5QXJndW1lbnRzXG4gIH0pO1xufTtcblxuY29tbWFuZHMuc3RhcnRBY3Rpdml0eSA9IGFzeW5jIGZ1bmN0aW9uIHN0YXJ0QWN0aXZpdHkgKGFwcFBhY2thZ2UsIGFwcEFjdGl2aXR5LFxuICBhcHBXYWl0UGFja2FnZSwgYXBwV2FpdEFjdGl2aXR5KSB7XG4gIC8vIGludGVudEFjdGlvbiwgaW50ZW50Q2F0ZWdvcnksIGludGVudEZsYWdzLCBvcHRpb25hbEludGVudEFyZ3VtZW50cywgZG9udFN0b3BBcHBPblJlc2V0XG4gIC8vIHBhcmFtZXRlcnMgYXJlIG5vdCBzdXBwb3J0ZWQgYnkgRXNwcmVzc29cbiAgYXBwUGFja2FnZSA9IGFwcFBhY2thZ2UgfHwgdGhpcy5jYXBzLmFwcFBhY2thZ2U7XG4gIGFwcFdhaXRQYWNrYWdlID0gYXBwV2FpdFBhY2thZ2UgfHwgYXBwUGFja2FnZTtcbiAgYXBwQWN0aXZpdHkgPSBxdWFsaWZ5QWN0aXZpdHlOYW1lKGFwcEFjdGl2aXR5LCBhcHBQYWNrYWdlKTtcbiAgYXBwV2FpdEFjdGl2aXR5ID0gcXVhbGlmeUFjdGl2aXR5TmFtZShhcHBXYWl0QWN0aXZpdHkgfHwgYXBwQWN0aXZpdHksIGFwcFdhaXRQYWNrYWdlKTtcbiAgdGhpcy5sb2cuZGVidWcoYFN0YXJ0aW5nIGFjdGl2aXR5ICcke2FwcEFjdGl2aXR5fScgZm9yIHBhY2thZ2UgJyR7YXBwUGFja2FnZX0nYCk7XG4gIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2RldmljZS9zdGFydF9hY3Rpdml0eWAsICdQT1NUJywge1xuICAgIGFwcFBhY2thZ2UsXG4gICAgYXBwQWN0aXZpdHksXG4gIH0pO1xuICBhd2FpdCB0aGlzLmFkYi53YWl0Rm9yQWN0aXZpdHkoYXBwV2FpdFBhY2thZ2UsIGFwcFdhaXRBY3Rpdml0eSk7XG59O1xuXG5jb21tYW5kcy5tb2JpbGVEaXNtaXNzQXV0b2ZpbGwgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVEaXNtaXNzQXV0b2ZpbGwgKG9wdHMgPSB7fSkge1xuICBjb25zdCB7ZWxlbWVudH0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50J10pO1xuICBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChcbiAgICBgL3Nlc3Npb24vOnNlc3Npb25JZC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvJHt1dGlsLnVud3JhcEVsZW1lbnQoZWxlbWVudCl9L2Rpc21pc3NfYXV0b2ZpbGxgLCAnUE9TVCcsIHt9KTtcbn07XG5cbk9iamVjdC5hc3NpZ24oZXh0ZW5zaW9ucywgY29tbWFuZHMsIGhlbHBlcnMpO1xuZXhwb3J0IHsgY29tbWFuZHMsIGhlbHBlcnMgfTtcbmV4cG9ydCBkZWZhdWx0IGV4dGVuc2lvbnM7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsT0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsU0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsT0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBRUEsTUFBTUssUUFBUSxHQUFHLENBQUMsQ0FBQztFQUFFQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0VBQUVDLFVBQVUsR0FBRyxDQUFDLENBQUM7QUFBQ0MsT0FBQSxDQUFBRixPQUFBLEdBQUFBLE9BQUE7QUFBQUUsT0FBQSxDQUFBSCxRQUFBLEdBQUFBLFFBQUE7QUFFbkQsU0FBU0kscUJBQXFCQSxDQUFFQyxPQUFPLEVBQUVDLG1CQUFtQixFQUFFO0VBQzVELElBQUksQ0FBQ0MsZUFBQyxDQUFDQyxPQUFPLENBQUNGLG1CQUFtQixDQUFDLEVBQUU7SUFDbkNBLG1CQUFtQixHQUFHLENBQUNBLG1CQUFtQixDQUFDO0VBQzdDO0VBQ0EsTUFBTUcsa0JBQWtCLEdBQUdGLGVBQUMsQ0FBQ0csSUFBSSxDQUFDTCxPQUFPLENBQUM7RUFDMUMsTUFBTU0sa0JBQWtCLEdBQUdKLGVBQUMsQ0FBQ0ssVUFBVSxDQUFDTixtQkFBbUIsRUFBRUcsa0JBQWtCLENBQUM7RUFDaEYsSUFBSUYsZUFBQyxDQUFDTSxPQUFPLENBQUNGLGtCQUFrQixDQUFDLEVBQUU7SUFDakMsT0FBT04sT0FBTztFQUNoQjtFQUNBLE1BQU0sSUFBSVMsS0FBSyxDQUFFLHVDQUFzQ0MsSUFBSSxDQUFDQyxTQUFTLENBQUNMLGtCQUFrQixDQUFFLElBQUcsR0FDMUYsMkJBQTBCSSxJQUFJLENBQUNDLFNBQVMsQ0FBQ1Asa0JBQWtCLENBQUUsRUFBQyxDQUFDO0FBQ3BFO0FB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
|
|
300
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfc3VwcG9ydCIsIl92YWxpZGF0ZSIsIl9kcml2ZXIiLCJfdXRpbHMiLCJjb21tYW5kcyIsImhlbHBlcnMiLCJleHRlbnNpb25zIiwiZXhwb3J0cyIsImFzc2VydFJlcXVpcmVkT3B0aW9ucyIsIm9wdGlvbnMiLCJyZXF1aXJlZE9wdGlvbk5hbWVzIiwiXyIsImlzQXJyYXkiLCJwcmVzZW50T3B0aW9uTmFtZXMiLCJrZXlzIiwibWlzc2luZ09wdGlvbk5hbWVzIiwiZGlmZmVyZW5jZSIsImlzRW1wdHkiLCJFcnJvciIsIkpTT04iLCJzdHJpbmdpZnkiLCJsYXVuY2hBcHAiLCJlcnJvcnMiLCJVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yIiwiY2xvc2VBcHAiLCJyZXNldCIsImdldENsaXBib2FyZCIsImFkYiIsImdldEFwaUxldmVsIiwiZXNwcmVzc28iLCJqd3Byb3h5IiwiY29tbWFuZCIsIm1vYmlsZVBlcmZvcm1FZGl0b3JBY3Rpb24iLCJvcHRzIiwiYWN0aW9uIiwibW9iaWxlU3dpcGUiLCJkaXJlY3Rpb24iLCJlbGVtZW50Iiwic3dpcGVyIiwic3RhcnRDb29yZGluYXRlcyIsImVuZENvb3JkaW5hdGVzIiwicHJlY2lzaW9uRGVzY3JpYmVyIiwidXRpbCIsInVud3JhcEVsZW1lbnQiLCJtb2JpbGVHZXREZXZpY2VJbmZvIiwibW9iaWxlSXNUb2FzdFZpc2libGUiLCJ0ZXh0IiwiaXNSZWdleHAiLCJoYXNWYWx1ZSIsIkludmFsaWRBcmd1bWVudEVycm9yIiwibW9iaWxlT3BlbkRyYXdlciIsImdyYXZpdHkiLCJtb2JpbGVDbG9zZURyYXdlciIsIm1vYmlsZVNldERhdGUiLCJ5ZWFyIiwibW9udGhPZlllYXIiLCJkYXlPZk1vbnRoIiwibW9iaWxlU2V0VGltZSIsImhvdXJzIiwibWludXRlcyIsIm1vYmlsZU5hdmlnYXRlVG8iLCJtZW51SXRlbUlkIiwibWVudUl0ZW1JZEFzTnVtYmVyIiwicGFyc2VJbnQiLCJpc05hTiIsIm1vYmlsZVdlYkF0b21zIiwiZ2V0RGlzcGxheURlbnNpdHkiLCJtb2JpbGVTY3JvbGxUb1BhZ2UiLCJzY3JvbGxUb1R5cGVzIiwicmVzIiwidmFsaWRhdGUiLCJwcmVzZW5jZSIsInNjcm9sbFRvIiwiaW5jbHVzaW9uIiwid2l0aGluIiwibWVzc2FnZSIsImpvaW4iLCJzY3JvbGxUb1BhZ2UiLCJudW1lcmljYWxpdHkiLCJvbmx5SW50ZWdlciIsImdyZWF0ZXJUaGFuT3JFcXVhbFRvIiwic21vb3RoU2Nyb2xsIiwibG9nIiwid2FybiIsIm1vYmlsZUJhY2tkb29yIiwidGFyZ2V0IiwibWV0aG9kcyIsImVsZW1lbnRJZCIsInRhcmdldEVsZW1lbnQiLCJtb2JpbGVVaWF1dG9tYXRvciIsInN0cmF0ZWd5IiwibG9jYXRvciIsImluZGV4IiwibW9iaWxlVWlhdXRvbWF0b3JQYWdlU291cmNlIiwibW9iaWxlRmxhc2hFbGVtZW50IiwiZHVyYXRpb25NaWxsaXMiLCJyZXBlYXRDb3VudCIsIm1vYmlsZUNsaWNrQWN0aW9uIiwidGFwcGVyIiwiY29vcmRpbmF0ZXNQcm92aWRlciIsImlucHV0RGV2aWNlIiwiYnV0dG9uU3RhdGUiLCJ1cGRhdGVTZXR0aW5ncyIsInNldHRpbmdzIiwiZ2V0U2V0dGluZ3MiLCJzdXNwZW5kQ2hyb21lZHJpdmVyUHJveHkiLCJjaHJvbWVkcml2ZXIiLCJwcm94eVJlcVJlcyIsImJpbmQiLCJwcm94eUNvbW1hbmQiLCJqd3BQcm94eUFjdGl2ZSIsIm1vYmlsZVN0YXJ0QWN0aXZpdHkiLCJhcHBQYWNrYWdlIiwiY2FwcyIsImFwcEFjdGl2aXR5IiwibG9jYWxlIiwib3B0aW9uYWxJbnRlbnRBcmd1bWVudHMiLCJvcHRpb25hbEFjdGl2aXR5QXJndW1lbnRzIiwic3RhcnRBY3Rpdml0eSIsImFwcFdhaXRQYWNrYWdlIiwiYXBwV2FpdEFjdGl2aXR5IiwicXVhbGlmeUFjdGl2aXR5TmFtZSIsImRlYnVnIiwid2FpdEZvckFjdGl2aXR5IiwibW9iaWxlRGlzbWlzc0F1dG9maWxsIiwiT2JqZWN0IiwiYXNzaWduIiwiX2RlZmF1bHQiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL2NvbW1hbmRzL2dlbmVyYWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IHV0aWwgfSBmcm9tICdhcHBpdW0vc3VwcG9ydCc7XG5pbXBvcnQgdmFsaWRhdGUgZnJvbSAndmFsaWRhdGUuanMnO1xuaW1wb3J0IHsgZXJyb3JzIH0gZnJvbSAnYXBwaXVtL2RyaXZlcic7XG5pbXBvcnQgeyBxdWFsaWZ5QWN0aXZpdHlOYW1lIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5jb25zdCBjb21tYW5kcyA9IHt9LCBoZWxwZXJzID0ge30sIGV4dGVuc2lvbnMgPSB7fTtcblxuZnVuY3Rpb24gYXNzZXJ0UmVxdWlyZWRPcHRpb25zIChvcHRpb25zLCByZXF1aXJlZE9wdGlvbk5hbWVzKSB7XG4gIGlmICghXy5pc0FycmF5KHJlcXVpcmVkT3B0aW9uTmFtZXMpKSB7XG4gICAgcmVxdWlyZWRPcHRpb25OYW1lcyA9IFtyZXF1aXJlZE9wdGlvbk5hbWVzXTtcbiAgfVxuICBjb25zdCBwcmVzZW50T3B0aW9uTmFtZXMgPSBfLmtleXMob3B0aW9ucyk7XG4gIGNvbnN0IG1pc3NpbmdPcHRpb25OYW1lcyA9IF8uZGlmZmVyZW5jZShyZXF1aXJlZE9wdGlvbk5hbWVzLCBwcmVzZW50T3B0aW9uTmFtZXMpO1xuICBpZiAoXy5pc0VtcHR5KG1pc3NpbmdPcHRpb25OYW1lcykpIHtcbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBmb2xsb3dpbmcgb3B0aW9ucyBhcmUgcmVxdWlyZWQ6ICR7SlNPTi5zdHJpbmdpZnkobWlzc2luZ09wdGlvbk5hbWVzKX0uIGAgK1xuICAgIGBZb3UgaGF2ZSBvbmx5IHByb3ZpZGVkOiAke0pTT04uc3RyaW5naWZ5KHByZXNlbnRPcHRpb25OYW1lcyl9YCk7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZXF1aXJlLWF3YWl0XG5jb21tYW5kcy5sYXVuY2hBcHAgPSBhc3luYyBmdW5jdGlvbiBsYXVuY2hBcHAgKCkge1xuICB0aHJvdyBuZXcgZXJyb3JzLlVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3IoJ1BsZWFzZSBjcmVhdGUgYSBuZXcgc2Vzc2lvbiBpbiBvcmRlciB0byBsYXVuY2ggdGhlIGFwcGxpY2F0aW9uIHVuZGVyIHRlc3QnKTtcbn07XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZXF1aXJlLWF3YWl0XG5jb21tYW5kcy5jbG9zZUFwcCA9IGFzeW5jIGZ1bmN0aW9uIGNsb3NlQXBwICgpIHtcbiAgdGhyb3cgbmV3IGVycm9ycy5VbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yKCdQbGVhc2UgcXVpdCB0aGUgc2Vzc2lvbiBpbiBvcmRlciB0byBjbG9zZSB0aGUgYXBwbGljYXRpb24gdW5kZXIgdGVzdCcpO1xufTtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlcXVpcmUtYXdhaXRcbmNvbW1hbmRzLnJlc2V0ID0gYXN5bmMgZnVuY3Rpb24gcmVzZXQgKCkge1xuICB0aHJvdyBuZXcgZXJyb3JzLlVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3IoXG4gICAgJ1BsZWFzZSBxdWl0IHRoZSBzZXNzaW9uIGFuZCBjcmVhdGUgYSBuZXcgb25lICcgK1xuICAgICdpbiBvcmRlciB0byBjbG9zZSBhbmQgbGF1bmNoIHRoZSBhcHBsaWNhdGlvbiB1bmRlciB0ZXN0Jyk7XG59O1xuXG5jb21tYW5kcy5nZXRDbGlwYm9hcmQgPSBhc3luYyBmdW5jdGlvbiBnZXRDbGlwYm9hcmQgKCkge1xuICByZXR1cm4gKGF3YWl0IHRoaXMuYWRiLmdldEFwaUxldmVsKCkgPCAyOSlcbiAgICA/IChhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZCgnL2FwcGl1bS9kZXZpY2UvZ2V0X2NsaXBib2FyZCcsICdQT1NUJywge30pKVxuICAgIDogKGF3YWl0IHRoaXMuYWRiLmdldENsaXBib2FyZCgpKTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZVBlcmZvcm1FZGl0b3JBY3Rpb24gPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVQZXJmb3JtRWRpdG9yQWN0aW9uIChvcHRzID0ge30pIHtcbiAgY29uc3Qge2FjdGlvbn0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydhY3Rpb24nXSk7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZCgnL2FwcGl1bS9kZXZpY2UvcGVyZm9ybV9lZGl0b3JfYWN0aW9uJywgJ1BPU1QnLCB7YWN0aW9ufSk7XG59O1xuXG5jb21tYW5kcy5tb2JpbGVTd2lwZSA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVN3aXBlIChvcHRzID0ge30pIHtcbiAgY29uc3Qge2RpcmVjdGlvbiwgZWxlbWVudCwgc3dpcGVyLCBzdGFydENvb3JkaW5hdGVzLCBlbmRDb29yZGluYXRlcywgcHJlY2lzaW9uRGVzY3JpYmVyfSA9IGFzc2VydFJlcXVpcmVkT3B0aW9ucyhvcHRzLCBbJ2VsZW1lbnQnXSk7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vc3dpcGVgLCAnUE9TVCcsIHtcbiAgICBkaXJlY3Rpb24sIGVsZW1lbnQsIHN3aXBlciwgc3RhcnRDb29yZGluYXRlcywgZW5kQ29vcmRpbmF0ZXMsIHByZWNpc2lvbkRlc2NyaWJlclxuICB9KTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZUdldERldmljZUluZm8gPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVHZXREZXZpY2VJbmZvICgpIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKCcvYXBwaXVtL2RldmljZS9pbmZvJywgJ0dFVCcpO1xufTtcblxuY29tbWFuZHMubW9iaWxlSXNUb2FzdFZpc2libGUgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVJc1RvYXN0VmlzaWJsZSAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHt0ZXh0LCBpc1JlZ2V4cH0gPSBvcHRzO1xuICBpZiAoIXV0aWwuaGFzVmFsdWUodGV4dCkpIHtcbiAgICB0aHJvdyBuZXcgZXJyb3JzLkludmFsaWRBcmd1bWVudEVycm9yKGAndGV4dCcgYXJndW1lbnQgaXMgbWFuZGF0b3J5YCk7XG4gIH1cbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKCcvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlL2lzX3RvYXN0X2Rpc3BsYXllZCcsICdQT1NUJywge1xuICAgIHRleHQsXG4gICAgaXNSZWdleHAsXG4gIH0pO1xufTtcblxuY29tbWFuZHMubW9iaWxlT3BlbkRyYXdlciA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZU9wZW5EcmF3ZXIgKG9wdHMgPSB7fSkge1xuICBjb25zdCB7ZWxlbWVudCwgZ3Jhdml0eX0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50J10pO1xuXG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vb3Blbl9kcmF3ZXJgLCAnUE9TVCcsIHtcbiAgICBncmF2aXR5XG4gIH0pO1xufTtcblxuY29tbWFuZHMubW9iaWxlQ2xvc2VEcmF3ZXIgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVDbG9zZURyYXdlciAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtlbGVtZW50LCBncmF2aXR5fSA9IGFzc2VydFJlcXVpcmVkT3B0aW9ucyhvcHRzLCBbJ2VsZW1lbnQnXSk7XG5cbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlLyR7dXRpbC51bndyYXBFbGVtZW50KGVsZW1lbnQpfS9jbG9zZV9kcmF3ZXJgLCAnUE9TVCcsIHtcbiAgICBncmF2aXR5XG4gIH0pO1xufTtcblxuY29tbWFuZHMubW9iaWxlU2V0RGF0ZSA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVNldERhdGUgKG9wdHMgPSB7fSkge1xuICBjb25zdCB7ZWxlbWVudCwgeWVhciwgbW9udGhPZlllYXIsIGRheU9mTW9udGh9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnZWxlbWVudCcsICd5ZWFyJywgJ21vbnRoT2ZZZWFyJywgJ2RheU9mTW9udGgnXSk7XG5cbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlLyR7dXRpbC51bndyYXBFbGVtZW50KGVsZW1lbnQpfS9zZXRfZGF0ZWAsICdQT1NUJywge1xuICAgIHllYXIsXG4gICAgbW9udGhPZlllYXIsXG4gICAgZGF5T2ZNb250aCxcbiAgfSk7XG59O1xuXG5jb21tYW5kcy5tb2JpbGVTZXRUaW1lID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlU2V0VGltZSAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtlbGVtZW50LCBob3VycywgbWludXRlc30gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50JywgJ2hvdXJzJywgJ21pbnV0ZXMnXSk7XG5cbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlLyR7dXRpbC51bndyYXBFbGVtZW50KGVsZW1lbnQpfS9zZXRfdGltZWAsICdQT1NUJywge1xuICAgIGhvdXJzLFxuICAgIG1pbnV0ZXMsXG4gIH0pO1xufTtcblxuY29tbWFuZHMubW9iaWxlTmF2aWdhdGVUbyA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZU5hdmlnYXRlVG8gKG9wdHMgPSB7fSkge1xuICBsZXQge2VsZW1lbnQsIG1lbnVJdGVtSWR9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnbWVudUl0ZW1JZCcsICdlbGVtZW50J10pO1xuXG4gIGxldCBtZW51SXRlbUlkQXNOdW1iZXIgPSBwYXJzZUludChtZW51SXRlbUlkLCAxMCk7XG4gIGlmIChfLmlzTmFOKG1lbnVJdGVtSWRBc051bWJlcikgfHwgbWVudUl0ZW1JZEFzTnVtYmVyIDwgMCkge1xuICAgIHRocm93IG5ldyBlcnJvcnMuSW52YWxpZEFyZ3VtZW50RXJyb3IoYCdtZW51SXRlbUlkJyBtdXN0IGJlIGEgbm9uLW5lZ2F0aXZlIG51bWJlci4gRm91bmQgJHttZW51SXRlbUlkfWApO1xuICB9XG5cbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlLyR7dXRpbC51bndyYXBFbGVtZW50KGVsZW1lbnQpfS9uYXZpZ2F0ZV90b2AsICdQT1NUJywge1xuICAgIG1lbnVJdGVtSWRcbiAgfSk7XG59O1xuXG4vKipcbiAqIFJ1bnMgYSBjaGFpbiBvZiBFc3ByZXNzbyB3ZWIgYXRvbXMgKHNlZSBodHRwczovL2RldmVsb3Blci5hbmRyb2lkLmNvbS90cmFpbmluZy90ZXN0aW5nL2VzcHJlc3NvL3dlYiBmb3IgcmVmZXJlbmNlKVxuICpcbiAqIFRha2VzIEpTT04gb2YgdGhlIGZvcm1cbiAqXG4gKiB7XG4gKiAgIFwid2Vidmlld0VsXCI6IFwiPEVMRU1FTlRfSUQ+XCIsIC8vIG9wdGlvbmFsIHdlYnZpZXcgZWxlbWVudCB0byBvcGVyYXRlIG9uXG4gKiAgIFwiZm9yY2VKYXZhc2NyaXB0RW5hYmxlZFwiOiB0cnVlfGZhbHNlLCAvLyBpZiB3ZWJ2aWV3IGRpc2FibGVzIGphdmFzY3JpcHQsIHdlYmF0b21zIHdvbid0IHdvcmssIHRoaXMgZm9yY2VzIGl0XG4gKiAgIFwibWV0aG9kQ2hhaW5cIjogW1xuICogICAgIHtcIm5hbWVcIjogXCJtZXRob2ROYW1lXCIsIFwiYXRvbVwiOiB7XCJuYW1lXCI6IFwiYXRvbU5hbWVcIiwgXCJhcmdzXCI6IFtcImFyZzFcIiwgXCJhcmcyXCIsIC4uLl19fSxcbiAqICAgICAuLi5cbiAqICAgXVxuICogfVxuICpcbiAqL1xuY29tbWFuZHMubW9iaWxlV2ViQXRvbXMgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVXZWJBdG9tcyAob3B0cyA9IHt9KSB7XG4gIG9wdHMgPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydtZXRob2RDaGFpbiddKTtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlL3dlYl9hdG9tc2AsICdQT1NUJywgb3B0cyk7XG59O1xuXG5jb21tYW5kcy5nZXREaXNwbGF5RGVuc2l0eSA9IGFzeW5jIGZ1bmN0aW9uIGdldERpc3BsYXlEZW5zaXR5ICgpIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKCcvYXBwaXVtL2RldmljZS9kaXNwbGF5X2RlbnNpdHknLCAnR0VUJywge30pO1xufTtcblxuY29tbWFuZHMubW9iaWxlU2Nyb2xsVG9QYWdlID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlU2Nyb2xsVG9QYWdlIChvcHRzID0ge30pIHtcblxuICAvLyBWYWxpZGF0ZSB0aGUgcGFyYW1ldGVyc1xuICBjb25zdCBzY3JvbGxUb1R5cGVzID0gWydmaXJzdCcsICdsYXN0JywgJ2xlZnQnLCAncmlnaHQnXTtcbiAgY29uc3QgcmVzID0gdmFsaWRhdGUob3B0cywge1xuICAgIGVsZW1lbnQ6IHtwcmVzZW5jZTogdHJ1ZX0sXG4gICAgc2Nyb2xsVG86IHtcbiAgICAgIGluY2x1c2lvbjoge1xuICAgICAgICB3aXRoaW46IHNjcm9sbFRvVHlwZXMsXG4gICAgICAgIG1lc3NhZ2U6IGBcInNjcm9sbFRvXCIgbXVzdCBiZSBvbmUgb2YgXCIke3Njcm9sbFRvVHlwZXMuam9pbignLCAnKX1cIiBmb3VuZCAnJXt2YWx1ZX0nYCxcbiAgICAgIH1cbiAgICB9LFxuICAgIHNjcm9sbFRvUGFnZToge1xuICAgICAgbnVtZXJpY2FsaXR5OiB7XG4gICAgICAgIG9ubHlJbnRlZ2VyOiB0cnVlLFxuICAgICAgICBncmVhdGVyVGhhbk9yRXF1YWxUbzogMCxcbiAgICAgICAgbWVzc2FnZTogYFwic2Nyb2xsVG9QYWdlXCIgbXVzdCBiZSBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyLiBGb3VuZCAnJXt2YWx1ZX0nYFxuICAgICAgfSxcbiAgICB9LFxuICB9KTtcbiAgaWYgKHV0aWwuaGFzVmFsdWUocmVzKSkge1xuICAgIHRocm93IG5ldyBlcnJvcnMuSW52YWxpZEFyZ3VtZW50RXJyb3IoYEludmFsaWQgc2Nyb2xsVG8gcGFyYW1ldGVyczogJHtKU09OLnN0cmluZ2lmeShyZXMpfWApO1xuICB9XG5cbiAgY29uc3Qge2VsZW1lbnQsIHNjcm9sbFRvLCBzY3JvbGxUb1BhZ2UsIHNtb290aFNjcm9sbH0gPSBvcHRzO1xuXG4gIGlmICh1dGlsLmhhc1ZhbHVlKHNjcm9sbFRvKSAmJiB1dGlsLmhhc1ZhbHVlKHNjcm9sbFRvUGFnZSkpIHtcbiAgICB0aGlzLmxvZy53YXJuKGAnc2Nyb2xsVG8nIGFuZCAnc2Nyb2xsVG9QYWdlJyB3aGVyZSBib3RoIHByb3ZpZGVkLiBEZWZhdWx0aW5nIHRvICdzY3JvbGxUbydgKTtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vc2Nyb2xsX3RvX3BhZ2VgLCAnUE9TVCcsIHtcbiAgICBzY3JvbGxUbyxcbiAgICBzY3JvbGxUb1BhZ2UsXG4gICAgc21vb3RoU2Nyb2xsLFxuICB9KTtcbn07XG5cblxuLyoqXG4gKiAgQVBJIHRvIGludm9rZSBtZXRob2RzIGRlZmluZWQgaW4gQW5kcm9pZCBhcHAuXG4gKlxuICogIEV4YW1wbGUgZGF0YVxuICogIHtcbiAqICAgdGFyZ2V0OiAnYWN0aXZpdHknLFxuICogICBtZXRob2RzOlxuICogICAgICAgICBbXG4gKiAgICAgICAgICAge1xuICogICAgICAgICAgICAgICBuYW1lOiBcInNvbWVNZXRob2RcIixcbiAqICAgICAgICAgICB9LFxuICogICAgICAgICAgIHtcbiAqICAgICAgICAgICAgICAgbmFtZTogXCJhbm90aGVyTWV0aG9kXCIsXG4gKiAgICAgICAgICAgICAgIGFyZ3M6XG4gKiAgICAgICAgICAgICAgICAgICBbXG4gKiAgICAgICAgICAgICAgICAgICAgICAge3ZhbHVlOiBcIkxvbFwiLCB0eXBlOiAnamF2YS5sYW5nLkNoYXJTZXF1ZW5jZSd9LFxuICogICAgICAgICAgICAgICAgICAgICAgIHt2YWx1ZTogMSwgdHlwZTogJ2ludCd9XG4gKiAgICAgICAgICAgICAgICAgICBdXG4gKiAgICAgICAgICAgfVxuICogICAgICAgICBdXG4gKiB9XG4gKlxuICogSW4gYWJvdmUgZXhhbXBsZSwgbWV0aG9kIFwic29tZU1ldGhvZFwiIHdpbGwgYmUgaW52b2tlZCBvbiAnYWN0aXZpdHknLiBPbiB0aGUgcmVzdWx0LCBcImFub3RoZXJNZXRob2RcIiB3aWxsIGJlIGludm9rZWRcbiAqICBcInRhcmdldFwiIGNhbiBiZSBlaXRoZXIgJ2FjdGl2aXR5JywgJ2FwcGxpY2F0aW9uJyBvciAnZWxlbWVudCdcbiAqICBJZiB0YXJnZXQgaXMgc2V0IHRvICdhcHBsaWNhdGlvbicsIG1ldGhvZHMgd2lsbCBiZSBpbnZva2VkIG9uIGFwcGxpY2F0aW9uIGNsYXNzXG4gKiAgSWYgdGFyZ2V0IGlzIHNldCB0byAnYWN0aXZpdHknLCBtZXRob2RzIHdpbGwgYmUgaW52b2tlZCBvbiBjdXJyZW50IGFjdGl2aXR5XG4gKiAgSWYgdGFyZ2V0IGlzIHNldCB0byAnZWxlbWVudCcsICdlbGVtZW50SWQnIG11c3QgYmUgc3BlY2lmaWVkXG4gKlxuICogLSBPbmx5ICdQdWJsaWMnIG1ldGhvZHMgY2FuIGJlIGludm9rZWQuICgnb3BlbicgbW9kaWZpcmUgaXMgbmVjZXNzYXJ5IGluIEtvdGxpbilcbiAqIC0gZm9sbG93aW5nIHByaW1pdGl2ZSB0eXBlcyBhcmUgc3VwcG9ydGVkOiBcImludFwiLCBcImJvb2xlYW5cIiwgXCJieXRlXCIsIFwic2hvcnRcIiwgXCJsb25nXCIsIFwiZmxvYXRcIiwgXCJjaGFyXCJcbiAqIC0gIE5vbi1wcmltaXRpdmUgdHlwZXMgd2l0aCBmdWxseSBxdWFsaWZpZWQgbmFtZSBcImphdmEubGFuZy4qXCIgaXMgYWxzbyBzdXBwb3J0ZWQ6XG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVnLiBcImphdmEubGFuZy5DaGFyU2VxdWVuY2VcIiwgXCJqYXZhLmxhbmcuU3RyaW5nXCIsIFwiamF2YS5sYW5nLkludGVnZXJcIiwgXCJqYXZhLmxhbmcuRmxvYXRcIixcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJqYXZhLmxhbmcuRG91YmxlXCIsIFwiamF2YS5sYW5nLkJvb2xlYW5cIiwgXCJqYXZhLmxhbmcuTG9uZ1wiLCBcImphdmEubGFuZy5TaG9ydFwiLFxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImphdmEubGFuZy5DaGFyYWN0ZXJcIiBldGMuLi5cbiAqXG4gKlxuICogQHRocm93cyAge0Vycm9yfSBpZiB0YXJnZXQgaXMgbm90ICdhY3Rpdml0eScgb3IgJ2FwcGxpY2F0aW9uJ1xuICogQHRocm93cyAge0Vycm9yfSBpZiBhIG1ldGhvZCBpcyBub3QgZm91bmQgd2l0aCBnaXZlbiBhcmd1bWVudCB0eXBlc1xuICpcbiAqIEByZXR1cm4geyp9IHRoZSByZXN1bHQgb2YgdGhlIGxhc3QgbWV0aG9kIGluIHRoZSBpbnZvY2F0aW9uIGNoYWluLiBJZiBtZXRob2QgcmV0dXJuIHR5cGUgaXMgdm9pZCwgdGhlbiBcIjxWT0lEPlwiIHdpbGwgYmUgcmV0dXJuZWRcbiAqXG4gKi9cbmNvbW1hbmRzLm1vYmlsZUJhY2tkb29yID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlQmFja2Rvb3IgKG9wdHMgPSB7fSkge1xuICBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWyd0YXJnZXQnLCAnbWV0aG9kcyddKTtcbiAgY29uc3Qge3RhcmdldCwgbWV0aG9kc30gPSBvcHRzO1xuICBpZiAodGFyZ2V0ID09PSAnZWxlbWVudCcpIHtcbiAgICBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50SWQnXSk7XG4gIH1cbiAgY29uc3Qge2VsZW1lbnRJZDogdGFyZ2V0RWxlbWVudH0gPSBvcHRzO1xuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvYmFja2Rvb3JgLCAnUE9TVCcsIHt0YXJnZXQsIG1ldGhvZHMsIHRhcmdldEVsZW1lbnR9KTtcbn07XG5cbi8qKlxuICogIEV4ZWN1dGUgVWlBdXRvbWF0b3IyIGNvbW1hbmRzIHRvIGRyaXZlIG91dCBvZiBhcHAgYXJlYXMuXG4gKiAgc3RyYXRlZ3kgY2FuIGJlIG9uZSBvZjogXCJjbGF6elwiLCBcInJlc1wiLCBcInRleHRcIiwgXCJ0ZXh0Q29udGFpbnNcIiwgXCJ0ZXh0RW5kc1dpdGhcIiwgXCJ0ZXh0U3RhcnRzV2l0aFwiLFxuICogICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGVzY1wiLCBcImRlc2NDb250YWluc1wiLCBcImRlc2NFbmRzV2l0aFwiLCBcImRlc2NTdGFydHNXaXRoXCIsIFwicGtnXCJcbiAqXG4gKiAgYWN0aW9uIGNhbiBiZSBvbmUgb2Y6IFwiY2xpY2tcIiwgXCJsb25nQ2xpY2tcIiwgXCJnZXRUZXh0XCIsIFwiZ2V0Q29udGVudERlc2NyaXB0aW9uXCIsIFwiZ2V0Q2xhc3NOYW1lXCIsXG4gKiAgICAgICAgICAgICAgICAgICAgICAgIFwiZ2V0UmVzb3VyY2VOYW1lXCIsIFwiZ2V0VmlzaWJsZUJvdW5kc1wiLCBcImdldFZpc2libGVDZW50ZXJcIiwgXCJnZXRBcHBsaWNhdGlvblBhY2thZ2VcIixcbiAqICAgICAgICAgICAgICAgICAgICAgICAgXCJnZXRDaGlsZENvdW50XCIsIFwiY2xlYXJcIiwgXCJpc0NoZWNrYWJsZVwiLCBcImlzQ2hlY2tlZFwiLCBcImlzQ2xpY2thYmxlXCIsIFwiaXNFbmFibGVkXCIsXG4gKiAgICAgICAgICAgICAgICAgICAgICAgIFwiaXNGb2N1c2FibGVcIiwgXCJpc0ZvY3VzZWRcIiwgXCJpc0xvbmdDbGlja2FibGVcIiwgXCJpc1Njcm9sbGFibGVcIiwgXCJpc1NlbGVjdGVkXCJcbiAqL1xuY29tbWFuZHMubW9iaWxlVWlhdXRvbWF0b3IgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVVaWF1dG9tYXRvciAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtzdHJhdGVneSwgbG9jYXRvciwgYWN0aW9uLCBpbmRleH0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydzdHJhdGVneScsICdsb2NhdG9yJywgJ2FjdGlvbiddKTtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlL3VpYXV0b21hdG9yYCwgJ1BPU1QnLCB7c3RyYXRlZ3ksIGxvY2F0b3IsIGluZGV4LCBhY3Rpb259KTtcbn07XG5cbi8qKlxuICogIEV4ZWN1dGUgVWlBdXRvbWF0b3IyIGNvbW1hbmQgdG8gcmV0dXJuIHRoZSBVSSBkdW1wIHdoZW4gQVVUIGlzIGluIGJhY2tncm91bmQuXG4gKiBAdGhyb3dzICB7RXJyb3J9IGlmIHVpYXV0b21hdG9yIHZpZXcgZHVtcCBpcyB1bnN1Y2Nlc3NmdWxcbiAqIEByZXR1cm5zIHtzdHJpbmd9IHVpYXV0b21hdG9yIERPTSB4bWwgYXMgc3RyaW5nXG4gKi9cbmNvbW1hbmRzLm1vYmlsZVVpYXV0b21hdG9yUGFnZVNvdXJjZSA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVVpYXV0b21hdG9yUGFnZVNvdXJjZSAoKSB7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS91aWF1dG9tYXRvcl9wYWdlX3NvdXJjZWAsICdHRVQnKTtcbn07XG5cbi8qKlxuICogIEZsYXNoIHRoZSBlbGVtZW50IHdpdGggZ2l2ZW4gaWQuXG4gKiAgZHVyYXRpb25NaWxsaXMgYW5kIHJlcGVhdENvdW50IGFyZSBvcHRpb25hbFxuICpcbiAqL1xuY29tbWFuZHMubW9iaWxlRmxhc2hFbGVtZW50ID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlRmxhc2hFbGVtZW50IChvcHRzID0ge30pIHtcbiAgY29uc3Qge2VsZW1lbnR9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnZWxlbWVudCddKTtcbiAgY29uc3Qge2R1cmF0aW9uTWlsbGlzLCByZXBlYXRDb3VudH0gPSBvcHRzO1xuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvJHt1dGlsLnVud3JhcEVsZW1lbnQoZWxlbWVudCl9L2ZsYXNoYCwgJ1BPU1QnLCB7XG4gICAgZHVyYXRpb25NaWxsaXMsXG4gICAgcmVwZWF0Q291bnRcbiAgfSk7XG59O1xuXG4vKipcbiAqIFBlcmZvcm0gYSAnR2VuZXJhbENsaWNrQWN0aW9uJyAoaHR0cHM6Ly9kZXZlbG9wZXIuYW5kcm9pZC5jb20vcmVmZXJlbmNlL2FuZHJvaWR4L3Rlc3QvZXNwcmVzc28vYWN0aW9uL0dlbmVyYWxDbGlja0FjdGlvbilcbiAqL1xuY29tbWFuZHMubW9iaWxlQ2xpY2tBY3Rpb24gPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVDbGlja0FjdGlvbiAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtlbGVtZW50LCB0YXBwZXIsIGNvb3JkaW5hdGVzUHJvdmlkZXIsIHByZWNpc2lvbkRlc2NyaWJlcixcbiAgICAgICAgIGlucHV0RGV2aWNlLCBidXR0b25TdGF0ZX0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50J10pO1xuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvJHt1dGlsLnVud3JhcEVsZW1lbnQoZWxlbWVudCl9L2NsaWNrX2FjdGlvbmAsICdQT1NUJywge1xuICAgIHRhcHBlciwgY29vcmRpbmF0ZXNQcm92aWRlciwgcHJlY2lzaW9uRGVzY3JpYmVyLCBpbnB1dERldmljZSwgYnV0dG9uU3RhdGVcbiAgfSk7XG59O1xuXG5jb21tYW5kcy51cGRhdGVTZXR0aW5ncyA9IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVNldHRpbmdzIChzZXR0aW5ncykge1xuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vc2V0dGluZ3NgLCAnUE9TVCcsIHsgc2V0dGluZ3MgfSk7XG59O1xuXG5jb21tYW5kcy5nZXRTZXR0aW5ncyA9IGFzeW5jIGZ1bmN0aW9uIGdldFNldHRpbmdzICgpIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL3NldHRpbmdzYCwgJ0dFVCcpO1xufTtcblxuLy8gU3RvcCBwcm94eWluZyB0byBhbnkgQ2hyb21lZHJpdmVyIGFuZCByZWRpcmVjdCB0byBFc3ByZXNzb1xuaGVscGVycy5zdXNwZW5kQ2hyb21lZHJpdmVyUHJveHkgPSBmdW5jdGlvbiBzdXNwZW5kQ2hyb21lZHJpdmVyUHJveHkgKCkge1xuICB0aGlzLmNocm9tZWRyaXZlciA9IG51bGw7XG4gIHRoaXMucHJveHlSZXFSZXMgPSB0aGlzLmVzcHJlc3NvLnByb3h5UmVxUmVzLmJpbmQodGhpcy5lc3ByZXNzbyk7XG4gIHRoaXMucHJveHlDb21tYW5kID0gdGhpcy5lc3ByZXNzby5wcm94eUNvbW1hbmQuYmluZCh0aGlzLmVzcHJlc3NvKTtcbiAgdGhpcy5qd3BQcm94eUFjdGl2ZSA9IHRydWU7XG59O1xuXG4vKipcbiAqICBTdGFydHMgdGhlIGdpdmVuIGFjdGl2aXR5IHdpdGggaW50ZW50IG9wdGlvbnMsIGFjdGl2aXR5IG9wdGlvbnMgYW5kIGxvY2FsZS5cbiAqICBBY3Rpdml0eSBjb3VsZCBvbmx5IGJlIGV4ZWN1dGVkIGluIHNjb3BlIG9mIHRoZSBjdXJyZW50IGFwcCBwYWNrYWdlLlxuICpcbiAqICBhcHBBY3Rpdml0eSBpcyBtYW5kYXRvcnlcbiAqXG4gKiAgbG9jYWxlLCBvcHRpb25hbEludGVudEFyZ3VtZW50cywgb3B0aW9uYWxBY3Rpdml0eUFyZ3VtZW50cyBhcmUgb3B0aW9uYWxcbiAqL1xuY29tbWFuZHMubW9iaWxlU3RhcnRBY3Rpdml0eSA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVN0YXJ0QWN0aXZpdHkgKG9wdHMgPSB7fSkge1xuICBjb25zdCBhcHBQYWNrYWdlID0gdGhpcy5jYXBzLmFwcFBhY2thZ2U7XG4gIGNvbnN0IHtcbiAgICBhcHBBY3Rpdml0eSxcbiAgICBsb2NhbGUsXG4gICAgb3B0aW9uYWxJbnRlbnRBcmd1bWVudHMsXG4gICAgb3B0aW9uYWxBY3Rpdml0eUFyZ3VtZW50c1xuICB9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnYXBwQWN0aXZpdHknXSk7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9kZXZpY2Uvc3RhcnRfYWN0aXZpdHlgLCAnUE9TVCcsIHtcbiAgICBhcHBQYWNrYWdlLFxuICAgIGFwcEFjdGl2aXR5LFxuICAgIGxvY2FsZSxcbiAgICBvcHRpb25hbEludGVudEFyZ3VtZW50cyxcbiAgICBvcHRpb25hbEFjdGl2aXR5QXJndW1lbnRzXG4gIH0pO1xufTtcblxuY29tbWFuZHMuc3RhcnRBY3Rpdml0eSA9IGFzeW5jIGZ1bmN0aW9uIHN0YXJ0QWN0aXZpdHkgKGFwcFBhY2thZ2UsIGFwcEFjdGl2aXR5LFxuICBhcHBXYWl0UGFja2FnZSwgYXBwV2FpdEFjdGl2aXR5KSB7XG4gIC8vIGludGVudEFjdGlvbiwgaW50ZW50Q2F0ZWdvcnksIGludGVudEZsYWdzLCBvcHRpb25hbEludGVudEFyZ3VtZW50cywgZG9udFN0b3BBcHBPblJlc2V0XG4gIC8vIHBhcmFtZXRlcnMgYXJlIG5vdCBzdXBwb3J0ZWQgYnkgRXNwcmVzc29cbiAgYXBwUGFja2FnZSA9IGFwcFBhY2thZ2UgfHwgdGhpcy5jYXBzLmFwcFBhY2thZ2U7XG4gIGFwcFdhaXRQYWNrYWdlID0gYXBwV2FpdFBhY2thZ2UgfHwgYXBwUGFja2FnZTtcbiAgYXBwQWN0aXZpdHkgPSBxdWFsaWZ5QWN0aXZpdHlOYW1lKGFwcEFjdGl2aXR5LCBhcHBQYWNrYWdlKTtcbiAgYXBwV2FpdEFjdGl2aXR5ID0gcXVhbGlmeUFjdGl2aXR5TmFtZShhcHBXYWl0QWN0aXZpdHkgfHwgYXBwQWN0aXZpdHksIGFwcFdhaXRQYWNrYWdlKTtcbiAgdGhpcy5sb2cuZGVidWcoYFN0YXJ0aW5nIGFjdGl2aXR5ICcke2FwcEFjdGl2aXR5fScgZm9yIHBhY2thZ2UgJyR7YXBwUGFja2FnZX0nYCk7XG4gIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2RldmljZS9zdGFydF9hY3Rpdml0eWAsICdQT1NUJywge1xuICAgIGFwcFBhY2thZ2UsXG4gICAgYXBwQWN0aXZpdHksXG4gIH0pO1xuICBhd2FpdCB0aGlzLmFkYi53YWl0Rm9yQWN0aXZpdHkoYXBwV2FpdFBhY2thZ2UsIGFwcFdhaXRBY3Rpdml0eSk7XG59O1xuXG5jb21tYW5kcy5tb2JpbGVEaXNtaXNzQXV0b2ZpbGwgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVEaXNtaXNzQXV0b2ZpbGwgKG9wdHMgPSB7fSkge1xuICBjb25zdCB7ZWxlbWVudH0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50J10pO1xuICBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChcbiAgICBgL3Nlc3Npb24vOnNlc3Npb25JZC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvJHt1dGlsLnVud3JhcEVsZW1lbnQoZWxlbWVudCl9L2Rpc21pc3NfYXV0b2ZpbGxgLCAnUE9TVCcsIHt9KTtcbn07XG5cbk9iamVjdC5hc3NpZ24oZXh0ZW5zaW9ucywgY29tbWFuZHMsIGhlbHBlcnMpO1xuZXhwb3J0IHsgY29tbWFuZHMsIGhlbHBlcnMgfTtcbmV4cG9ydCBkZWZhdWx0IGV4dGVuc2lvbnM7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsT0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsU0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsT0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBRUEsTUFBTUssUUFBUSxHQUFHLENBQUMsQ0FBQztFQUFFQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0VBQUVDLFVBQVUsR0FBRyxDQUFDLENBQUM7QUFBQ0MsT0FBQSxDQUFBRixPQUFBLEdBQUFBLE9BQUE7QUFBQUUsT0FBQSxDQUFBSCxRQUFBLEdBQUFBLFFBQUE7QUFFbkQsU0FBU0kscUJBQXFCQSxDQUFFQyxPQUFPLEVBQUVDLG1CQUFtQixFQUFFO0VBQzVELElBQUksQ0FBQ0MsZUFBQyxDQUFDQyxPQUFPLENBQUNGLG1CQUFtQixDQUFDLEVBQUU7SUFDbkNBLG1CQUFtQixHQUFHLENBQUNBLG1CQUFtQixDQUFDO0VBQzdDO0VBQ0EsTUFBTUcsa0JBQWtCLEdBQUdGLGVBQUMsQ0FBQ0csSUFBSSxDQUFDTCxPQUFPLENBQUM7RUFDMUMsTUFBTU0sa0JBQWtCLEdBQUdKLGVBQUMsQ0FBQ0ssVUFBVSxDQUFDTixtQkFBbUIsRUFBRUcsa0JBQWtCLENBQUM7RUFDaEYsSUFBSUYsZUFBQyxDQUFDTSxPQUFPLENBQUNGLGtCQUFrQixDQUFDLEVBQUU7SUFDakMsT0FBT04sT0FBTztFQUNoQjtFQUNBLE1BQU0sSUFBSVMsS0FBSyxDQUFFLHVDQUFzQ0MsSUFBSSxDQUFDQyxTQUFTLENBQUNMLGtCQUFrQixDQUFFLElBQUcsR0FDMUYsMkJBQTBCSSxJQUFJLENBQUNDLFNBQVMsQ0FBQ1Asa0JBQWtCLENBQUUsRUFBQyxDQUFDO0FBQ3BFO0FB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"general.js","names":["_lodash","_interopRequireDefault","require","_support","_validate","_driver","_utils","commands","helpers","extensions","exports","assertRequiredOptions","options","requiredOptionNames","_","isArray","presentOptionNames","keys","missingOptionNames","difference","isEmpty","Error","JSON","stringify","launchApp","errors","UnsupportedOperationError","closeApp","reset","getClipboard","adb","getApiLevel","espresso","jwproxy","command","mobilePerformEditorAction","opts","action","mobileSwipe","direction","element","swiper","startCoordinates","endCoordinates","precisionDescriber","util","unwrapElement","mobileGetDeviceInfo","mobileIsToastVisible","text","isRegexp","hasValue","InvalidArgumentError","mobileOpenDrawer","gravity","mobileCloseDrawer","mobileSetDate","year","monthOfYear","dayOfMonth","mobileSetTime","hours","minutes","mobileNavigateTo","menuItemId","menuItemIdAsNumber","parseInt","isNaN","mobileWebAtoms","getDisplayDensity","mobileScrollToPage","scrollToTypes","res","validate","presence","scrollTo","inclusion","within","message","join","scrollToPage","numericality","onlyInteger","greaterThanOrEqualTo","smoothScroll","log","warn","mobileBackdoor","target","methods","elementId","targetElement","mobileUiautomator","strategy","locator","index","mobileUiautomatorPageSource","mobileFlashElement","durationMillis","repeatCount","mobileClickAction","tapper","coordinatesProvider","inputDevice","buttonState","updateSettings","settings","getSettings","suspendChromedriverProxy","chromedriver","proxyReqRes","bind","proxyCommand","jwpProxyActive","mobileStartActivity","appPackage","caps","appActivity","locale","optionalIntentArguments","optionalActivityArguments","startActivity","appWaitPackage","appWaitActivity","qualifyActivityName","debug","waitForActivity","mobileDismissAutofill","Object","assign","_default","default"],"sources":["../../../lib/commands/general.js"],"sourcesContent":["import _ from 'lodash';\nimport { util } from 'appium/support';\nimport validate from 'validate.js';\nimport { errors } from 'appium/driver';\nimport { qualifyActivityName } from '../utils';\n\nconst commands = {}, helpers = {}, extensions = {};\n\nfunction assertRequiredOptions (options, requiredOptionNames) {\n if (!_.isArray(requiredOptionNames)) {\n requiredOptionNames = [requiredOptionNames];\n }\n const presentOptionNames = _.keys(options);\n const missingOptionNames = _.difference(requiredOptionNames, presentOptionNames);\n if (_.isEmpty(missingOptionNames)) {\n return options;\n }\n throw new Error(`The following options are required: ${JSON.stringify(missingOptionNames)}. ` +\n `You have only provided: ${JSON.stringify(presentOptionNames)}`);\n}\n\n// eslint-disable-next-line require-await\ncommands.launchApp = async function launchApp () {\n throw new errors.UnsupportedOperationError('Please create a new session in order to launch the application under test');\n};\n\n// eslint-disable-next-line require-await\ncommands.closeApp = async function closeApp () {\n throw new errors.UnsupportedOperationError('Please quit the session in order to close the application under test');\n};\n\n// eslint-disable-next-line require-await\ncommands.reset = async function reset () {\n throw new errors.UnsupportedOperationError(\n 'Please quit the session and create a new one ' +\n 'in order to close and launch the application under test');\n};\n\ncommands.getClipboard = async function getClipboard () {\n return (await this.adb.getApiLevel() < 29)\n ? (await this.espresso.jwproxy.command('/appium/device/get_clipboard', 'POST', {}))\n : (await this.adb.getClipboard());\n};\n\ncommands.mobilePerformEditorAction = async function mobilePerformEditorAction (opts = {}) {\n const {action} = assertRequiredOptions(opts, ['action']);\n return await this.espresso.jwproxy.command('/appium/device/perform_editor_action', 'POST', {action});\n};\n\ncommands.mobileSwipe = async function mobileSwipe (opts = {}) {\n const {direction, element, swiper, startCoordinates, endCoordinates, precisionDescriber} = assertRequiredOptions(opts, ['element']);\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/swipe`, 'POST', {\n direction, element, swiper, startCoordinates, endCoordinates, precisionDescriber\n });\n};\n\ncommands.mobileGetDeviceInfo = async function mobileGetDeviceInfo () {\n return await this.espresso.jwproxy.command('/appium/device/info', 'GET');\n};\n\ncommands.mobileIsToastVisible = async function mobileIsToastVisible (opts = {}) {\n const {text, isRegexp} = opts;\n if (!util.hasValue(text)) {\n throw new errors.InvalidArgumentError(`'text' argument is mandatory`);\n }\n return await this.espresso.jwproxy.command('/appium/execute_mobile/is_toast_displayed', 'POST', {\n text,\n isRegexp,\n });\n};\n\ncommands.mobileOpenDrawer = async function mobileOpenDrawer (opts = {}) {\n const {element, gravity} = assertRequiredOptions(opts, ['element']);\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/open_drawer`, 'POST', {\n gravity\n });\n};\n\ncommands.mobileCloseDrawer = async function mobileCloseDrawer (opts = {}) {\n const {element, gravity} = assertRequiredOptions(opts, ['element']);\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/close_drawer`, 'POST', {\n gravity\n });\n};\n\ncommands.mobileSetDate = async function mobileSetDate (opts = {}) {\n const {element, year, monthOfYear, dayOfMonth} = assertRequiredOptions(opts, ['element', 'year', 'monthOfYear', 'dayOfMonth']);\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/set_date`, 'POST', {\n year,\n monthOfYear,\n dayOfMonth,\n });\n};\n\ncommands.mobileSetTime = async function mobileSetTime (opts = {}) {\n const {element, hours, minutes} = assertRequiredOptions(opts, ['element', 'hours', 'minutes']);\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/set_time`, 'POST', {\n hours,\n minutes,\n });\n};\n\ncommands.mobileNavigateTo = async function mobileNavigateTo (opts = {}) {\n let {element, menuItemId} = assertRequiredOptions(opts, ['menuItemId', 'element']);\n\n let menuItemIdAsNumber = parseInt(menuItemId, 10);\n if (_.isNaN(menuItemIdAsNumber) || menuItemIdAsNumber < 0) {\n throw new errors.InvalidArgumentError(`'menuItemId' must be a non-negative number. Found ${menuItemId}`);\n }\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/navigate_to`, 'POST', {\n menuItemId\n });\n};\n\n/**\n * Runs a chain of Espresso web atoms (see https://developer.android.com/training/testing/espresso/web for reference)\n *\n * Takes JSON of the form\n *\n * {\n * \"webviewEl\": \"<ELEMENT_ID>\", // optional webview element to operate on\n * \"forceJavascriptEnabled\": true|false, // if webview disables javascript, webatoms won't work, this forces it\n * \"methodChain\": [\n * {\"name\": \"methodName\", \"atom\": {\"name\": \"atomName\", \"args\": [\"arg1\", \"arg2\", ...]}},\n * ...\n * ]\n * }\n *\n */\ncommands.mobileWebAtoms = async function mobileWebAtoms (opts = {}) {\n opts = assertRequiredOptions(opts, ['methodChain']);\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/web_atoms`, 'POST', opts);\n};\n\ncommands.getDisplayDensity = async function getDisplayDensity () {\n return await this.espresso.jwproxy.command('/appium/device/display_density', 'GET', {});\n};\n\ncommands.mobileScrollToPage = async function mobileScrollToPage (opts = {}) {\n\n // Validate the parameters\n const scrollToTypes = ['first', 'last', 'left', 'right'];\n const res = validate(opts, {\n element: {presence: true},\n scrollTo: {\n inclusion: {\n within: scrollToTypes,\n message: `\"scrollTo\" must be one of \"${scrollToTypes.join(', ')}\" found '%{value}'`,\n }\n },\n scrollToPage: {\n numericality: {\n onlyInteger: true,\n greaterThanOrEqualTo: 0,\n message: `\"scrollToPage\" must be a non-negative integer. Found '%{value}'`\n },\n },\n });\n if (util.hasValue(res)) {\n throw new errors.InvalidArgumentError(`Invalid scrollTo parameters: ${JSON.stringify(res)}`);\n }\n\n const {element, scrollTo, scrollToPage, smoothScroll} = opts;\n\n if (util.hasValue(scrollTo) && util.hasValue(scrollToPage)) {\n this.log.warn(`'scrollTo' and 'scrollToPage' where both provided. Defaulting to 'scrollTo'`);\n }\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/scroll_to_page`, 'POST', {\n scrollTo,\n scrollToPage,\n smoothScroll,\n });\n};\n\n\n/**\n * API to invoke methods defined in Android app.\n *\n * Example data\n * {\n * target: 'activity',\n * methods:\n * [\n * {\n * name: \"someMethod\",\n * },\n * {\n * name: \"anotherMethod\",\n * args:\n * [\n * {value: \"Lol\", type: 'java.lang.CharSequence'},\n * {value: 1, type: 'int'}\n * ]\n * }\n * ]\n * }\n *\n * In above example, method \"someMethod\" will be invoked on 'activity'. On the result, \"anotherMethod\" will be invoked\n * \"target\" can be either 'activity', 'application' or 'element'\n * If target is set to 'application', methods will be invoked on application class\n * If target is set to 'activity', methods will be invoked on current activity\n * If target is set to 'element', 'elementId' must be specified\n *\n * - Only 'Public' methods can be invoked. ('open' modifire is necessary in Kotlin)\n * - following primitive types are supported: \"int\", \"boolean\", \"byte\", \"short\", \"long\", \"float\", \"char\"\n * - Non-primitive types with fully qualified name \"java.lang.*\" is also supported:\n * Eg. \"java.lang.CharSequence\", \"java.lang.String\", \"java.lang.Integer\", \"java.lang.Float\",\n * \"java.lang.Double\", \"java.lang.Boolean\", \"java.lang.Long\", \"java.lang.Short\",\n * \"java.lang.Character\" etc...\n *\n *\n * @throws {Error} if target is not 'activity' or 'application'\n * @throws {Error} if a method is not found with given argument types\n *\n * @return {*} the result of the last method in the invocation chain. If method return type is void, then \"<VOID>\" will be returned\n *\n */\ncommands.mobileBackdoor = async function mobileBackdoor (opts = {}) {\n assertRequiredOptions(opts, ['target', 'methods']);\n const {target, methods} = opts;\n if (target === 'element') {\n assertRequiredOptions(opts, ['elementId']);\n }\n const {elementId: targetElement} = opts;\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/backdoor`, 'POST', {target, methods, targetElement});\n};\n\n/**\n * Execute UiAutomator2 commands to drive out of app areas.\n * strategy can be one of: \"clazz\", \"res\", \"text\", \"textContains\", \"textEndsWith\", \"textStartsWith\",\n * \"desc\", \"descContains\", \"descEndsWith\", \"descStartsWith\", \"pkg\"\n *\n * action can be one of: \"click\", \"longClick\", \"getText\", \"getContentDescription\", \"getClassName\",\n * \"getResourceName\", \"getVisibleBounds\", \"getVisibleCenter\", \"getApplicationPackage\",\n * \"getChildCount\", \"clear\", \"isCheckable\", \"isChecked\", \"isClickable\", \"isEnabled\",\n * \"isFocusable\", \"isFocused\", \"isLongClickable\", \"isScrollable\", \"isSelected\"\n */\ncommands.mobileUiautomator = async function mobileUiautomator (opts = {}) {\n const {strategy, locator, action, index} = assertRequiredOptions(opts, ['strategy', 'locator', 'action']);\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/uiautomator`, 'POST', {strategy, locator, index, action});\n};\n\n/**\n * Execute UiAutomator2 command to return the UI dump when AUT is in background.\n * @throws {Error} if uiautomator view dump is unsuccessful\n * @returns {string} uiautomator DOM xml as string\n */\ncommands.mobileUiautomatorPageSource = async function mobileUiautomatorPageSource () {\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/uiautomator_page_source`, 'GET');\n};\n\n/**\n * Flash the element with given id.\n * durationMillis and repeatCount are optional\n *\n */\ncommands.mobileFlashElement = async function mobileFlashElement (opts = {}) {\n const {element} = assertRequiredOptions(opts, ['element']);\n const {durationMillis, repeatCount} = opts;\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/flash`, 'POST', {\n durationMillis,\n repeatCount\n });\n};\n\n/**\n * Perform a 'GeneralClickAction' (https://developer.android.com/reference/androidx/test/espresso/action/GeneralClickAction)\n */\ncommands.mobileClickAction = async function mobileClickAction (opts = {}) {\n const {element, tapper, coordinatesProvider, precisionDescriber,\n inputDevice, buttonState} = assertRequiredOptions(opts, ['element']);\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/click_action`, 'POST', {\n tapper, coordinatesProvider, precisionDescriber, inputDevice, buttonState\n });\n};\n\ncommands.updateSettings = async function updateSettings (settings) {\n return await this.espresso.jwproxy.command(`/appium/settings`, 'POST', { settings });\n};\n\ncommands.getSettings = async function getSettings () {\n return await this.espresso.jwproxy.command(`/appium/settings`, 'GET');\n};\n\n// Stop proxying to any Chromedriver and redirect to Espresso\nhelpers.suspendChromedriverProxy = function suspendChromedriverProxy () {\n this.chromedriver = null;\n this.proxyReqRes = this.espresso.proxyReqRes.bind(this.espresso);\n this.proxyCommand = this.espresso.proxyCommand.bind(this.espresso);\n this.jwpProxyActive = true;\n};\n\n/**\n * Starts the given activity with intent options, activity options and locale.\n * Activity could only be executed in scope of the current app package.\n *\n * appActivity is mandatory\n *\n * locale, optionalIntentArguments, optionalActivityArguments are optional\n */\ncommands.mobileStartActivity = async function mobileStartActivity (opts = {}) {\n const appPackage = this.caps.appPackage;\n const {\n appActivity,\n locale,\n optionalIntentArguments,\n optionalActivityArguments\n } = assertRequiredOptions(opts, ['appActivity']);\n return await this.espresso.jwproxy.command(`/appium/device/start_activity`, 'POST', {\n appPackage,\n appActivity,\n locale,\n optionalIntentArguments,\n optionalActivityArguments\n });\n};\n\ncommands.startActivity = async function startActivity (appPackage, appActivity,\n appWaitPackage, appWaitActivity) {\n // intentAction, intentCategory, intentFlags, optionalIntentArguments, dontStopAppOnReset\n // parameters are not supported by Espresso\n appPackage = appPackage || this.caps.appPackage;\n appWaitPackage = appWaitPackage || appPackage;\n appActivity = qualifyActivityName(appActivity, appPackage);\n appWaitActivity = qualifyActivityName(appWaitActivity || appActivity, appWaitPackage);\n this.log.debug(`Starting activity '${appActivity}' for package '${appPackage}'`);\n await this.espresso.jwproxy.command(`/appium/device/start_activity`, 'POST', {\n appPackage,\n appActivity,\n });\n await this.adb.waitForActivity(appWaitPackage, appWaitActivity);\n};\n\ncommands.mobileDismissAutofill = async function mobileDismissAutofill (opts = {}) {\n const {element} = assertRequiredOptions(opts, ['element']);\n await this.espresso.jwproxy.command(\n `/session/:sessionId/appium/execute_mobile/${util.unwrapElement(element)}/dismiss_autofill`, 'POST', {});\n};\n\nObject.assign(extensions, commands, helpers);\nexport { commands, helpers };\nexport default extensions;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"general.js","names":["_lodash","_interopRequireDefault","require","_support","_validate","_driver","_utils","commands","helpers","extensions","exports","assertRequiredOptions","options","requiredOptionNames","_","isArray","presentOptionNames","keys","missingOptionNames","difference","isEmpty","Error","JSON","stringify","launchApp","errors","UnsupportedOperationError","closeApp","reset","getClipboard","adb","getApiLevel","espresso","jwproxy","command","mobilePerformEditorAction","opts","action","mobileSwipe","direction","element","swiper","startCoordinates","endCoordinates","precisionDescriber","util","unwrapElement","mobileGetDeviceInfo","mobileIsToastVisible","text","isRegexp","hasValue","InvalidArgumentError","mobileOpenDrawer","gravity","mobileCloseDrawer","mobileSetDate","year","monthOfYear","dayOfMonth","mobileSetTime","hours","minutes","mobileNavigateTo","menuItemId","menuItemIdAsNumber","parseInt","isNaN","mobileWebAtoms","getDisplayDensity","mobileScrollToPage","scrollToTypes","res","validate","presence","scrollTo","inclusion","within","message","join","scrollToPage","numericality","onlyInteger","greaterThanOrEqualTo","smoothScroll","log","warn","mobileBackdoor","target","methods","elementId","targetElement","mobileUiautomator","strategy","locator","index","mobileUiautomatorPageSource","mobileFlashElement","durationMillis","repeatCount","mobileClickAction","tapper","coordinatesProvider","inputDevice","buttonState","updateSettings","settings","getSettings","suspendChromedriverProxy","chromedriver","proxyReqRes","bind","proxyCommand","jwpProxyActive","mobileStartActivity","appPackage","caps","appActivity","locale","optionalIntentArguments","optionalActivityArguments","startActivity","appWaitPackage","appWaitActivity","qualifyActivityName","debug","waitForActivity","mobileDismissAutofill","Object","assign","_default","default"],"sources":["../../../lib/commands/general.js"],"sourcesContent":["import _ from 'lodash';\nimport { util } from 'appium/support';\nimport validate from 'validate.js';\nimport { errors } from 'appium/driver';\nimport { qualifyActivityName } from '../utils';\n\nconst commands = {}, helpers = {}, extensions = {};\n\nfunction assertRequiredOptions (options, requiredOptionNames) {\n if (!_.isArray(requiredOptionNames)) {\n requiredOptionNames = [requiredOptionNames];\n }\n const presentOptionNames = _.keys(options);\n const missingOptionNames = _.difference(requiredOptionNames, presentOptionNames);\n if (_.isEmpty(missingOptionNames)) {\n return options;\n }\n throw new Error(`The following options are required: ${JSON.stringify(missingOptionNames)}. ` +\n `You have only provided: ${JSON.stringify(presentOptionNames)}`);\n}\n\n// eslint-disable-next-line require-await\ncommands.launchApp = async function launchApp () {\n throw new errors.UnsupportedOperationError('Please create a new session in order to launch the application under test');\n};\n\n// eslint-disable-next-line require-await\ncommands.closeApp = async function closeApp () {\n throw new errors.UnsupportedOperationError('Please quit the session in order to close the application under test');\n};\n\n// eslint-disable-next-line require-await\ncommands.reset = async function reset () {\n throw new errors.UnsupportedOperationError(\n 'Please quit the session and create a new one ' +\n 'in order to close and launch the application under test');\n};\n\ncommands.getClipboard = async function getClipboard () {\n return (await this.adb.getApiLevel() < 29)\n ? (await this.espresso.jwproxy.command('/appium/device/get_clipboard', 'POST', {}))\n : (await this.adb.getClipboard());\n};\n\ncommands.mobilePerformEditorAction = async function mobilePerformEditorAction (opts = {}) {\n const {action} = assertRequiredOptions(opts, ['action']);\n return await this.espresso.jwproxy.command('/appium/device/perform_editor_action', 'POST', {action});\n};\n\ncommands.mobileSwipe = async function mobileSwipe (opts = {}) {\n const {direction, element, swiper, startCoordinates, endCoordinates, precisionDescriber} = assertRequiredOptions(opts, ['element']);\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/swipe`, 'POST', {\n direction, element, swiper, startCoordinates, endCoordinates, precisionDescriber\n });\n};\n\ncommands.mobileGetDeviceInfo = async function mobileGetDeviceInfo () {\n return await this.espresso.jwproxy.command('/appium/device/info', 'GET');\n};\n\ncommands.mobileIsToastVisible = async function mobileIsToastVisible (opts = {}) {\n const {text, isRegexp} = opts;\n if (!util.hasValue(text)) {\n throw new errors.InvalidArgumentError(`'text' argument is mandatory`);\n }\n return await this.espresso.jwproxy.command('/appium/execute_mobile/is_toast_displayed', 'POST', {\n text,\n isRegexp,\n });\n};\n\ncommands.mobileOpenDrawer = async function mobileOpenDrawer (opts = {}) {\n const {element, gravity} = assertRequiredOptions(opts, ['element']);\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/open_drawer`, 'POST', {\n gravity\n });\n};\n\ncommands.mobileCloseDrawer = async function mobileCloseDrawer (opts = {}) {\n const {element, gravity} = assertRequiredOptions(opts, ['element']);\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/close_drawer`, 'POST', {\n gravity\n });\n};\n\ncommands.mobileSetDate = async function mobileSetDate (opts = {}) {\n const {element, year, monthOfYear, dayOfMonth} = assertRequiredOptions(opts, ['element', 'year', 'monthOfYear', 'dayOfMonth']);\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/set_date`, 'POST', {\n year,\n monthOfYear,\n dayOfMonth,\n });\n};\n\ncommands.mobileSetTime = async function mobileSetTime (opts = {}) {\n const {element, hours, minutes} = assertRequiredOptions(opts, ['element', 'hours', 'minutes']);\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/set_time`, 'POST', {\n hours,\n minutes,\n });\n};\n\ncommands.mobileNavigateTo = async function mobileNavigateTo (opts = {}) {\n let {element, menuItemId} = assertRequiredOptions(opts, ['menuItemId', 'element']);\n\n let menuItemIdAsNumber = parseInt(menuItemId, 10);\n if (_.isNaN(menuItemIdAsNumber) || menuItemIdAsNumber < 0) {\n throw new errors.InvalidArgumentError(`'menuItemId' must be a non-negative number. Found ${menuItemId}`);\n }\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/navigate_to`, 'POST', {\n menuItemId\n });\n};\n\n/**\n * Runs a chain of Espresso web atoms (see https://developer.android.com/training/testing/espresso/web for reference)\n *\n * Takes JSON of the form\n *\n * {\n * \"webviewEl\": \"<ELEMENT_ID>\", // optional webview element to operate on\n * \"forceJavascriptEnabled\": true|false, // if webview disables javascript, webatoms won't work, this forces it\n * \"methodChain\": [\n * {\"name\": \"methodName\", \"atom\": {\"name\": \"atomName\", \"args\": [\"arg1\", \"arg2\", ...]}},\n * ...\n * ]\n * }\n *\n */\ncommands.mobileWebAtoms = async function mobileWebAtoms (opts = {}) {\n opts = assertRequiredOptions(opts, ['methodChain']);\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/web_atoms`, 'POST', opts);\n};\n\ncommands.getDisplayDensity = async function getDisplayDensity () {\n return await this.espresso.jwproxy.command('/appium/device/display_density', 'GET', {});\n};\n\ncommands.mobileScrollToPage = async function mobileScrollToPage (opts = {}) {\n\n // Validate the parameters\n const scrollToTypes = ['first', 'last', 'left', 'right'];\n const res = validate(opts, {\n element: {presence: true},\n scrollTo: {\n inclusion: {\n within: scrollToTypes,\n message: `\"scrollTo\" must be one of \"${scrollToTypes.join(', ')}\" found '%{value}'`,\n }\n },\n scrollToPage: {\n numericality: {\n onlyInteger: true,\n greaterThanOrEqualTo: 0,\n message: `\"scrollToPage\" must be a non-negative integer. Found '%{value}'`\n },\n },\n });\n if (util.hasValue(res)) {\n throw new errors.InvalidArgumentError(`Invalid scrollTo parameters: ${JSON.stringify(res)}`);\n }\n\n const {element, scrollTo, scrollToPage, smoothScroll} = opts;\n\n if (util.hasValue(scrollTo) && util.hasValue(scrollToPage)) {\n this.log.warn(`'scrollTo' and 'scrollToPage' where both provided. Defaulting to 'scrollTo'`);\n }\n\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/scroll_to_page`, 'POST', {\n scrollTo,\n scrollToPage,\n smoothScroll,\n });\n};\n\n\n/**\n * API to invoke methods defined in Android app.\n *\n * Example data\n * {\n * target: 'activity',\n * methods:\n * [\n * {\n * name: \"someMethod\",\n * },\n * {\n * name: \"anotherMethod\",\n * args:\n * [\n * {value: \"Lol\", type: 'java.lang.CharSequence'},\n * {value: 1, type: 'int'}\n * ]\n * }\n * ]\n * }\n *\n * In above example, method \"someMethod\" will be invoked on 'activity'. On the result, \"anotherMethod\" will be invoked\n * \"target\" can be either 'activity', 'application' or 'element'\n * If target is set to 'application', methods will be invoked on application class\n * If target is set to 'activity', methods will be invoked on current activity\n * If target is set to 'element', 'elementId' must be specified\n *\n * - Only 'Public' methods can be invoked. ('open' modifire is necessary in Kotlin)\n * - following primitive types are supported: \"int\", \"boolean\", \"byte\", \"short\", \"long\", \"float\", \"char\"\n * - Non-primitive types with fully qualified name \"java.lang.*\" is also supported:\n * Eg. \"java.lang.CharSequence\", \"java.lang.String\", \"java.lang.Integer\", \"java.lang.Float\",\n * \"java.lang.Double\", \"java.lang.Boolean\", \"java.lang.Long\", \"java.lang.Short\",\n * \"java.lang.Character\" etc...\n *\n *\n * @throws {Error} if target is not 'activity' or 'application'\n * @throws {Error} if a method is not found with given argument types\n *\n * @return {*} the result of the last method in the invocation chain. If method return type is void, then \"<VOID>\" will be returned\n *\n */\ncommands.mobileBackdoor = async function mobileBackdoor (opts = {}) {\n assertRequiredOptions(opts, ['target', 'methods']);\n const {target, methods} = opts;\n if (target === 'element') {\n assertRequiredOptions(opts, ['elementId']);\n }\n const {elementId: targetElement} = opts;\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/backdoor`, 'POST', {target, methods, targetElement});\n};\n\n/**\n * Execute UiAutomator2 commands to drive out of app areas.\n * strategy can be one of: \"clazz\", \"res\", \"text\", \"textContains\", \"textEndsWith\", \"textStartsWith\",\n * \"desc\", \"descContains\", \"descEndsWith\", \"descStartsWith\", \"pkg\"\n *\n * action can be one of: \"click\", \"longClick\", \"getText\", \"getContentDescription\", \"getClassName\",\n * \"getResourceName\", \"getVisibleBounds\", \"getVisibleCenter\", \"getApplicationPackage\",\n * \"getChildCount\", \"clear\", \"isCheckable\", \"isChecked\", \"isClickable\", \"isEnabled\",\n * \"isFocusable\", \"isFocused\", \"isLongClickable\", \"isScrollable\", \"isSelected\"\n */\ncommands.mobileUiautomator = async function mobileUiautomator (opts = {}) {\n const {strategy, locator, action, index} = assertRequiredOptions(opts, ['strategy', 'locator', 'action']);\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/uiautomator`, 'POST', {strategy, locator, index, action});\n};\n\n/**\n * Execute UiAutomator2 command to return the UI dump when AUT is in background.\n * @throws {Error} if uiautomator view dump is unsuccessful\n * @returns {string} uiautomator DOM xml as string\n */\ncommands.mobileUiautomatorPageSource = async function mobileUiautomatorPageSource () {\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/uiautomator_page_source`, 'GET');\n};\n\n/**\n * Flash the element with given id.\n * durationMillis and repeatCount are optional\n *\n */\ncommands.mobileFlashElement = async function mobileFlashElement (opts = {}) {\n const {element} = assertRequiredOptions(opts, ['element']);\n const {durationMillis, repeatCount} = opts;\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/flash`, 'POST', {\n durationMillis,\n repeatCount\n });\n};\n\n/**\n * Perform a 'GeneralClickAction' (https://developer.android.com/reference/androidx/test/espresso/action/GeneralClickAction)\n */\ncommands.mobileClickAction = async function mobileClickAction (opts = {}) {\n const {element, tapper, coordinatesProvider, precisionDescriber,\n inputDevice, buttonState} = assertRequiredOptions(opts, ['element']);\n return await this.espresso.jwproxy.command(`/appium/execute_mobile/${util.unwrapElement(element)}/click_action`, 'POST', {\n tapper, coordinatesProvider, precisionDescriber, inputDevice, buttonState\n });\n};\n\ncommands.updateSettings = async function updateSettings (settings) {\n return await this.espresso.jwproxy.command(`/appium/settings`, 'POST', { settings });\n};\n\ncommands.getSettings = async function getSettings () {\n return await this.espresso.jwproxy.command(`/appium/settings`, 'GET');\n};\n\n// Stop proxying to any Chromedriver and redirect to Espresso\nhelpers.suspendChromedriverProxy = function suspendChromedriverProxy () {\n this.chromedriver = null;\n this.proxyReqRes = this.espresso.proxyReqRes.bind(this.espresso);\n this.proxyCommand = this.espresso.proxyCommand.bind(this.espresso);\n this.jwpProxyActive = true;\n};\n\n/**\n * Starts the given activity with intent options, activity options and locale.\n * Activity could only be executed in scope of the current app package.\n *\n * appActivity is mandatory\n *\n * locale, optionalIntentArguments, optionalActivityArguments are optional\n */\ncommands.mobileStartActivity = async function mobileStartActivity (opts = {}) {\n const appPackage = this.caps.appPackage;\n const {\n appActivity,\n locale,\n optionalIntentArguments,\n optionalActivityArguments\n } = assertRequiredOptions(opts, ['appActivity']);\n return await this.espresso.jwproxy.command(`/appium/device/start_activity`, 'POST', {\n appPackage,\n appActivity,\n locale,\n optionalIntentArguments,\n optionalActivityArguments\n });\n};\n\ncommands.startActivity = async function startActivity (appPackage, appActivity,\n appWaitPackage, appWaitActivity) {\n // intentAction, intentCategory, intentFlags, optionalIntentArguments, dontStopAppOnReset\n // parameters are not supported by Espresso\n appPackage = appPackage || this.caps.appPackage;\n appWaitPackage = appWaitPackage || appPackage;\n appActivity = qualifyActivityName(appActivity, appPackage);\n appWaitActivity = qualifyActivityName(appWaitActivity || appActivity, appWaitPackage);\n this.log.debug(`Starting activity '${appActivity}' for package '${appPackage}'`);\n await this.espresso.jwproxy.command(`/appium/device/start_activity`, 'POST', {\n appPackage,\n appActivity,\n });\n await this.adb.waitForActivity(appWaitPackage, appWaitActivity);\n};\n\ncommands.mobileDismissAutofill = async function mobileDismissAutofill (opts = {}) {\n const {element} = assertRequiredOptions(opts, ['element']);\n await this.espresso.jwproxy.command(\n `/session/:sessionId/appium/execute_mobile/${util.unwrapElement(element)}/dismiss_autofill`, 'POST', {});\n};\n\nObject.assign(extensions, commands, helpers);\nexport { commands, helpers };\nexport default extensions;\n"],"mappings":"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"}
|
|
@@ -14,4 +14,4 @@ const commands = {};
|
|
|
14
14
|
Object.assign(commands, _general.default, _execute.default, _services.default, _idlingResources.default);
|
|
15
15
|
var _default = commands;
|
|
16
16
|
exports.default = _default;
|
|
17
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZXhlY3V0ZSIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2dlbmVyYWwiLCJfc2VydmljZXMiLCJfaWRsaW5nUmVzb3VyY2VzIiwiY29tbWFuZHMiLCJPYmplY3QiLCJhc3NpZ24iLCJnZW5lcmFsQ21kcyIsImV4ZWN1dGVDbWRzIiwic2VydmljZXNDbWRzIiwiaWRsaW5nUmVzb3VyY2VzQ21kcyIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsImRlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvY29tbWFuZHMvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGV4ZWN1dGVDbWRzIGZyb20gJy4vZXhlY3V0ZSc7XG5pbXBvcnQgZ2VuZXJhbENtZHMgZnJvbSAnLi9nZW5lcmFsJztcbmltcG9ydCBzZXJ2aWNlc0NtZHMgZnJvbSAnLi9zZXJ2aWNlcyc7XG5pbXBvcnQgaWRsaW5nUmVzb3VyY2VzQ21kcyBmcm9tICcuL2lkbGluZy1yZXNvdXJjZXMnO1xuXG5jb25zdCBjb21tYW5kcyA9IHt9O1xuT2JqZWN0LmFzc2lnbihcbiAgY29tbWFuZHMsXG4gIGdlbmVyYWxDbWRzLFxuICBleGVjdXRlQ21kcyxcbiAgc2VydmljZXNDbWRzLFxuICBpZGxpbmdSZXNvdXJjZXNDbWRzLFxuICAvLyBhZGQgb3RoZXIgY29tbWFuZCB0eXBlcyBoZXJlXG4pO1xuXG5leHBvcnQgZGVmYXVsdCBjb21tYW5kcztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxRQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxRQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxTQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRyxnQkFBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBRUEsTUFBTUksUUFBUSxHQUFHLENBQUMsQ0FBQztBQUNuQkMsTUFBTSxDQUFDQyxNQUFNLENBQ1hGLFFBQVEsRUFDUkcsZ0JBQVcsRUFDWEMsZ0JBQVcsRUFDWEMsaUJBQVksRUFDWkMsd0JBRUYsQ0FBQztBQUFDLElBQUFDLFFBQUEsR0FFYVAsUUFBUTtBQUFBUSxPQUFBLENBQUFDLE9BQUEsR0FBQUYsUUFBQSJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_execute","_interopRequireDefault","require","_general","_services","_idlingResources","commands","Object","assign","generalCmds","executeCmds","servicesCmds","idlingResourcesCmds","_default","exports","default"],"sources":["../../../lib/commands/index.js"],"sourcesContent":["import executeCmds from './execute';\nimport generalCmds from './general';\nimport servicesCmds from './services';\nimport idlingResourcesCmds from './idling-resources';\n\nconst commands = {};\nObject.assign(\n commands,\n generalCmds,\n executeCmds,\n servicesCmds,\n idlingResourcesCmds,\n // add other command types here\n);\n\nexport default commands;\n"],"mappings":";;;;;;;;AAAA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,gBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAEA,MAAMI,QAAQ,GAAG,CAAC,CAAC;AACnBC,MAAM,CAACC,MAAM,CACXF,QAAQ,EACRG,gBAAW,EACXC,gBAAW,EACXC,iBAAY,EACZC,
|
|
1
|
+
{"version":3,"file":"index.js","names":["_execute","_interopRequireDefault","require","_general","_services","_idlingResources","commands","Object","assign","generalCmds","executeCmds","servicesCmds","idlingResourcesCmds","_default","exports","default"],"sources":["../../../lib/commands/index.js"],"sourcesContent":["import executeCmds from './execute';\nimport generalCmds from './general';\nimport servicesCmds from './services';\nimport idlingResourcesCmds from './idling-resources';\n\nconst commands = {};\nObject.assign(\n commands,\n generalCmds,\n executeCmds,\n servicesCmds,\n idlingResourcesCmds,\n // add other command types here\n);\n\nexport default commands;\n"],"mappings":";;;;;;;;AAAA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,gBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAEA,MAAMI,QAAQ,GAAG,CAAC,CAAC;AACnBC,MAAM,CAACC,MAAM,CACXF,QAAQ,EACRG,gBAAW,EACXC,gBAAW,EACXC,iBAAY,EACZC,wBAEF,CAAC;AAAC,IAAAC,QAAA,GAEaP,QAAQ;AAAAQ,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|