oxygen-cli 1.20.2 → 1.21.0-beta.12

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.
Files changed (33) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/build/core/OxygenCore.js +4 -3
  3. package/build/errors/OxygenError.js +9 -5
  4. package/build/errors/helper.js +10 -5
  5. package/build/lib/util.js +5 -2
  6. package/build/ox_modules/module-db.js +2 -2
  7. package/build/ox_modules/module-email.js +97 -49
  8. package/build/ox_modules/module-eyes.js +4 -21
  9. package/build/ox_modules/module-http.js +148 -62
  10. package/build/ox_modules/module-mailinator.js +25 -32
  11. package/build/ox_modules/module-mob/commands/getDeviceLogs.js +4 -11
  12. package/build/ox_modules/module-mob/commands/selectWindow.js +4 -7
  13. package/build/ox_modules/module-mob/commands/sendKeys.js +2 -2
  14. package/build/ox_modules/module-mob.js +65 -52
  15. package/build/ox_modules/module-pdf.js +12 -32
  16. package/build/ox_modules/module-proxy.js +9 -9
  17. package/build/ox_modules/module-serial.js +14 -12
  18. package/build/ox_modules/module-soap.js +113 -77
  19. package/build/ox_modules/module-twilio.js +27 -27
  20. package/build/ox_modules/module-utils.js +43 -5
  21. package/build/ox_modules/module-web/commands/fullscreenWindow.js +24 -0
  22. package/build/ox_modules/module-web/commands/index.js +25 -1
  23. package/build/ox_modules/module-web/commands/isSelected.js +2 -2
  24. package/build/ox_modules/module-web/commands/maximizeWindow.js +24 -0
  25. package/build/ox_modules/module-web/commands/minimizeWindow.js +24 -0
  26. package/build/ox_modules/module-web/commands/selectWindow.js +4 -7
  27. package/build/ox_modules/module-web/commands/waitForNotExist.js +2 -3
  28. package/build/ox_modules/module-web.js +87 -64
  29. package/build/ox_modules/utils.js +40 -4
  30. package/build/ox_services/service-devtools/submodule-network.js +8 -8
  31. package/build/ox_services/service-devtools.js +3 -3
  32. package/build/runners/WorkerProcess.js +22 -20
  33. package/package.json +8 -5
@@ -40,16 +40,9 @@ module.exports = async function () {
40
40
 
41
41
  const types = this.helpers.getLogTypes(context);
42
42
 
43
- if (types && Array.isArray(types) && types.length > 0) {
44
- for (let i in types) {
45
- if (types[i] !== 'browser') {
46
- const logs = await this.driver.getLogs(types[i]);
47
-
48
- if (logs && Array.isArray(logs) && logs.length > 0) {
49
- allLogs = [...allLogs, ...logs];
50
- }
51
- }
52
- }
43
+ if (types && Array.isArray(types) && types.length > 0 && types.some(t => t === 'logcat')) {
44
+ const logs = await this.driver.getLogs('logcat');
45
+ allLogs = [...allLogs, ...logs];
53
46
  }
54
47
  }
55
48
 
@@ -61,4 +54,4 @@ module.exports = async function () {
61
54
 
62
55
  return null;
63
56
  };
64
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9veF9tb2R1bGVzL21vZHVsZS1tb2IvY29tbWFuZHMvZ2V0RGV2aWNlTG9ncy5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwiY2FwcyIsInBsYXRmb3JtTmFtZSIsImFsbExvZ3MiLCJjb250ZXh0cyIsImRyaXZlciIsImdldENvbnRleHRzIiwiQXJyYXkiLCJpc0FycmF5IiwibGVuZ3RoIiwiYyIsImNvbnRleHQiLCJzd2l0Y2hDb250ZXh0IiwiZSIsInR5cGVzIiwiaGVscGVycyIsImdldExvZ1R5cGVzIiwiaSIsImxvZ3MiLCJnZXRMb2dzIiwiYXBwQ29udGV4dCJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0FBLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQixrQkFBa0I7QUFDbEM7QUFDRyxNQUFJLEtBQUtDLElBQUwsSUFBYSxLQUFLQSxJQUFMLENBQVVDLFlBQXZCLElBQXVDLEtBQUtELElBQUwsQ0FBVUMsWUFBVixLQUEyQixTQUF0RSxFQUFpRjtBQUM3RSxRQUFJQyxPQUFPLEdBQUcsRUFBZDtBQUNBLFVBQU1DLFFBQVEsR0FBRyxNQUFNLEtBQUtDLE1BQUwsQ0FBWUMsV0FBWixFQUF2Qjs7QUFDQSxRQUFJRixRQUFRLElBQUlHLEtBQUssQ0FBQ0MsT0FBTixDQUFjSixRQUFkLENBQVosSUFBdUNBLFFBQVEsQ0FBQ0ssTUFBVCxHQUFrQixDQUE3RCxFQUFnRTtBQUM1RCxXQUFLLElBQUlDLENBQVQsSUFBY04sUUFBZCxFQUF3QjtBQUNwQixjQUFNTyxPQUFPLEdBQUdQLFFBQVEsQ0FBQ00sQ0FBRCxDQUF4Qjs7QUFDQSxZQUFJO0FBQ0EsZ0JBQU0sS0FBS0wsTUFBTCxDQUFZTyxhQUFaLENBQTBCRCxPQUExQixDQUFOO0FBQ0gsU0FGRCxDQUVFLE9BQU9FLENBQVAsRUFBVTtBQUNSO0FBQ0E7QUFDQTtBQUNIOztBQUNELGNBQU1DLEtBQUssR0FBRyxLQUFLQyxPQUFMLENBQWFDLFdBQWIsQ0FBeUJMLE9BQXpCLENBQWQ7O0FBQ0EsWUFBSUcsS0FBSyxJQUFJUCxLQUFLLENBQUNDLE9BQU4sQ0FBY00sS0FBZCxDQUFULElBQWlDQSxLQUFLLENBQUNMLE1BQU4sR0FBZSxDQUFwRCxFQUF1RDtBQUNuRCxlQUFLLElBQUlRLENBQVQsSUFBY0gsS0FBZCxFQUFxQjtBQUNqQixnQkFBSUEsS0FBSyxDQUFDRyxDQUFELENBQUwsS0FBYSxTQUFqQixFQUE0QjtBQUN4QixvQkFBTUMsSUFBSSxHQUFHLE1BQU0sS0FBS2IsTUFBTCxDQUFZYyxPQUFaLENBQW9CTCxLQUFLLENBQUNHLENBQUQsQ0FBekIsQ0FBbkI7O0FBQ0Esa0JBQUlDLElBQUksSUFBSVgsS0FBSyxDQUFDQyxPQUFOLENBQWNVLElBQWQsQ0FBUixJQUErQkEsSUFBSSxDQUFDVCxNQUFMLEdBQWMsQ0FBakQsRUFBb0Q7QUFDaEROLGdCQUFBQSxPQUFPLEdBQUcsQ0FDTixHQUFHQSxPQURHLEVBRU4sR0FBR2UsSUFGRyxDQUFWO0FBSUg7QUFDSjtBQUNKO0FBQ0o7QUFDSjs7QUFDRCxZQUFNLEtBQUtiLE1BQUwsQ0FBWU8sYUFBWixDQUEwQixLQUFLUSxVQUEvQixDQUFOO0FBQ0g7O0FBRUQsV0FBT2pCLE9BQVA7QUFDSDs7QUFFRCxTQUFPLElBQVA7QUFDSCxDQXJDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIENvcHlyaWdodCAoQykgMjAxNS1wcmVzZW50IENsb3VkQmVhdCBMaW1pdGVkXHJcbiAqXHJcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XHJcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XHJcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXHJcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEBmdW5jdGlvbiBnZXREZXZpY2VMb2dzXHJcbiAqIEBzdW1tYXJ5IENvbGxlY3RzIGxvZ3MgZnJvbSB0aGUgbW9iaWxlIGRldmljZS5cclxuICogQHJldHVybiB7T2JqZWN0W119IEEgbGlzdCBvZiBsb2dzLlxyXG4gKiBAZm9yIGFuZHJvaWQsIGlvcywgaHlicmlkLCB3ZWJcclxuICogQGV4YW1wbGUgPGNhcHRpb24+W2phdmFzY3JpcHRdIFVzYWdlIGV4YW1wbGU8L2NhcHRpb24+XHJcbiAqIG1vYi5pbml0KGNhcHMpOyAvL1N0YXJ0cyBhIG1vYmlsZSBzZXNzaW9uIGFuZCBvcGVucyBhcHAgZnJvbSBkZXNpcmVkIGNhcGFiaWxpdGllc1xyXG4gKiBtb2IuZ2V0RGV2aWNlTG9ncygpOyAvL0NvbGxlY3RzIGxvZ3MgZnJvbSB0aGUgbW9iaWxlIGRldmljZVxyXG4gKi9cclxubW9kdWxlLmV4cG9ydHMgPSBhc3luYyBmdW5jdGlvbiAoKSB7XHJcblx0Ly8gY3VycmVudGx5IHN1cHBvcnRzIG9ubHkgQW5kcm9pZCBsb2dzXHJcbiAgICBpZiAodGhpcy5jYXBzICYmIHRoaXMuY2Fwcy5wbGF0Zm9ybU5hbWUgJiYgdGhpcy5jYXBzLnBsYXRmb3JtTmFtZSA9PT0gJ0FuZHJvaWQnKSB7XHJcbiAgICAgICAgbGV0IGFsbExvZ3MgPSBbXTtcclxuICAgICAgICBjb25zdCBjb250ZXh0cyA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldENvbnRleHRzKCk7XHJcbiAgICAgICAgaWYgKGNvbnRleHRzICYmIEFycmF5LmlzQXJyYXkoY29udGV4dHMpICYmIGNvbnRleHRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgYyBpbiBjb250ZXh0cykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY29udGV4dCA9IGNvbnRleHRzW2NdO1xyXG4gICAgICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLmRyaXZlci5zd2l0Y2hDb250ZXh0KGNvbnRleHQpO1xyXG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIGlnbm9yZSBzd2l0Y2ggZXJyb3JzLCBsaWtlIFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIFwiRmFpbGVkIHRvIGdldCBzb2NrZXRzIG1hdGNoaW5nOiBAd2VibGF5ZXJfZGV2dG9vbHNfcmVtb3RlXy4qNDczN1xcbiAgKG1ha2Ugc3VyZSB0aGUgYXBwIGhhcyBpdHMgV2ViVmlldy9XZWJMYXllciBjb25maWd1cmVkIGZvciBkZWJ1Z2dpbmcpXHJcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBjb25zdCB0eXBlcyA9IHRoaXMuaGVscGVycy5nZXRMb2dUeXBlcyhjb250ZXh0KTtcclxuICAgICAgICAgICAgICAgIGlmICh0eXBlcyAmJiBBcnJheS5pc0FycmF5KHR5cGVzKSAmJiB0eXBlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSBpbiB0eXBlcykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodHlwZXNbaV0gIT09ICdicm93c2VyJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbG9ncyA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldExvZ3ModHlwZXNbaV0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxvZ3MgJiYgQXJyYXkuaXNBcnJheShsb2dzKSAmJiBsb2dzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxMb2dzID0gW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5hbGxMb2dzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5sb2dzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLmRyaXZlci5zd2l0Y2hDb250ZXh0KHRoaXMuYXBwQ29udGV4dCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gYWxsTG9ncztcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxufTsiXX0=
57
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9veF9tb2R1bGVzL21vZHVsZS1tb2IvY29tbWFuZHMvZ2V0RGV2aWNlTG9ncy5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwiY2FwcyIsInBsYXRmb3JtTmFtZSIsImFsbExvZ3MiLCJjb250ZXh0cyIsImRyaXZlciIsImdldENvbnRleHRzIiwiQXJyYXkiLCJpc0FycmF5IiwibGVuZ3RoIiwiYyIsImNvbnRleHQiLCJzd2l0Y2hDb250ZXh0IiwiZSIsInR5cGVzIiwiaGVscGVycyIsImdldExvZ1R5cGVzIiwic29tZSIsInQiLCJsb2dzIiwiZ2V0TG9ncyIsImFwcENvbnRleHQiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBQSxNQUFNLENBQUNDLE9BQVAsR0FBaUIsa0JBQWtCO0FBQ2xDO0FBQ0csTUFBSSxLQUFLQyxJQUFMLElBQWEsS0FBS0EsSUFBTCxDQUFVQyxZQUF2QixJQUF1QyxLQUFLRCxJQUFMLENBQVVDLFlBQVYsS0FBMkIsU0FBdEUsRUFBaUY7QUFDN0UsUUFBSUMsT0FBTyxHQUFHLEVBQWQ7QUFDQSxVQUFNQyxRQUFRLEdBQUcsTUFBTSxLQUFLQyxNQUFMLENBQVlDLFdBQVosRUFBdkI7O0FBQ0EsUUFBSUYsUUFBUSxJQUFJRyxLQUFLLENBQUNDLE9BQU4sQ0FBY0osUUFBZCxDQUFaLElBQXVDQSxRQUFRLENBQUNLLE1BQVQsR0FBa0IsQ0FBN0QsRUFBZ0U7QUFDNUQsV0FBSyxJQUFJQyxDQUFULElBQWNOLFFBQWQsRUFBd0I7QUFDcEIsY0FBTU8sT0FBTyxHQUFHUCxRQUFRLENBQUNNLENBQUQsQ0FBeEI7O0FBQ0EsWUFBSTtBQUNBLGdCQUFNLEtBQUtMLE1BQUwsQ0FBWU8sYUFBWixDQUEwQkQsT0FBMUIsQ0FBTjtBQUNILFNBRkQsQ0FFRSxPQUFPRSxDQUFQLEVBQVU7QUFDUjtBQUNBO0FBQ0E7QUFDSDs7QUFDRCxjQUFNQyxLQUFLLEdBQUcsS0FBS0MsT0FBTCxDQUFhQyxXQUFiLENBQXlCTCxPQUF6QixDQUFkOztBQUNBLFlBQUlHLEtBQUssSUFBSVAsS0FBSyxDQUFDQyxPQUFOLENBQWNNLEtBQWQsQ0FBVCxJQUFpQ0EsS0FBSyxDQUFDTCxNQUFOLEdBQWUsQ0FBaEQsSUFBcURLLEtBQUssQ0FBQ0csSUFBTixDQUFXQyxDQUFDLElBQUlBLENBQUMsS0FBSyxRQUF0QixDQUF6RCxFQUEwRjtBQUN0RixnQkFBTUMsSUFBSSxHQUFHLE1BQU0sS0FBS2QsTUFBTCxDQUFZZSxPQUFaLENBQW9CLFFBQXBCLENBQW5CO0FBQ0FqQixVQUFBQSxPQUFPLEdBQUcsQ0FDTixHQUFHQSxPQURHLEVBRU4sR0FBR2dCLElBRkcsQ0FBVjtBQUlIO0FBQ0o7O0FBQ0QsWUFBTSxLQUFLZCxNQUFMLENBQVlPLGFBQVosQ0FBMEIsS0FBS1MsVUFBL0IsQ0FBTjtBQUNIOztBQUVELFdBQU9sQixPQUFQO0FBQ0g7O0FBRUQsU0FBTyxJQUFQO0FBQ0gsQ0EvQkQiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUtcHJlc2VudCBDbG91ZEJlYXQgTGltaXRlZFxyXG4gKlxyXG4gKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxyXG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxyXG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxyXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxyXG4gKi9cclxuXHJcbi8qKlxyXG4gKiBAZnVuY3Rpb24gZ2V0RGV2aWNlTG9nc1xyXG4gKiBAc3VtbWFyeSBDb2xsZWN0cyBsb2dzIGZyb20gdGhlIG1vYmlsZSBkZXZpY2UuXHJcbiAqIEByZXR1cm4ge09iamVjdFtdfSBBIGxpc3Qgb2YgbG9ncy5cclxuICogQGZvciBhbmRyb2lkLCBpb3MsIGh5YnJpZCwgd2ViXHJcbiAqIEBleGFtcGxlIDxjYXB0aW9uPltqYXZhc2NyaXB0XSBVc2FnZSBleGFtcGxlPC9jYXB0aW9uPlxyXG4gKiBtb2IuaW5pdChjYXBzKTsgLy9TdGFydHMgYSBtb2JpbGUgc2Vzc2lvbiBhbmQgb3BlbnMgYXBwIGZyb20gZGVzaXJlZCBjYXBhYmlsaXRpZXNcclxuICogbW9iLmdldERldmljZUxvZ3MoKTsgLy9Db2xsZWN0cyBsb2dzIGZyb20gdGhlIG1vYmlsZSBkZXZpY2VcclxuICovXHJcbm1vZHVsZS5leHBvcnRzID0gYXN5bmMgZnVuY3Rpb24gKCkge1xyXG5cdC8vIGN1cnJlbnRseSBzdXBwb3J0cyBvbmx5IEFuZHJvaWQgbG9nc1xyXG4gICAgaWYgKHRoaXMuY2FwcyAmJiB0aGlzLmNhcHMucGxhdGZvcm1OYW1lICYmIHRoaXMuY2Fwcy5wbGF0Zm9ybU5hbWUgPT09ICdBbmRyb2lkJykge1xyXG4gICAgICAgIGxldCBhbGxMb2dzID0gW107XHJcbiAgICAgICAgY29uc3QgY29udGV4dHMgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRDb250ZXh0cygpO1xyXG4gICAgICAgIGlmIChjb250ZXh0cyAmJiBBcnJheS5pc0FycmF5KGNvbnRleHRzKSAmJiBjb250ZXh0cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGMgaW4gY29udGV4dHMpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRleHQgPSBjb250ZXh0c1tjXTtcclxuICAgICAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoQ29udGV4dChjb250ZXh0KTtcclxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBpZ25vcmUgc3dpdGNoIGVycm9ycywgbGlrZSBcclxuICAgICAgICAgICAgICAgICAgICAvLyBcIkZhaWxlZCB0byBnZXQgc29ja2V0cyBtYXRjaGluZzogQHdlYmxheWVyX2RldnRvb2xzX3JlbW90ZV8uKjQ3MzdcXG4gIChtYWtlIHN1cmUgdGhlIGFwcCBoYXMgaXRzIFdlYlZpZXcvV2ViTGF5ZXIgY29uZmlndXJlZCBmb3IgZGVidWdnaW5nKVxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgY29uc3QgdHlwZXMgPSB0aGlzLmhlbHBlcnMuZ2V0TG9nVHlwZXMoY29udGV4dCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodHlwZXMgJiYgQXJyYXkuaXNBcnJheSh0eXBlcykgJiYgdHlwZXMubGVuZ3RoID4gMCAmJiB0eXBlcy5zb21lKHQgPT4gdCA9PT0gJ2xvZ2NhdCcpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbG9ncyA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldExvZ3MoJ2xvZ2NhdCcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGFsbExvZ3MgPSBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmFsbExvZ3MsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmxvZ3NcclxuICAgICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaENvbnRleHQodGhpcy5hcHBDb250ZXh0KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBhbGxMb2dzO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG59OyJdfQ==
@@ -20,8 +20,7 @@ require("source-map-support/register");
20
20
  * - `url=URL` Switch to the first window which matches the specified URL. `URL` can be any of
21
21
  * the supported string matching patterns (see top of the page). When using url locator, this command
22
22
  * will wait for the window to appear first similarly to `waitForWindow` command.
23
- * - `windowHandle` Switch to a window using its unique handle.
24
- * - `unspecified` _**deprecated**_ Switch to the last opened window.
23
+ * - `windowHandle` Switch to a window using its unique handle.
25
24
  * @function selectWindow
26
25
  * @param {String=} windowLocator - Window locator.
27
26
  * @param {Number=} timeout - Timeout in milliseconds when using 'title' window locating strategy.
@@ -34,6 +33,7 @@ require("source-map-support/register");
34
33
  * mob.selectWindow("title=Website");// Selects and focus a window.
35
34
  */
36
35
  module.exports = async function (windowLocator, timeout) {
36
+ this.helpers.assertArgument(windowLocator, 'windowLocator');
37
37
  var currentHandle;
38
38
  var currentHandleTitle;
39
39
  var currentHandleUrl;
@@ -55,10 +55,7 @@ module.exports = async function (windowLocator, timeout) {
55
55
 
56
56
  var windowHandles;
57
57
 
58
- if (!windowLocator) {
59
- windowHandles = await this.driver.getWindowHandles();
60
- await this.driver.switchToWindow(windowHandles[windowHandles.length - 1]);
61
- } else if (windowLocator.indexOf('title=') === 0) {
58
+ if (windowLocator.indexOf('title=') === 0) {
62
59
  let pattern = windowLocator.substring('title='.length);
63
60
  let start = new Date().getTime();
64
61
  timeout = !timeout ? this.waitForTimeout : timeout;
@@ -149,4 +146,4 @@ module.exports = async function (windowLocator, timeout) {
149
146
 
150
147
  return currentHandle;
151
148
  };
152
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9veF9tb2R1bGVzL21vZHVsZS1tb2IvY29tbWFuZHMvc2VsZWN0V2luZG93LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJ3aW5kb3dMb2NhdG9yIiwidGltZW91dCIsImN1cnJlbnRIYW5kbGUiLCJjdXJyZW50SGFuZGxlVGl0bGUiLCJjdXJyZW50SGFuZGxlVXJsIiwic3dpdGhUb0N1cnJlbnRIYW5kbGVFcnJvck1zZyIsImRyaXZlciIsImdldFdpbmRvd0hhbmRsZSIsImVyciIsInduZHMiLCJnZXRXaW5kb3dIYW5kbGVzIiwic3dpdGNoVG9XaW5kb3ciLCJsZW5ndGgiLCJnZXRUaXRsZSIsImdldFVybCIsIndpbmRvd0hhbmRsZXMiLCJpbmRleE9mIiwicGF0dGVybiIsInN1YnN0cmluZyIsInN0YXJ0IiwiRGF0ZSIsImdldFRpbWUiLCJ3YWl0Rm9yVGltZW91dCIsImkiLCJoYW5kbGUiLCJ0aXRsZSIsImhlbHBlcnMiLCJtYXRjaFBhdHRlcm4iLCJwYXVzZSIsIk94RXJyb3IiLCJlcnJIZWxwZXIiLCJlcnJvckNvZGUiLCJXSU5ET1dfTk9UX0ZPVU5EIiwidXJsIiwibWVzc2FnZSJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQUEsTUFBTSxDQUFDQyxPQUFQLEdBQWlCLGdCQUFlQyxhQUFmLEVBQThCQyxPQUE5QixFQUF1QztBQUNwRCxNQUFJQyxhQUFKO0FBQ0EsTUFBSUMsa0JBQUo7QUFDQSxNQUFJQyxnQkFBSjtBQUNBLE1BQUlDLDRCQUE0QixHQUFHLDhDQUFuQyxDQUpvRCxDQU1wRDtBQUNBOztBQUNBLE1BQUk7QUFDQUgsSUFBQUEsYUFB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LEVBQVk7QUFDVixVQUFJSixnQkFBSixFQUFzQjtBQUNsQkMsUUFBQUEsNEJBQTRCLElBQUssS0FBSUQsZ0JBQWlCLEVBQXREO0FBQ0g7O0FBQ0QsWUFBTSxJQUFJLEtBQUt5QixPQUFULENBQWlCLEtBQUtDLFNBQUwsQ0FBZUMsU0FBZixDQUF5QkMsZ0JBQTFDLEVBQTREM0IsNEJBQTVELENBQU47QUFDSDs7QUFDRCxVQUFNLElBQUksS0FBS3dCLE9BQVQsQ0FBaUIsS0FBS0MsU0FBTCxDQUFlQyxTQUFmLENBQXlCQyxnQkFBMUMsRUFBNkQsMEJBQXlCaEMsYUFBYyxFQUFwRyxDQUFOO0FBQ0gsR0EvQk0sTUErQkE7QUFDSCxRQUFJO0FBQ0EsWUFBTSxLQUFLTSxNQUFMLENBQVlLLGNBQVosQ0FBMkJYLGFBQTNCLENBQU47QUFDSCxLQUZELENBRUUsT0FBT1EsR0FBUCxFQUFZO0FBQ1YsWUFBTSxJQUFJLEtBQUtxQixPQUFULENBQWlCLEtBQUtDLFNBQUwsQ0FBZUMsU0FBZixDQUF5QkMsZ0JBQTFDLEVBQTREeEIsR0FBRyxDQUFDMEIsT0FBaEUsQ0FBTjtBQUNIO0FBQ0o7O0FBRUQsU0FBT2hDLGFBQVA7QUFDSCxDQWxHRCIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIENvcHlyaWdodCAoQykgMjAxNS1wcmVzZW50IENsb3VkQmVhdCBMaW1pdGVkXHJcbiAqXHJcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XHJcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XHJcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXHJcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEBzdW1tYXJ5IFNlbGVjdHMgd2luZG93LiBPbmNlIHdpbmRvdyBoYXMgYmVlbiBzZWxlY3RlZCwgYWxsIGNvbW1hbmRzIGdvIHRvIHRoYXQgd2luZG93LlxyXG4gKiBAZGVzY3JpcHRpb24gYHdpbmRvd0xvY2F0b3JgIGNhbiBiZTogIFxyXG4gKiAtIGB0aXRsZT1USVRMRWAgU3dpdGNoIHRvIHRoZSBmaXJzdCB3aW5kb3cgd2hpY2ggbWF0Y2hlcyB0aGUgc3BlY2lmaWVkIHRpdGxlLiBgVElUTEVgIGNhbiBiZSBhbnkgb2ZcclxuICogdGhlIHN1cHBvcnRlZCBzdHJpbmcgbWF0Y2hpbmcgcGF0dGVybnMgKHNlZSB0b3Agb2YgdGhlIHBhZ2UpLiBXaGVuIHVzaW5nIHRpdGxlIGxvY2F0b3IsIHRoaXMgY29tbWFuZFxyXG4gKiB3aWxsIHdhaXQgZm9yIHRoZSB3aW5kb3cgdG8gYXBwZWFyIGZpcnN0IHNpbWlsYXJseSB0byBgd2FpdEZvcldpbmRvd2AgY29tbWFuZC4gIFxyXG4gKiAtIGB1cmw9VVJMYCBTd2l0Y2ggdG8gdGhlIGZpcnN0IHdpbmRvdyB3aGljaCBtYXRjaGVzIHRoZSBzcGVjaWZpZWQgVVJMLiBgVVJMYCBjYW4gYmUgYW55IG9mXHJcbiAqIHRoZSBzdXBwb3J0ZWQgc3RyaW5nIG1hdGNoaW5nIHBhdHRlcm5zIChzZWUgdG9wIG9mIHRoZSBwYWdlKS4gV2hlbiB1c2luZyB1cmwgbG9jYXRvciwgdGhpcyBjb21tYW5kXHJcbiAqIHdpbGwgd2FpdCBmb3IgdGhlIHdpbmRvdyB0byBhcHBlYXIgZmlyc3Qgc2ltaWxhcmx5IHRvIGB3YWl0Rm9yV2luZG93YCBjb21tYW5kLiAgXHJcbiAqIC0gYHdpbmRvd0hhbmRsZWAgU3dpdGNoIHRvIGEgd2luZG93IHVzaW5nIGl0cyB1bmlxdWUgaGFuZGxlLiAgXHJcbiAqIC0gYHVuc3BlY2lmaWVkYCBfKipkZXByZWNhdGVkKipfIFN3aXRjaCB0byB0aGUgbGFzdCBvcGVuZWQgd2luZG93LlxyXG4gKiBAZnVuY3Rpb24gc2VsZWN0V2luZG93XHJcbiAqIEBwYXJhbSB7U3RyaW5nPX0gd2luZG93TG9jYXRvciAtIFdpbmRvdyBsb2NhdG9yLlxyXG4gKiBAcGFyYW0ge051bWJlcj19IHRpbWVvdXQgLSBUaW1lb3V0IGluIG1pbGxpc2Vjb25kcyB3aGVuIHVzaW5nICd0aXRsZScgd2luZG93IGxvY2F0aW5nIHN0cmF0ZWd5LiBcclxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlZmF1bHQgaXMgNjAgc2Vjb25kcy5cclxuICogQHJldHVybiB7U3RyaW5nfSB3aW5kb3dIYW5kbGUgb2YgdGhlIHByZXZpb3VzbHkgc2VsZWN0ZWQgd2luZG93LlxyXG4gKiBAZm9yIHdlYlxyXG4gKiBAZXhhbXBsZSA8Y2FwdGlvbj5bamF2YXNjcmlwdF0gVXNhZ2UgZXhhbXBsZTwvY2FwdGlvbj5cclxuICogbW9iLmluaXQoKTsvLyBTdGFydHMgYSBtb2JpbGUgc2Vzc2lvbi5cclxuICogbW9iLm9wZW4oXCJ3d3cueW91cndlYnNpdGUuY29tXCIpOy8vIE9wZW5zIGEgd2Vic2l0ZS5cclxuICogbW9iLnNlbGVjdFdpbmRvdyhcInRpdGxlPVdlYnNpdGVcIik7Ly8gU2VsZWN0cyBhbmQgZm9jdXMgYSB3aW5kb3cuIFxyXG4gKi9cclxubW9kdWxlLmV4cG9ydHMgPSBhc3luYyBmdW5jdGlvbih3aW5kb3dMb2NhdG9yLCB0aW1lb3V0KSB7XHJcbiAgICB2YXIgY3VycmVudEhhbmRsZTtcclxuICAgIHZhciBjdXJyZW50SGFuZGxlVGl0bGU7XHJcbiAgICB2YXIgY3VycmVudEhhbmRsZVVybDtcclxuICAgIHZhciBzd2l0aFRvQ3VycmVudEhhbmRsZUVycm9yTXNnID0gJ1VuYWJsZSB0byBzd2l0Y2ggdG8gcHJldmlvdXMgc2VsZWN0ZWQgd2luZG93JztcclxuXHJcbiAgICAvLyBnZXRXaW5kb3dIYW5kbGUoKSBjb3VsZCBwb3NzaWJseSBmYWlsIGlmIHRoZXJlIGlzIG5vIGFjdGl2ZSB3aW5kb3csXHJcbiAgICAvLyBzbyB3ZSBzZWxlY3QgdGhlIGxhc3Qgb3BlbmVkIG9uZSBpbiBzdWNoIGNhc2VcclxuICAgIHRyeSB7XHJcbiAgICAgICAgY3VycmVudEhhbmRsZSA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldFdpbmRvd0hhbmRsZSgpO1xyXG4gICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgdmFyIHduZHMgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGVzKCk7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3cod25kc1t3bmRzLmxlbmd0aCAtIDFdKTtcclxuICAgICAgICBjdXJyZW50SGFuZGxlID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0V2luZG93SGFuZGxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGN1cnJlbnRIYW5kbGUpIHtcclxuICAgICAgICBjdXJyZW50SGFuZGxlVGl0bGUgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRUaXRsZSgpO1xyXG4gICAgICAgIGN1cnJlbnRIYW5kbGVVcmwgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRVcmwoKTtcclxuICAgIH1cclxuXHJcbiAgICB2YXIgd2luZG93SGFuZGxlcztcclxuICAgIGlmICghd2luZG93TG9jYXRvcikge1xyXG4gICAgICAgIHdpbmRvd0hhbmRsZXMgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGVzKCk7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3cod2luZG93SGFuZGxlc1t3aW5kb3dIYW5kbGVzLmxlbmd0aCAtIDFdKTtcclxuICAgIH0gZWxzZSBpZiAod2luZG93TG9jYXRvci5pbmRleE9mKCd0aXRsZT0nKSA9PT0gMCkge1xyXG4gICAgICAgIGxldCBwYXR0ZXJuID0gd2luZG93TG9jYXRvci5zdWJzdHJpbmcoJ3RpdGxlPScubGVuZ3RoKTtcclxuICAgICAgICBsZXQgc3RhcnQgPSAobmV3IERhdGUoKSkuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRpbWVvdXQgPSAhdGltZW91dCA/IHRoaXMud2FpdEZvclRpbWVvdXQgOiB0aW1lb3V0O1xyXG4gICAgICAgIHdoaWxlICgobmV3IERhdGUoKSkuZ2V0VGltZSgpIC0gc3RhcnQgPCB0aW1lb3V0KSB7XHJcbiAgICAgICAgICAgIHdpbmRvd0hhbmRsZXMgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGVzKCk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgd2luZG93SGFuZGxlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICAgICAgbGV0IGhhbmRsZSA9IHdpbmRvd0hhbmRsZXNbaV07XHJcbiAgICAgICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KGhhbmRsZSk7XHJcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsgLy8gaW4gY2FzZSB3aW5kb3cgd2FzIGNsb3NlZFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgbGV0IHRpdGxlID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0VGl0bGUoKTtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhlbHBlcnMubWF0Y2hQYXR0ZXJuKHRpdGxlLCBwYXR0ZXJuKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjdXJyZW50SGFuZGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMucGF1c2UoMTAwMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAvLyBpZiB3aW5kb3cgbm90IGZvdW5kIC0gc3dpdGNoIHRvIG9yaWdpbmFsIG9uZSBhbmQgdGhyb3dcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3coY3VycmVudEhhbmRsZSk7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7IC8vIGluIGNhc2Ugd2luZG93IHdhcyBjbG9zZWRcclxuXHJcbiAgICAgICAgICAgIGlmIChjdXJyZW50SGFuZGxlVGl0bGUpIHtcclxuICAgICAgICAgICAgICAgIHN3aXRoVG9DdXJyZW50SGFuZGxlRXJyb3JNc2cgKz0gYDogJHtjdXJyZW50SGFuZGxlVGl0bGV9YDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhyb3cgbmV3IHRoaXMuT3hFcnJvcih0aGlzLmVyckhlbHBlci5lcnJvckNvZGUuV0lORE9XX05PVF9GT1VORCwgc3dpdGhUb0N1cnJlbnRIYW5kbGVFcnJvck1zZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRocm93IG5ldyB0aGlzLk94RXJyb3IodGhpcy5lcnJIZWxwZXIuZXJyb3JDb2RlLldJTkRPV19OT1RfRk9VTkQsIGBVbmFibGUgdG8gZmluZCB3aW5kb3c6ICR7d2luZG93TG9jYXRvcn1gKTtcclxuICAgIH0gZWxzZSBpZiAod2luZG93TG9jYXRvci5pbmRleE9mKCd1cmw9JykgPT09IDApIHtcclxuICAgICAgICBsZXQgcGF0dGVybiA9IHdpbmRvd0xvY2F0b3Iuc3Vic3RyaW5nKCd1cmw9Jy5sZW5ndGgpO1xyXG4gICAgICAgIGxldCBzdGFydCA9IChuZXcgRGF0ZSgpKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgdGltZW91dCA9ICF0aW1lb3V0ID8gdGhpcy53YWl0Rm9yVGltZW91dCA6IHRpbWVvdXQ7XHJcbiAgICAgICAgd2hpbGUgKChuZXcgRGF0ZSgpKS5nZXRUaW1lKCkgLSBzdGFydCA8IHRpbWVvdXQpIHtcclxuICAgICAgICAgICAgd2luZG93SGFuZGxlcyA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldFdpbmRvd0hhbmRsZXMoKTtcclxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB3aW5kb3dIYW5kbGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgaGFuZGxlID0gd2luZG93SGFuZGxlc1tpXTtcclxuICAgICAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3coaGFuZGxlKTtcclxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyAvLyBpbiBjYXNlIHdpbmRvdyB3YXMgY2xvc2VkXHJcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsZXQgdXJsID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0VXJsKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5oZWxwZXJzLm1hdGNoUGF0dGVybih1cmwsIHBhdHRlcm4pKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGN1cnJlbnRIYW5kbGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5wYXVzZSgxMDAwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIC8vIGlmIHdpbmRvdyBub3QgZm91bmQgLSBzd2l0Y2ggdG8gb3JpZ2luYWwgb25lIGFuZCB0aHJvd1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLmRyaXZlci5zd2l0Y2hUb1dpbmRvdyhjdXJyZW50SGFuZGxlKTtcclxuICAgICAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgICAgICAgaWYgKGN1cnJlbnRIYW5kbGVVcmwpIHtcclxuICAgICAgICAgICAgICAgIHN3aXRoVG9DdXJyZW50SGFuZGxlRXJyb3JNc2cgKz0gYDogJHtjdXJyZW50SGFuZGxlVXJsfWA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhyb3cgbmV3IHRoaXMuT3hFcnJvcih0aGlzLmVyckhlbHBlci5lcnJvckNvZGUuV0lORE9XX05PVF9GT1VORCwgc3dpdGhUb0N1cnJlbnRIYW5kbGVFcnJvck1zZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRocm93IG5ldyB0aGlzLk94RXJyb3IodGhpcy5lcnJIZWxwZXIuZXJyb3JDb2RlLldJTkRPV19OT1RfRk9VTkQsIGBVbmFibGUgdG8gZmluZCB3aW5kb3c6ICR7d2luZG93TG9jYXRvcn1gKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3cod2luZG93TG9jYXRvcik7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyB0aGlzLk94RXJyb3IodGhpcy5lcnJIZWxwZXIuZXJyb3JDb2RlLldJTkRPV19OT1RfRk9VTkQsIGVyci5tZXNzYWdlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGN1cnJlbnRIYW5kbGU7XHJcbn07Il19
149
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9veF9tb2R1bGVzL21vZHVsZS1tb2IvY29tbWFuZHMvc2VsZWN0V2luZG93LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJ3aW5kb3dMb2NhdG9yIiwidGltZW91dCIsImhlbHBlcnMiLCJhc3NlcnRBcmd1bWVudCIsImN1cnJlbnRIYW5kbGUiLCJjdXJyZW50SGFuZGxlVGl0bGUiLCJjdXJyZW50SGFuZGxlVXJsIiwic3dpdGhUb0N1cnJlbnRIYW5kbGVFcnJvck1zZyIsImRyaXZlciIsImdldFdpbmRvd0hhbmRsZSIsImVyciIsInduZHMiLCJnZXRXaW5kb3dIYW5kbGVzIiwic3dpdGNoVG9XaW5kb3ciLCJsZW5ndGgiLCJnZXRUaXRsZSIsImdldFVybCIsIndpbmRvd0hhbmRsZXMiLCJpbmRleE9mIiwicGF0dGVybiIsInN1YnN0cmluZyIsInN0YXJ0IiwiRGF0ZSIsImdldFRpbWUiLCJ3YWl0Rm9yVGltZW91dCIsImkiLCJoYW5kbGUiLCJ0aXRsZSIsIm1hdGNoUGF0dGVybiIsInBhdXNlIiwiT3hFcnJvciIsImVyckhlbHBlciIsImVycm9yQ29kZSIsIldJTkRPV19OT1RfRk9VTkQiLCJ1cmwiLCJtZXNzYWdlIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQUEsTUFBTSxDQUFDQyxPQUFQLEdBQWlCLGdCQUFlQyxhQUFmLEVBQThCQyxPQUE5QixFQUF1QztBQUNwRCxPQUFLQyxPQUFMLENBQWFDLGNBQWIsQ0FBNEJILGFBQTVCLEVBQTJDLGVBQTNDO0FBQ0EsTUFBSUksYUFBSjtBQUNBLE1BQUlDLGtCQUFKO0FBQ0EsTUFBSUMsZ0JBQUo7QUFDQSxNQUFJ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S0MsU0FBTCxDQUFlQyxTQUFmLENBQXlCQyxnQkFBMUMsRUFBNEQxQiw0QkFBNUQsQ0FBTjtBQUNIOztBQUNELFVBQU0sSUFBSSxLQUFLdUIsT0FBVCxDQUFpQixLQUFLQyxTQUFMLENBQWVDLFNBQWYsQ0FBeUJDLGdCQUExQyxFQUE2RCwwQkFBeUJqQyxhQUFjLEVBQXBHLENBQU47QUFDSCxHQS9CTSxNQStCQTtBQUNILFFBQUk7QUFDQSxZQUFNLEtBQUtRLE1BQUwsQ0FBWUssY0FBWixDQUEyQmIsYUFBM0IsQ0FBTjtBQUNILEtBRkQsQ0FFRSxPQUFPVSxHQUFQLEVBQVk7QUFDVixZQUFNLElBQUksS0FBS29CLE9BQVQsQ0FBaUIsS0FBS0MsU0FBTCxDQUFlQyxTQUFmLENBQXlCQyxnQkFBMUMsRUFBNER2QixHQUFHLENBQUN5QixPQUFoRSxDQUFOO0FBQ0g7QUFDSjs7QUFFRCxTQUFPL0IsYUFBUDtBQUNILENBaEdEIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQ29weXJpZ2h0IChDKSAyMDE1LXByZXNlbnQgQ2xvdWRCZWF0IExpbWl0ZWRcclxuICpcclxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcclxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcclxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cclxuICovXHJcblxyXG4vKipcclxuICogQHN1bW1hcnkgU2VsZWN0cyB3aW5kb3cuIE9uY2Ugd2luZG93IGhhcyBiZWVuIHNlbGVjdGVkLCBhbGwgY29tbWFuZHMgZ28gdG8gdGhhdCB3aW5kb3cuXHJcbiAqIEBkZXNjcmlwdGlvbiBgd2luZG93TG9jYXRvcmAgY2FuIGJlOiAgXHJcbiAqIC0gYHRpdGxlPVRJVExFYCBTd2l0Y2ggdG8gdGhlIGZpcnN0IHdpbmRvdyB3aGljaCBtYXRjaGVzIHRoZSBzcGVjaWZpZWQgdGl0bGUuIGBUSVRMRWAgY2FuIGJlIGFueSBvZlxyXG4gKiB0aGUgc3VwcG9ydGVkIHN0cmluZyBtYXRjaGluZyBwYXR0ZXJucyAoc2VlIHRvcCBvZiB0aGUgcGFnZSkuIFdoZW4gdXNpbmcgdGl0bGUgbG9jYXRvciwgdGhpcyBjb21tYW5kXHJcbiAqIHdpbGwgd2FpdCBmb3IgdGhlIHdpbmRvdyB0byBhcHBlYXIgZmlyc3Qgc2ltaWxhcmx5IHRvIGB3YWl0Rm9yV2luZG93YCBjb21tYW5kLiAgXHJcbiAqIC0gYHVybD1VUkxgIFN3aXRjaCB0byB0aGUgZmlyc3Qgd2luZG93IHdoaWNoIG1hdGNoZXMgdGhlIHNwZWNpZmllZCBVUkwuIGBVUkxgIGNhbiBiZSBhbnkgb2ZcclxuICogdGhlIHN1cHBvcnRlZCBzdHJpbmcgbWF0Y2hpbmcgcGF0dGVybnMgKHNlZSB0b3Agb2YgdGhlIHBhZ2UpLiBXaGVuIHVzaW5nIHVybCBsb2NhdG9yLCB0aGlzIGNvbW1hbmRcclxuICogd2lsbCB3YWl0IGZvciB0aGUgd2luZG93IHRvIGFwcGVhciBmaXJzdCBzaW1pbGFybHkgdG8gYHdhaXRGb3JXaW5kb3dgIGNvbW1hbmQuICBcclxuICogLSBgd2luZG93SGFuZGxlYCBTd2l0Y2ggdG8gYSB3aW5kb3cgdXNpbmcgaXRzIHVuaXF1ZSBoYW5kbGUuXHJcbiAqIEBmdW5jdGlvbiBzZWxlY3RXaW5kb3dcclxuICogQHBhcmFtIHtTdHJpbmc9fSB3aW5kb3dMb2NhdG9yIC0gV2luZG93IGxvY2F0b3IuXHJcbiAqIEBwYXJhbSB7TnVtYmVyPX0gdGltZW91dCAtIFRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzIHdoZW4gdXNpbmcgJ3RpdGxlJyB3aW5kb3cgbG9jYXRpbmcgc3RyYXRlZ3kuIFxyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdCBpcyA2MCBzZWNvbmRzLlxyXG4gKiBAcmV0dXJuIHtTdHJpbmd9IHdpbmRvd0hhbmRsZSBvZiB0aGUgcHJldmlvdXNseSBzZWxlY3RlZCB3aW5kb3cuXHJcbiAqIEBmb3Igd2ViXHJcbiAqIEBleGFtcGxlIDxjYXB0aW9uPltqYXZhc2NyaXB0XSBVc2FnZSBleGFtcGxlPC9jYXB0aW9uPlxyXG4gKiBtb2IuaW5pdCgpOy8vIFN0YXJ0cyBhIG1vYmlsZSBzZXNzaW9uLlxyXG4gKiBtb2Iub3BlbihcInd3dy55b3Vyd2Vic2l0ZS5jb21cIik7Ly8gT3BlbnMgYSB3ZWJzaXRlLlxyXG4gKiBtb2Iuc2VsZWN0V2luZG93KFwidGl0bGU9V2Vic2l0ZVwiKTsvLyBTZWxlY3RzIGFuZCBmb2N1cyBhIHdpbmRvdy4gXHJcbiAqL1xyXG5tb2R1bGUuZXhwb3J0cyA9IGFzeW5jIGZ1bmN0aW9uKHdpbmRvd0xvY2F0b3IsIHRpbWVvdXQpIHtcclxuICAgIHRoaXMuaGVscGVycy5hc3NlcnRBcmd1bWVudCh3aW5kb3dMb2NhdG9yLCAnd2luZG93TG9jYXRvcicpO1xyXG4gICAgdmFyIGN1cnJlbnRIYW5kbGU7XHJcbiAgICB2YXIgY3VycmVudEhhbmRsZVRpdGxlO1xyXG4gICAgdmFyIGN1cnJlbnRIYW5kbGVVcmw7XHJcbiAgICB2YXIgc3dpdGhUb0N1cnJlbnRIYW5kbGVFcnJvck1zZyA9ICdVbmFibGUgdG8gc3dpdGNoIHRvIHByZXZpb3VzIHNlbGVjdGVkIHdpbmRvdyc7XHJcblxyXG4gICAgLy8gZ2V0V2luZG93SGFuZGxlKCkgY291bGQgcG9zc2libHkgZmFpbCBpZiB0aGVyZSBpcyBubyBhY3RpdmUgd2luZG93LFxyXG4gICAgLy8gc28gd2Ugc2VsZWN0IHRoZSBsYXN0IG9wZW5lZCBvbmUgaW4gc3VjaCBjYXNlXHJcbiAgICB0cnkge1xyXG4gICAgICAgIGN1cnJlbnRIYW5kbGUgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGUoKTtcclxuICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICAgIHZhciB3bmRzID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0V2luZG93SGFuZGxlcygpO1xyXG4gICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KHduZHNbd25kcy5sZW5ndGggLSAxXSk7XHJcbiAgICAgICAgY3VycmVudEhhbmRsZSA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldFdpbmRvd0hhbmRsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjdXJyZW50SGFuZGxlKSB7XHJcbiAgICAgICAgY3VycmVudEhhbmRsZVRpdGxlID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0VGl0bGUoKTtcclxuICAgICAgICBjdXJyZW50SGFuZGxlVXJsID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0VXJsKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdmFyIHdpbmRvd0hhbmRsZXM7XHJcbiAgICBpZiAod2luZG93TG9jYXRvci5pbmRleE9mKCd0aXRsZT0nKSA9PT0gMCkge1xyXG4gICAgICAgIGxldCBwYXR0ZXJuID0gd2luZG93TG9jYXRvci5zdWJzdHJpbmcoJ3RpdGxlPScubGVuZ3RoKTtcclxuICAgICAgICBsZXQgc3RhcnQgPSAobmV3IERhdGUoKSkuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRpbWVvdXQgPSAhdGltZW91dCA/IHRoaXMud2FpdEZvclRpbWVvdXQgOiB0aW1lb3V0O1xyXG4gICAgICAgIHdoaWxlICgobmV3IERhdGUoKSkuZ2V0VGltZSgpIC0gc3RhcnQgPCB0aW1lb3V0KSB7XHJcbiAgICAgICAgICAgIHdpbmRvd0hhbmRsZXMgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGVzKCk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgd2luZG93SGFuZGxlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICAgICAgbGV0IGhhbmRsZSA9IHdpbmRvd0hhbmRsZXNbaV07XHJcbiAgICAgICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KGhhbmRsZSk7XHJcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsgLy8gaW4gY2FzZSB3aW5kb3cgd2FzIGNsb3NlZFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgbGV0IHRpdGxlID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0VGl0bGUoKTtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhlbHBlcnMubWF0Y2hQYXR0ZXJuKHRpdGxlLCBwYXR0ZXJuKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjdXJyZW50SGFuZGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMucGF1c2UoMTAwMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAvLyBpZiB3aW5kb3cgbm90IGZvdW5kIC0gc3dpdGNoIHRvIG9yaWdpbmFsIG9uZSBhbmQgdGhyb3dcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3coY3VycmVudEhhbmRsZSk7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7IC8vIGluIGNhc2Ugd2luZG93IHdhcyBjbG9zZWRcclxuXHJcbiAgICAgICAgICAgIGlmIChjdXJyZW50SGFuZGxlVGl0bGUpIHtcclxuICAgICAgICAgICAgICAgIHN3aXRoVG9DdXJyZW50SGFuZGxlRXJyb3JNc2cgKz0gYDogJHtjdXJyZW50SGFuZGxlVGl0bGV9YDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhyb3cgbmV3IHRoaXMuT3hFcnJvcih0aGlzLmVyckhlbHBlci5lcnJvckNvZGUuV0lORE9XX05PVF9GT1VORCwgc3dpdGhUb0N1cnJlbnRIYW5kbGVFcnJvck1zZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRocm93IG5ldyB0aGlzLk94RXJyb3IodGhpcy5lcnJIZWxwZXIuZXJyb3JDb2RlLldJTkRPV19OT1RfRk9VTkQsIGBVbmFibGUgdG8gZmluZCB3aW5kb3c6ICR7d2luZG93TG9jYXRvcn1gKTtcclxuICAgIH0gZWxzZSBpZiAod2luZG93TG9jYXRvci5pbmRleE9mKCd1cmw9JykgPT09IDApIHtcclxuICAgICAgICBsZXQgcGF0dGVybiA9IHdpbmRvd0xvY2F0b3Iuc3Vic3RyaW5nKCd1cmw9Jy5sZW5ndGgpO1xyXG4gICAgICAgIGxldCBzdGFydCA9IChuZXcgRGF0ZSgpKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgdGltZW91dCA9ICF0aW1lb3V0ID8gdGhpcy53YWl0Rm9yVGltZW91dCA6IHRpbWVvdXQ7XHJcbiAgICAgICAgd2hpbGUgKChuZXcgRGF0ZSgpKS5nZXRUaW1lKCkgLSBzdGFydCA8IHRpbWVvdXQpIHtcclxuICAgICAgICAgICAgd2luZG93SGFuZGxlcyA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldFdpbmRvd0hhbmRsZXMoKTtcclxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB3aW5kb3dIYW5kbGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgaGFuZGxlID0gd2luZG93SGFuZGxlc1tpXTtcclxuICAgICAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3coaGFuZGxlKTtcclxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyAvLyBpbiBjYXNlIHdpbmRvdyB3YXMgY2xvc2VkXHJcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsZXQgdXJsID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0VXJsKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5oZWxwZXJzLm1hdGNoUGF0dGVybih1cmwsIHBhdHRlcm4pKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGN1cnJlbnRIYW5kbGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5wYXVzZSgxMDAwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIC8vIGlmIHdpbmRvdyBub3QgZm91bmQgLSBzd2l0Y2ggdG8gb3JpZ2luYWwgb25lIGFuZCB0aHJvd1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLmRyaXZlci5zd2l0Y2hUb1dpbmRvdyhjdXJyZW50SGFuZGxlKTtcclxuICAgICAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgICAgICAgaWYgKGN1cnJlbnRIYW5kbGVVcmwpIHtcclxuICAgICAgICAgICAgICAgIHN3aXRoVG9DdXJyZW50SGFuZGxlRXJyb3JNc2cgKz0gYDogJHtjdXJyZW50SGFuZGxlVXJsfWA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhyb3cgbmV3IHRoaXMuT3hFcnJvcih0aGlzLmVyckhlbHBlci5lcnJvckNvZGUuV0lORE9XX05PVF9GT1VORCwgc3dpdGhUb0N1cnJlbnRIYW5kbGVFcnJvck1zZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRocm93IG5ldyB0aGlzLk94RXJyb3IodGhpcy5lcnJIZWxwZXIuZXJyb3JDb2RlLldJTkRPV19OT1RfRk9VTkQsIGBVbmFibGUgdG8gZmluZCB3aW5kb3c6ICR7d2luZG93TG9jYXRvcn1gKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3cod2luZG93TG9jYXRvcik7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyB0aGlzLk94RXJyb3IodGhpcy5lcnJIZWxwZXIuZXJyb3JDb2RlLldJTkRPV19OT1RfRk9VTkQsIGVyci5tZXNzYWdlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGN1cnJlbnRIYW5kbGU7XHJcbn07Il19
@@ -30,7 +30,7 @@ require("source-map-support/register");
30
30
  var checkUnicode = require('webdriverio/build/utils').checkUnicode;
31
31
 
32
32
  module.exports = async function (value) {
33
- this.helpers.assertArgument(value);
33
+ this.helpers.assertArgument(value, 'value');
34
34
  let keySequence = []; // WDIO implmentation of keys command invokes 'releaseActions' for W3C.
35
35
  // However ' DELETE /wd/hub/session/*/actions' is not implmeneted at the very least in uiatomator2
36
36
  // and `keys` crashes.
@@ -81,4 +81,4 @@ module.exports = async function (value) {
81
81
  actions: [...keyDownActions, ...keyUpActions]
82
82
  }]);
83
83
  };
84
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9veF9tb2R1bGVzL21vZHVsZS1tb2IvY29tbWFuZHMvc2VuZEtleXMuanMiXSwibmFtZXMiOlsiY2hlY2tVbmljb2RlIiwicmVxdWlyZSIsIm1vZHVsZSIsImV4cG9ydHMiLCJ2YWx1ZSIsImhlbHBlcnMiLCJhc3NlcnRBcmd1bWVudCIsImtleVNlcXVlbmNlIiwiQXJyYXkiLCJpc0FycmF5IiwiY2hhclNldCIsImNvbmNhdCIsIkVycm9yIiwiZHJpdmVyIiwiaXNXM0MiLCJzZW5kS2V5cyIsImtleURvd25BY3Rpb25zIiwibWFwIiwidHlwZSIsImtleVVwQWN0aW9ucyIsInBlcmZvcm1BY3Rpb25zIiwiaWQiLCJhY3Rpb25zIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUlBLFlBQVksR0FBR0MsT0FBTyxDQUFDLHlCQUFELENBQVAsQ0FBbUNELFlBQXREOztBQUVBRSxNQUFNLENBQUNDLE9BQVAsR0FBaUIsZ0JBQWVDLEtBQWYsRUFBc0I7QUFDbkMsT0FBS0MsT0FBTCxDQUFhQyxjQUFiLENBQTRCRixLQUE1QjtBQUVBLE1BQUlHLFdBQVcsR0FBRyxFQUFsQixDQUhtQyxDQUtuQztBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNKO0FBQ0E7O0FBQ0ksTUFBSSxPQUFPSCxLQUFQLEtBQWlCLFFBQXJCLEVBQStCO0FBQzNCRyxJQUFBQSxXQUFXLEdBQUdQLFlBQVksQ0FBQ0ksS0FBRCxDQUExQjtBQUNILEdBRkQsTUFFTyxJQUFJSSxLQUFLLENBQUNDLE9BQU4sQ0FBY0wsS0FBZCxDQUFKLEVBQTBCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBSyxNQUFNTSxPQUFYLElBQXNCTixLQUF0QixFQUE2QjtBQUN6QkcsTUFBQUEsV0FBVyxHQUFHQSxXQUFXLENBQUNJLE1BQVosQ0FBbUJYLFlBQVksQ0FBQ1UsT0FBRCxDQUEvQixDQUFkO0FBQ0g7QUFDSixHQVJNLE1BUUE7QUFDSCxVQUFNLElBQUlFLEtBQUosQ0FBVSxtRUFBVixDQUFOO0FBQ0g7QUFFRDtBQUNKO0FBQ0E7OztBQUNJLE1BQUksQ0FBQyxLQUFLQyxNQUFMLENBQVlDLEtBQWpCLEVBQXdCO0FBQ3BCLFVBQU0sS0FBS0QsTUFBTCxDQUFZRSxRQUFaLENBQXFCUixXQUFyQixDQUFOO0FBQ0E7QUFDSDtBQUVEO0FBQ0o7QUFDQTs7O0FBQ0ksUUFBTVMsY0FBYyxHQUFHVCxXQUFXLENBQUNVLEdBQVosQ0FBaUJiLEtBQUQsS0FBWTtBQUFFYyxJQUFBQSxJQUFJLEVBQUUsU0FBUjtBQUFtQmQsSUFBQUE7QUFBbkIsR0FBWixDQUFoQixDQUF2QjtBQUNBLFFBQU1lLFlBQVksR0FBR1osV0FBVyxDQUFDVSxHQUFaLENBQWlCYixLQUFELEtBQVk7QUFBRWMsSUFBQUEsSUFBSSxFQUFFLE9BQVI7QUFBaUJkLElBQUFBO0FBQWpCLEdBQVosQ0FBaEIsQ0FBckI7QUFFQSxRQUFNLEtBQUtTLE1BQUwsQ0FBWU8sY0FBWixDQUEyQixDQUFDO0FBQzlCRixJQUFBQSxJQUFJLEVBQUUsS0FEd0I7QUFFOUJHLElBQUFBLEVBQUUsRUFBRSxVQUYwQjtBQUc5QkMsSUFBQUEsT0FBTyxFQUFFLENBQUMsR0FBR04sY0FBSixFQUFvQixHQUFHRyxZQUF2QjtBQUhxQixHQUFELENBQTNCLENBQU47QUFLSCxDQTlDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIENvcHlyaWdodCAoQykgMjAxNS1wcmVzZW50IENsb3VkQmVhdCBMaW1pdGVkXHJcbiAqXHJcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XHJcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XHJcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXHJcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEBzdW1tYXJ5IFNlbmQgYSBzZXF1ZW5jZSBvZiBrZXlib2FyZCBzdHJva2VzIHRvIHRoZSBhY3RpdmUgd2luZG93IG9yIGVsZW1lbnQuXHJcbiAqIEBkZXNjcmlwdGlvbiBSZWZlciB0byBbS2V5IENvZGVzXShodHRwczovL3czYy5naXRodWIuaW8vd2ViZHJpdmVyLyNrZXlib2FyZC1hY3Rpb25zKVxyXG4gKiAgICAgICAgICAgICAgZm9yIHRoZSBsaXN0IG9mIHN1cHBvcnRlZCByYXcga2V5Ym9hcmQga2V5IGNvZGVzLlxyXG4gKiBAZnVuY3Rpb24gc2VuZEtleXNcclxuICogQHBhcmFtIHsoU3RyaW5nfFN0cmluZ1tdKX0gdmFsdWUgLSBTZXF1ZW5jZSBvZiBrZXkgc3Ryb2tlcyB0byBzZW5kLiBDYW4gYmUgZWl0aGVyIGEgc3RyaW5nIG9yIGFuIFxyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheSBvZiBzdHJpbmdzIGZvciBzZW5kaW5nIHJhdyBrZXkgY29kZXMuXHJcbiAqIEBmb3IgYW5kcm9pZCwgaW9zLCBoeWJyaWQsIHdlYlxyXG4gKiBAZXhhbXBsZSA8Y2FwdGlvbj5bamF2YXNjcmlwdF0gVXNhZ2UgZXhhbXBsZTwvY2FwdGlvbj5cclxuICogbW9iLmluaXQoKTsvL09wZW5zIGJyb3dzZXIgc2Vzc2lvbi5cclxuICogbW9iLm9wZW4oXCJ3d3cueW91cndlYnNpdGUuY29tXCIpOy8vIE9wZW5zIGEgd2Vic2l0ZS5cclxuICogbW9iLnNlbmRLZXlzKFwiSGVsbG8gV29ybGRcIik7XHJcbiAqIG1vYi5zZW5kS2V5cyhbXCJCYWNrc3BhY2VcIiwgXCJCYWNrc3BhY2VcIiwgXCJFbnRlclwiXSk7IC8vIHNlbmQgdHdvIEJhY2tzcGFjZSBrZXkgY29kZXMgYW5kIEVudGVyLlxyXG4gKiAvLyBVbmljb2RlIHJlcHJlc2VudGF0aW9uIGNhbiBiZSB1c2VkIGRpcmVjdGx5IGFzIHdlbGw6XHJcbiAqIG1vYi5zZW5kS2V5cyhcIkhlbGxvIFdvcmxkXFx1RTAwM1xcdUUwMDNcXHVFMDA3XCIpO1xyXG4qL1xyXG52YXIgY2hlY2tVbmljb2RlID0gcmVxdWlyZSgnd2ViZHJpdmVyaW8vYnVpbGQvdXRpbHMnKS5jaGVja1VuaWNvZGU7XHJcblxyXG5tb2R1bGUuZXhwb3J0cyA9IGFzeW5jIGZ1bmN0aW9uKHZhbHVlKSB7XHJcbiAgICB0aGlzLmhlbHBlcnMuYXNzZXJ0QXJndW1lbnQodmFsdWUpO1xyXG5cclxuICAgIGxldCBrZXlTZXF1ZW5jZSA9IFtdO1xyXG5cclxuICAgIC8vIFdESU8gaW1wbG1lbnRhdGlvbiBvZiBrZXlzIGNvbW1hbmQgaW52b2tlcyAncmVsZWFzZUFjdGlvbnMnIGZvciBXM0MuXHJcbiAgICAvLyBIb3dldmVyICcgREVMRVRFIC93ZC9odWIvc2Vzc2lvbi8qL2FjdGlvbnMnIGlzIG5vdCBpbXBsbWVuZXRlZCBhdCB0aGUgdmVyeSBsZWFzdCBpbiB1aWF0b21hdG9yMlxyXG4gICAgLy8gYW5kIGBrZXlzYCBjcmFzaGVzLlxyXG4gICAgLy8gdGh1cywgZG8gc2FtZSB0aGluZyBhcyBXRElPIGV4Y2VwdCByZWxlYXNlQWN0aW9uc1xyXG5cclxuICAgIC8qXHJcbiAgICAgKiByZXBsYWNlIGtleSB3aXRoIGNvcnJlc3BvbmRpbmcgdW5pY29kZSBjaGFyYWN0ZXJcclxuICAgICAqL1xyXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICBrZXlTZXF1ZW5jZSA9IGNoZWNrVW5pY29kZSh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XHJcbiAgICAgICAgLy8gYGluc3RhbmNlb2YgQXJyYXlgIGJlaGF2ZXMgc3RyYW5nZSB3aGVuIGV4ZWN1dGVkIHRocm91Z2ggdm0ucnVuSW5OZXdDb250ZXh0LFxyXG4gICAgICAgIC8vIGl0IHJldHVybnMgZmFsc2UgZm9yIGFycmF5cyBhbmQgYGRyaXZlci5rZXlzKClgIHRlc3RzIGZvciBhcnJheXMgdXNpbmcgYGluc3RhY2VvZiBBcnJheWBcclxuICAgICAgICAvLyB0aHVzIHdlIHRlc3QgdXNpbmcgQXJyYXkuaXNBcnJheSBpbnN0ZWFkXHJcbiAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZlbGl4Z2Uvbm9kZS1zYW5kYm94ZWQtbW9kdWxlL2lzc3Vlcy8xMyNpc3N1ZWNvbW1lbnQtMjk5NTg1MjEzXHJcbiAgICAgICAgZm9yIChjb25zdCBjaGFyU2V0IG9mIHZhbHVlKSB7XHJcbiAgICAgICAgICAgIGtleVNlcXVlbmNlID0ga2V5U2VxdWVuY2UuY29uY2F0KGNoZWNrVW5pY29kZShjaGFyU2V0KSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1wia2V5c1wiIGNvbW1hbmQgcmVxdWlyZXMgYSBzdHJpbmcgb3IgYXJyYXkgb2Ygc3RyaW5ncyBhcyBwYXJhbWV0ZXInKTtcclxuICAgIH1cclxuXHJcbiAgICAvKlxyXG4gICAgICogSnNvbldpcmVQcm90b2NvbCBhY3Rpb25cclxuICAgICAqL1xyXG4gICAgaWYgKCF0aGlzLmRyaXZlci5pc1czQykge1xyXG4gICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnNlbmRLZXlzKGtleVNlcXVlbmNlKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgLypcclxuICAgICAqIFczQyB3YXkgb2YgaGFuZGxlIGl0IGtleSBhY3Rpb25zXHJcbiAgICAgKi9cclxuICAgIGNvbnN0IGtleURvd25BY3Rpb25zID0ga2V5U2VxdWVuY2UubWFwKCh2YWx1ZSkgPT4gKHsgdHlwZTogJ2tleURvd24nLCB2YWx1ZSB9KSk7XHJcbiAgICBjb25zdCBrZXlVcEFjdGlvbnMgPSBrZXlTZXF1ZW5jZS5tYXAoKHZhbHVlKSA9PiAoeyB0eXBlOiAna2V5VXAnLCB2YWx1ZSB9KSk7XHJcblxyXG4gICAgYXdhaXQgdGhpcy5kcml2ZXIucGVyZm9ybUFjdGlvbnMoW3tcclxuICAgICAgICB0eXBlOiAna2V5JyxcclxuICAgICAgICBpZDogJ2tleWJvYXJkJyxcclxuICAgICAgICBhY3Rpb25zOiBbLi4ua2V5RG93bkFjdGlvbnMsIC4uLmtleVVwQWN0aW9uc11cclxuICAgIH1dKTtcclxufTtcclxuIl19
84
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9veF9tb2R1bGVzL21vZHVsZS1tb2IvY29tbWFuZHMvc2VuZEtleXMuanMiXSwibmFtZXMiOlsiY2hlY2tVbmljb2RlIiwicmVxdWlyZSIsIm1vZHVsZSIsImV4cG9ydHMiLCJ2YWx1ZSIsImhlbHBlcnMiLCJhc3NlcnRBcmd1bWVudCIsImtleVNlcXVlbmNlIiwiQXJyYXkiLCJpc0FycmF5IiwiY2hhclNldCIsImNvbmNhdCIsIkVycm9yIiwiZHJpdmVyIiwiaXNXM0MiLCJzZW5kS2V5cyIsImtleURvd25BY3Rpb25zIiwibWFwIiwidHlwZSIsImtleVVwQWN0aW9ucyIsInBlcmZvcm1BY3Rpb25zIiwiaWQiLCJhY3Rpb25zIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUlBLFlBQVksR0FBR0MsT0FBTyxDQUFDLHlCQUFELENBQVAsQ0FBbUNELFlBQXREOztBQUVBRSxNQUFNLENBQUNDLE9BQVAsR0FBaUIsZ0JBQWVDLEtBQWYsRUFBc0I7QUFDbkMsT0FBS0MsT0FBTCxDQUFhQyxjQUFiLENBQTRCRixLQUE1QixFQUFtQyxPQUFuQztBQUVBLE1BQUlHLFdBQVcsR0FBRyxFQUFsQixDQUhtQyxDQUtuQztBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNKO0FBQ0E7O0FBQ0ksTUFBSSxPQUFPSCxLQUFQLEtBQWlCLFFBQXJCLEVBQStCO0FBQzNCRyxJQUFBQSxXQUFXLEdBQUdQLFlBQVksQ0FBQ0ksS0FBRCxDQUExQjtBQUNILEdBRkQsTUFFTyxJQUFJSSxLQUFLLENBQUNDLE9BQU4sQ0FBY0wsS0FBZCxDQUFKLEVBQTBCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBSyxNQUFNTSxPQUFYLElBQXNCTixLQUF0QixFQUE2QjtBQUN6QkcsTUFBQUEsV0FBVyxHQUFHQSxXQUFXLENBQUNJLE1BQVosQ0FBbUJYLFlBQVksQ0FBQ1UsT0FBRCxDQUEvQixDQUFkO0FBQ0g7QUFDSixHQVJNLE1BUUE7QUFDSCxVQUFNLElBQUlFLEtBQUosQ0FBVSxtRUFBVixDQUFOO0FBQ0g7QUFFRDtBQUNKO0FBQ0E7OztBQUNJLE1BQUksQ0FBQyxLQUFLQyxNQUFMLENBQVlDLEtBQWpCLEVBQXdCO0FBQ3BCLFVBQU0sS0FBS0QsTUFBTCxDQUFZRSxRQUFaLENBQXFCUixXQUFyQixDQUFOO0FBQ0E7QUFDSDtBQUVEO0FBQ0o7QUFDQTs7O0FBQ0ksUUFBTVMsY0FBYyxHQUFHVCxXQUFXLENBQUNVLEdBQVosQ0FBaUJiLEtBQUQsS0FBWTtBQUFFYyxJQUFBQSxJQUFJLEVBQUUsU0FBUjtBQUFtQmQsSUFBQUE7QUFBbkIsR0FBWixDQUFoQixDQUF2QjtBQUNBLFFBQU1lLFlBQVksR0FBR1osV0FBVyxDQUFDVSxHQUFaLENBQWlCYixLQUFELEtBQVk7QUFBRWMsSUFBQUEsSUFBSSxFQUFFLE9BQVI7QUFBaUJkLElBQUFBO0FBQWpCLEdBQVosQ0FBaEIsQ0FBckI7QUFFQSxRQUFNLEtBQUtTLE1BQUwsQ0FBWU8sY0FBWixDQUEyQixDQUFDO0FBQzlCRixJQUFBQSxJQUFJLEVBQUUsS0FEd0I7QUFFOUJHLElBQUFBLEVBQUUsRUFBRSxVQUYwQjtBQUc5QkMsSUFBQUEsT0FBTyxFQUFFLENBQUMsR0FBR04sY0FBSixFQUFvQixHQUFHRyxZQUF2QjtBQUhxQixHQUFELENBQTNCLENBQU47QUFLSCxDQTlDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIENvcHlyaWdodCAoQykgMjAxNS1wcmVzZW50IENsb3VkQmVhdCBMaW1pdGVkXHJcbiAqXHJcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XHJcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XHJcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXHJcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEBzdW1tYXJ5IFNlbmQgYSBzZXF1ZW5jZSBvZiBrZXlib2FyZCBzdHJva2VzIHRvIHRoZSBhY3RpdmUgd2luZG93IG9yIGVsZW1lbnQuXHJcbiAqIEBkZXNjcmlwdGlvbiBSZWZlciB0byBbS2V5IENvZGVzXShodHRwczovL3czYy5naXRodWIuaW8vd2ViZHJpdmVyLyNrZXlib2FyZC1hY3Rpb25zKVxyXG4gKiAgICAgICAgICAgICAgZm9yIHRoZSBsaXN0IG9mIHN1cHBvcnRlZCByYXcga2V5Ym9hcmQga2V5IGNvZGVzLlxyXG4gKiBAZnVuY3Rpb24gc2VuZEtleXNcclxuICogQHBhcmFtIHsoU3RyaW5nfFN0cmluZ1tdKX0gdmFsdWUgLSBTZXF1ZW5jZSBvZiBrZXkgc3Ryb2tlcyB0byBzZW5kLiBDYW4gYmUgZWl0aGVyIGEgc3RyaW5nIG9yIGFuIFxyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheSBvZiBzdHJpbmdzIGZvciBzZW5kaW5nIHJhdyBrZXkgY29kZXMuXHJcbiAqIEBmb3IgYW5kcm9pZCwgaW9zLCBoeWJyaWQsIHdlYlxyXG4gKiBAZXhhbXBsZSA8Y2FwdGlvbj5bamF2YXNjcmlwdF0gVXNhZ2UgZXhhbXBsZTwvY2FwdGlvbj5cclxuICogbW9iLmluaXQoKTsvL09wZW5zIGJyb3dzZXIgc2Vzc2lvbi5cclxuICogbW9iLm9wZW4oXCJ3d3cueW91cndlYnNpdGUuY29tXCIpOy8vIE9wZW5zIGEgd2Vic2l0ZS5cclxuICogbW9iLnNlbmRLZXlzKFwiSGVsbG8gV29ybGRcIik7XHJcbiAqIG1vYi5zZW5kS2V5cyhbXCJCYWNrc3BhY2VcIiwgXCJCYWNrc3BhY2VcIiwgXCJFbnRlclwiXSk7IC8vIHNlbmQgdHdvIEJhY2tzcGFjZSBrZXkgY29kZXMgYW5kIEVudGVyLlxyXG4gKiAvLyBVbmljb2RlIHJlcHJlc2VudGF0aW9uIGNhbiBiZSB1c2VkIGRpcmVjdGx5IGFzIHdlbGw6XHJcbiAqIG1vYi5zZW5kS2V5cyhcIkhlbGxvIFdvcmxkXFx1RTAwM1xcdUUwMDNcXHVFMDA3XCIpO1xyXG4qL1xyXG52YXIgY2hlY2tVbmljb2RlID0gcmVxdWlyZSgnd2ViZHJpdmVyaW8vYnVpbGQvdXRpbHMnKS5jaGVja1VuaWNvZGU7XHJcblxyXG5tb2R1bGUuZXhwb3J0cyA9IGFzeW5jIGZ1bmN0aW9uKHZhbHVlKSB7XHJcbiAgICB0aGlzLmhlbHBlcnMuYXNzZXJ0QXJndW1lbnQodmFsdWUsICd2YWx1ZScpO1xyXG5cclxuICAgIGxldCBrZXlTZXF1ZW5jZSA9IFtdO1xyXG5cclxuICAgIC8vIFdESU8gaW1wbG1lbnRhdGlvbiBvZiBrZXlzIGNvbW1hbmQgaW52b2tlcyAncmVsZWFzZUFjdGlvbnMnIGZvciBXM0MuXHJcbiAgICAvLyBIb3dldmVyICcgREVMRVRFIC93ZC9odWIvc2Vzc2lvbi8qL2FjdGlvbnMnIGlzIG5vdCBpbXBsbWVuZXRlZCBhdCB0aGUgdmVyeSBsZWFzdCBpbiB1aWF0b21hdG9yMlxyXG4gICAgLy8gYW5kIGBrZXlzYCBjcmFzaGVzLlxyXG4gICAgLy8gdGh1cywgZG8gc2FtZSB0aGluZyBhcyBXRElPIGV4Y2VwdCByZWxlYXNlQWN0aW9uc1xyXG5cclxuICAgIC8qXHJcbiAgICAgKiByZXBsYWNlIGtleSB3aXRoIGNvcnJlc3BvbmRpbmcgdW5pY29kZSBjaGFyYWN0ZXJcclxuICAgICAqL1xyXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICBrZXlTZXF1ZW5jZSA9IGNoZWNrVW5pY29kZSh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XHJcbiAgICAgICAgLy8gYGluc3RhbmNlb2YgQXJyYXlgIGJlaGF2ZXMgc3RyYW5nZSB3aGVuIGV4ZWN1dGVkIHRocm91Z2ggdm0ucnVuSW5OZXdDb250ZXh0LFxyXG4gICAgICAgIC8vIGl0IHJldHVybnMgZmFsc2UgZm9yIGFycmF5cyBhbmQgYGRyaXZlci5rZXlzKClgIHRlc3RzIGZvciBhcnJheXMgdXNpbmcgYGluc3RhY2VvZiBBcnJheWBcclxuICAgICAgICAvLyB0aHVzIHdlIHRlc3QgdXNpbmcgQXJyYXkuaXNBcnJheSBpbnN0ZWFkXHJcbiAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZlbGl4Z2Uvbm9kZS1zYW5kYm94ZWQtbW9kdWxlL2lzc3Vlcy8xMyNpc3N1ZWNvbW1lbnQtMjk5NTg1MjEzXHJcbiAgICAgICAgZm9yIChjb25zdCBjaGFyU2V0IG9mIHZhbHVlKSB7XHJcbiAgICAgICAgICAgIGtleVNlcXVlbmNlID0ga2V5U2VxdWVuY2UuY29uY2F0KGNoZWNrVW5pY29kZShjaGFyU2V0KSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1wia2V5c1wiIGNvbW1hbmQgcmVxdWlyZXMgYSBzdHJpbmcgb3IgYXJyYXkgb2Ygc3RyaW5ncyBhcyBwYXJhbWV0ZXInKTtcclxuICAgIH1cclxuXHJcbiAgICAvKlxyXG4gICAgICogSnNvbldpcmVQcm90b2NvbCBhY3Rpb25cclxuICAgICAqL1xyXG4gICAgaWYgKCF0aGlzLmRyaXZlci5pc1czQykge1xyXG4gICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnNlbmRLZXlzKGtleVNlcXVlbmNlKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgLypcclxuICAgICAqIFczQyB3YXkgb2YgaGFuZGxlIGl0IGtleSBhY3Rpb25zXHJcbiAgICAgKi9cclxuICAgIGNvbnN0IGtleURvd25BY3Rpb25zID0ga2V5U2VxdWVuY2UubWFwKCh2YWx1ZSkgPT4gKHsgdHlwZTogJ2tleURvd24nLCB2YWx1ZSB9KSk7XHJcbiAgICBjb25zdCBrZXlVcEFjdGlvbnMgPSBrZXlTZXF1ZW5jZS5tYXAoKHZhbHVlKSA9PiAoeyB0eXBlOiAna2V5VXAnLCB2YWx1ZSB9KSk7XHJcblxyXG4gICAgYXdhaXQgdGhpcy5kcml2ZXIucGVyZm9ybUFjdGlvbnMoW3tcclxuICAgICAgICB0eXBlOiAna2V5JyxcclxuICAgICAgICBpZDogJ2tleWJvYXJkJyxcclxuICAgICAgICBhY3Rpb25zOiBbLi4ua2V5RG93bkFjdGlvbnMsIC4uLmtleVVwQWN0aW9uc11cclxuICAgIH1dKTtcclxufTtcclxuIl19