@wdio/config 5.9.5 → 5.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,12 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.SUPPORTED_HOOKS = exports.DEFAULT_CONFIGS = void 0;
7
-
8
- require("source-map-support/register");
9
-
10
7
  const DEFAULT_TIMEOUT = 10000;
11
- /* istanbul ignore next */
12
-
13
8
  const DEFAULT_CONFIGS = {
14
9
  sync: true,
15
10
  specs: [],
@@ -34,10 +29,6 @@ const DEFAULT_CONFIGS = {
34
29
  execArgv: [],
35
30
  runnerEnv: {},
36
31
  runner: 'local',
37
-
38
- /**
39
- * framework defaults
40
- */
41
32
  mochaOpts: {
42
33
  timeout: DEFAULT_TIMEOUT
43
34
  },
@@ -47,10 +38,6 @@ const DEFAULT_CONFIGS = {
47
38
  cucumberOpts: {
48
39
  timeout: DEFAULT_TIMEOUT
49
40
  },
50
-
51
- /**
52
- * hooks
53
- */
54
41
  onPrepare: [],
55
42
  before: [],
56
43
  beforeSession: [],
@@ -66,18 +53,13 @@ const DEFAULT_CONFIGS = {
66
53
  after: [],
67
54
  onComplete: [],
68
55
  onReload: [],
69
-
70
- /**
71
- * cucumber specific hooks
72
- */
73
56
  beforeFeature: [],
74
57
  beforeScenario: [],
75
58
  beforeStep: [],
76
- afterFeature: [],
59
+ afterStep: [],
77
60
  afterScenario: [],
78
- afterStep: []
61
+ afterFeature: []
79
62
  };
80
63
  exports.DEFAULT_CONFIGS = DEFAULT_CONFIGS;
81
- const SUPPORTED_HOOKS = ['before', 'beforeSession', 'beforeSuite', 'beforeHook', 'beforeTest', 'beforeCommand', 'afterCommand', 'afterTest', 'afterHook', 'afterSuite', 'afterSession', 'after', 'beforeFeature', 'beforeScenario', 'beforeStep', 'afterFeature', 'afterScenario', 'afterStep', 'onReload', 'onPrepare', 'onComplete'];
82
- exports.SUPPORTED_HOOKS = SUPPORTED_HOOKS;
83
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zdGFudHMuanMiXSwibmFtZXMiOlsiREVGQVVMVF9USU1FT1VUIiwiREVGQVVMVF9DT05GSUdTIiwic3luYyIsInNwZWNzIiwic3VpdGVzIiwiZXhjbHVkZSIsIm91dHB1dERpciIsInVuZGVmaW5lZCIsImxvZ0xldmVsIiwibG9nTGV2ZWxzIiwiZXhjbHVkZURyaXZlckxvZ3MiLCJiYXNlVXJsIiwiYmFpbCIsIndhaXRmb3JJbnRlcnZhbCIsIndhaXRmb3JUaW1lb3V0IiwiZnJhbWV3b3JrIiwicmVwb3J0ZXJzIiwibWF4SW5zdGFuY2VzIiwibWF4SW5zdGFuY2VzUGVyQ2FwYWJpbGl0eSIsImZpbGVzVG9XYXRjaCIsImNvbm5lY3Rpb25SZXRyeVRpbWVvdXQiLCJjb25uZWN0aW9uUmV0cnlDb3VudCIsImRlYnVnIiwiZXhlY0FyZ3YiLCJydW5uZXJFbnYiLCJydW5uZXIiLCJtb2NoYU9wdHMiLCJ0aW1lb3V0IiwiamFzbWluZU5vZGVPcHRzIiwiZGVmYXVsdFRpbWVvdXRJbnRlcnZhbCIsImN1Y3VtYmVyT3B0cyIsIm9uUHJlcGFyZSIsImJlZm9yZSIsImJlZm9yZVNlc3Npb24iLCJiZWZvcmVTdWl0ZSIsImJlZm9yZUhvb2siLCJiZWZvcmVUZXN0IiwiYmVmb3JlQ29tbWFuZCIsImFmdGVyQ29tbWFuZCIsImFmdGVyVGVzdCIsImFmdGVySG9vayIsImFmdGVyU3VpdGUiLCJhZnRlclNlc3Npb24iLCJhZnRlciIsIm9uQ29tcGxldGUiLCJvblJlbG9hZCIsImJlZm9yZUZlYXR1cmUiLCJiZWZvcmVTY2VuYXJpbyIsImJlZm9yZVN0ZXAiLCJhZnRlckZlYXR1cmUiLCJhZnRlclNjZW5hcmlvIiwiYWZ0ZXJTdGVwIiwiU1VQUE9SVEVEX0hPT0tTIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxNQUFNQSxlQUFlLEdBQUcsS0FBeEI7QUFFQTs7QUFFTyxNQUFNQyxlQUFlLEdBQUc7QUFDM0JDLEVBQUFBLElBQUksRUFBRSxJQURxQjtB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X1RJTUVPVVQgPSAxMDAwMFxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9DT05GSUdTID0ge1xuICAgIHN5bmM6IHRydWUsXG4gICAgc3BlY3M6IFtdLFxuICAgIHN1aXRlczoge30sXG4gICAgZXhjbHVkZTogW10sXG4gICAgb3V0cHV0RGlyOiB1bmRlZmluZWQsXG4gICAgbG9nTGV2ZWw6ICdpbmZvJyxcbiAgICBsb2dMZXZlbHM6IHt9LFxuICAgIGV4Y2x1ZGVEcml2ZXJMb2dzOiBbXSxcbiAgICBiYXNlVXJsOiB1bmRlZmluZWQsXG4gICAgYmFpbDogMCxcbiAgICB3YWl0Zm9ySW50ZXJ2YWw6IDUwMCxcbiAgICB3YWl0Zm9yVGltZW91dDogNTAwMCxcbiAgICBmcmFtZXdvcms6ICdtb2NoYScsXG4gICAgcmVwb3J0ZXJzOiBbXSxcbiAgICBtYXhJbnN0YW5jZXM6IDEwMCxcbiAgICBtYXhJbnN0YW5jZXNQZXJDYXBhYmlsaXR5OiAxMDAsXG4gICAgZmlsZXNUb1dhdGNoOiBbXSxcbiAgICBjb25uZWN0aW9uUmV0cnlUaW1lb3V0OiA5MDAwMCxcbiAgICBjb25uZWN0aW9uUmV0cnlDb3VudDogMyxcbiAgICBkZWJ1ZzogZmFsc2UsXG4gICAgZXhlY0FyZ3Y6IFtdLFxuICAgIHJ1bm5lckVudjoge30sXG4gICAgcnVubmVyOiAnbG9jYWwnLFxuXG4gICAgLyoqXG4gICAgICogZnJhbWV3b3JrIGRlZmF1bHRzXG4gICAgICovXG4gICAgbW9jaGFPcHRzOiB7XG4gICAgICAgIHRpbWVvdXQ6IERFRkFVTFRfVElNRU9VVFxuICAgIH0sXG4gICAgamFzbWluZU5vZGVPcHRzOiB7XG4gICAgICAgIGRlZmF1bHRUaW1lb3V0SW50ZXJ2YWw6IERFRkFVTFRfVElNRU9VVFxuICAgIH0sXG4gICAgY3VjdW1iZXJPcHRzOiB7XG4gICAgICAgIHRpbWVvdXQ6IERFRkFVTFRfVElNRU9VVFxuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBob29rc1xuICAgICAqL1xuICAgIG9uUHJlcGFyZTogW10sXG4gICAgYmVmb3JlOiBbXSxcbiAgICBiZWZvcmVTZXNzaW9uOiBbXSxcbiAgICBiZWZvcmVTdWl0ZTogW10sXG4gICAgYmVmb3JlSG9vazogW10sXG4gICAgYmVmb3JlVGVzdDogW10sXG4gICAgYmVmb3JlQ29tbWFuZDogW10sXG4gICAgYWZ0ZXJDb21tYW5kOiBbXSxcbiAgICBhZnRlclRlc3Q6IFtdLFxuICAgIGFmdGVySG9vazogW10sXG4gICAgYWZ0ZXJTdWl0ZTogW10sXG4gICAgYWZ0ZXJTZXNzaW9uOiBbXSxcbiAgICBhZnRlcjogW10sXG4gICAgb25Db21wbGV0ZTogW10sXG4gICAgb25SZWxvYWQ6IFtdLFxuXG4gICAgLyoqXG4gICAgICogY3VjdW1iZXIgc3BlY2lmaWMgaG9va3NcbiAgICAgKi9cbiAgICBiZWZvcmVGZWF0dXJlOiBbXSxcbiAgICBiZWZvcmVTY2VuYXJpbzogW10sXG4gICAgYmVmb3JlU3RlcDogW10sXG4gICAgYWZ0ZXJGZWF0dXJlOiBbXSxcbiAgICBhZnRlclNjZW5hcmlvOiBbXSxcbiAgICBhZnRlclN0ZXA6IFtdXG59XG5cbmV4cG9ydCBjb25zdCBTVVBQT1JURURfSE9PS1MgPSBbXG4gICAgJ2JlZm9yZScsICdiZWZvcmVTZXNzaW9uJywgJ2JlZm9yZVN1aXRlJywgJ2JlZm9yZUhvb2snLCAnYmVmb3JlVGVzdCcsICdiZWZvcmVDb21tYW5kJyxcbiAgICAnYWZ0ZXJDb21tYW5kJywgJ2FmdGVyVGVzdCcsICdhZnRlckhvb2snLCAnYWZ0ZXJTdWl0ZScsICdhZnRlclNlc3Npb24nLCAnYWZ0ZXInLFxuICAgICdiZWZvcmVGZWF0dXJlJywgJ2JlZm9yZVNjZW5hcmlvJywgJ2JlZm9yZVN0ZXAnLCAnYWZ0ZXJGZWF0dXJlJyxcbiAgICAnYWZ0ZXJTY2VuYXJpbycsICdhZnRlclN0ZXAnLCAnb25SZWxvYWQnLCAnb25QcmVwYXJlJywgJ29uQ29tcGxldGUnXG5dXG4iXX0=
64
+ const SUPPORTED_HOOKS = ['before', 'beforeSession', 'beforeSuite', 'beforeHook', 'beforeTest', 'beforeCommand', 'afterCommand', 'afterTest', 'afterHook', 'afterSuite', 'afterSession', 'after', 'beforeFeature', 'beforeScenario', 'beforeStep', 'afterStep', 'afterScenario', 'afterFeature', 'onReload', 'onPrepare', 'onComplete'];
65
+ exports.SUPPORTED_HOOKS = SUPPORTED_HOOKS;
package/build/index.js CHANGED
@@ -76,8 +76,6 @@ Object.defineProperty(exports, "DEFAULT_CONFIGS", {
76
76
  }
77
77
  });
78
78
 
79
- require("source-map-support/register");
80
-
81
79
  var _ConfigParser = _interopRequireDefault(require("./lib/ConfigParser"));
82
80
 
83
81
  var _utils = require("./utils");
@@ -86,5 +84,4 @@ var _shim = require("./shim");
86
84
 
87
85
  var _constants = require("./constants");
88
86
 
89
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
90
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUlBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IENvbmZpZ1BhcnNlciBmcm9tICcuL2xpYi9Db25maWdQYXJzZXInXG5pbXBvcnQgeyB2YWxpZGF0ZUNvbmZpZywgZ2V0U2F1Y2VFbmRwb2ludCwgZGV0ZWN0QmFja2VuZCB9IGZyb20gJy4vdXRpbHMnXG5pbXBvcnQge1xuICAgIHdyYXBDb21tYW5kLCBydW5GbkluRmliZXJDb250ZXh0LCBydW5UZXN0SW5GaWJlckNvbnRleHQsIGV4ZWN1dGVIb29rc1dpdGhBcmdzLFxuICAgIGhhc1dkaW9TeW5jU3VwcG9ydCwgZXhlY3V0ZVN5bmMsIGV4ZWN1dGVBc3luY1xufSBmcm9tICcuL3NoaW0nXG5pbXBvcnQgeyBERUZBVUxUX0NPTkZJR1MgfSBmcm9tICcuL2NvbnN0YW50cydcblxuZXhwb3J0IHtcbiAgICB2YWxpZGF0ZUNvbmZpZyxcbiAgICBnZXRTYXVjZUVuZHBvaW50LFxuICAgIGRldGVjdEJhY2tlbmQsXG4gICAgQ29uZmlnUGFyc2VyLFxuXG4gICAgLyoqXG4gICAgICogd2Rpby1zeW5jIHNoaW1cbiAgICAgKi9cbiAgICB3cmFwQ29tbWFuZCxcbiAgICBleGVjdXRlU3luYyxcbiAgICBleGVjdXRlQXN5bmMsXG4gICAgcnVuRm5JbkZpYmVyQ29udGV4dCxcbiAgICBydW5UZXN0SW5GaWJlckNvbnRleHQsXG4gICAgZXhlY3V0ZUhvb2tzV2l0aEFyZ3MsXG4gICAgaGFzV2Rpb1N5bmNTdXBwb3J0LFxuXG4gICAgLyoqXG4gICAgICogY29uc3RhbnRzXG4gICAgICovXG4gICAgREVGQVVMVF9DT05GSUdTXG59XG4iXX0=
87
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -5,8 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
 
8
- require("source-map-support/register");
9
-
10
8
  var _fs = _interopRequireDefault(require("fs"));
11
9
 
12
10
  var _path = _interopRequireDefault(require("path"));
@@ -33,11 +31,6 @@ class ConfigParser {
33
31
  this._config = _constants.DEFAULT_CONFIGS;
34
32
  this._capabilities = [];
35
33
  }
36
- /**
37
- * merges config file with default values
38
- * @param {String} filename path of file relative to current directory
39
- */
40
-
41
34
 
42
35
  addConfigFile(filename) {
43
36
  if (typeof filename !== 'string') {
@@ -47,22 +40,10 @@ class ConfigParser {
47
40
  var filePath = _path.default.resolve(process.cwd(), filename);
48
41
 
49
42
  try {
50
- /**
51
- * clone the original config
52
- */
53
43
  var fileConfig = (0, _deepmerge.default)(require(filePath).config, {}, MERGE_OPTIONS);
54
- /**
55
- * merge capabilities
56
- */
57
-
58
44
  const defaultTo = Array.isArray(this._capabilities) ? [] : {};
59
45
  this._capabilities = (0, _deepmerge.default)(this._capabilities, fileConfig.capabilities || defaultTo, MERGE_OPTIONS);
60
46
  delete fileConfig.capabilities;
61
- /**
62
- * Add hooks from the file config and remove them from file config object to avoid
63
- * complications when using merge function
64
- */
65
-
66
47
  this.addService(fileConfig);
67
48
 
68
49
  for (let hookName of _constants.SUPPORTED_HOOKS) {
@@ -70,18 +51,8 @@ class ConfigParser {
70
51
  }
71
52
 
72
53
  this._config = (0, _deepmerge.default)(this._config, fileConfig, MERGE_OPTIONS);
73
- /**
74
- * For Sauce Labs RDC we need to determine if the config file has a `testobject_api_key`
75
- * If so, we need to provide a boolean to the `detectBackend` to set the correct hostname
76
- *
77
- * NOTE: This will not work for multi remote
78
- */
79
54
 
80
55
  const isRDC = Array.isArray(this._capabilities) && this._capabilities.some(capability => 'testobject_api_key' in capability);
81
- /**
82
- * detect Selenium backend
83
- */
84
-
85
56
 
86
57
  this._config = (0, _deepmerge.default)((0, _utils.detectBackend)(this._config, isRDC), this._config, MERGE_OPTIONS);
87
58
  } catch (e) {
@@ -89,35 +60,20 @@ class ConfigParser {
89
60
  throw e;
90
61
  }
91
62
  }
92
- /**
93
- * merge external object with config object
94
- * @param {Object} object desired object to merge into the config object
95
- */
96
-
97
63
 
98
64
  merge(object = {}) {
99
65
  this._config = (0, _deepmerge.default)(this._config, object, MERGE_OPTIONS);
100
66
  let spec = Array.isArray(object.spec) ? object.spec : [];
101
67
  let exclude = Array.isArray(object.exclude) ? object.exclude : [];
102
- /**
103
- * overwrite config specs that got piped into the wdio command
104
- */
105
68
 
106
69
  if (object.specs && object.specs.length > 0) {
107
70
  this._config.specs = object.specs;
108
71
  } else if (object.exclude && object.exclude.length > 0) {
109
72
  this._config.exclude = object.exclude;
110
73
  }
111
- /**
112
- * merge capabilities
113
- */
114
-
115
74
 
116
75
  const defaultTo = Array.isArray(this._capabilities) ? [] : {};
117
76
  this._capabilities = (0, _deepmerge.default)(this._capabilities, this._config.capabilities || defaultTo, MERGE_OPTIONS);
118
- /**
119
- * run single spec file only, regardless of multiple-spec specification
120
- */
121
77
 
122
78
  if (spec.length > 0) {
123
79
  this._config.specs = [...this.setFilePathToFilterOptions(spec, this._config.specs)];
@@ -126,12 +82,6 @@ class ConfigParser {
126
82
  if (exclude.length > 0) {
127
83
  this._config.exclude = [...this.setFilePathToFilterOptions(exclude, this._config.exclude)];
128
84
  }
129
- /**
130
- * user and key could get added via cli arguments so we need to detect again
131
- * Note: cli arguments are on the right and overwrite config
132
- * if host and port are default, remove them to get new values
133
- */
134
-
135
85
 
136
86
  let defaultBackend = (0, _utils.detectBackend)({});
137
87
 
@@ -143,11 +93,6 @@ class ConfigParser {
143
93
 
144
94
  this._config = (0, _deepmerge.default)((0, _utils.detectBackend)(this._config), this._config, MERGE_OPTIONS);
145
95
  }
146
- /**
147
- * Add hooks from an existing service to the runner config.
148
- * @param {Object} service - an object that contains hook methods.
149
- */
150
-
151
96
 
152
97
  addService(service) {
153
98
  for (let hookName of _constants.SUPPORTED_HOOKS) {
@@ -166,25 +111,17 @@ class ConfigParser {
166
111
  }
167
112
  }
168
113
  }
169
- /**
170
- * get excluded files from config pattern
171
- */
172
-
173
114
 
174
115
  getSpecs(capSpecs, capExclude) {
175
116
  let specs = ConfigParser.getFilePaths(this._config.specs);
176
117
  let spec = Array.isArray(this._config.spec) ? this._config.spec : [];
177
118
  let exclude = ConfigParser.getFilePaths(this._config.exclude);
178
119
  let suites = Array.isArray(this._config.suite) ? this._config.suite : [];
179
- /**
180
- * check if user has specified a specific suites to run
181
- */
182
120
 
183
121
  if (suites.length > 0) {
184
122
  let suiteSpecs = [];
185
123
 
186
124
  for (let suiteName of suites) {
187
- // ToDo: log warning if suite was not found
188
125
  let suite = this._config.suites[suiteName];
189
126
 
190
127
  if (suite && Array.isArray(suite)) {
@@ -194,9 +131,7 @@ class ConfigParser {
194
131
 
195
132
  if (suiteSpecs.length === 0) {
196
133
  throw new Error(`The suite(s) "${suites.join('", "')}" you specified don't exist ` + 'in your config file or doesn\'t contain any files!');
197
- } // Allow --suite and --spec to both be defined on the command line
198
- // Removing any duplicate tests that could be included
199
-
134
+ }
200
135
 
201
136
  let tmpSpecs = spec.length > 0 ? [...specs, ...suiteSpecs] : suiteSpecs;
202
137
 
@@ -222,16 +157,6 @@ class ConfigParser {
222
157
 
223
158
  return specs.filter(spec => !exclude.includes(spec));
224
159
  }
225
- /**
226
- * sets config attribute with file paths from filtering
227
- * options from cli argument
228
- *
229
- * @param {String} cliArgFileList list of files in a string from
230
- * @param {Object} config config object that stores the spec and exlcude attributes
231
- * cli argument
232
- * @return {String[]} List of files that should be included or excluded
233
- */
234
-
235
160
 
236
161
  setFilePathToFilterOptions(cliArgFileList, config) {
237
162
  const filesToFilter = new Set();
@@ -254,18 +179,10 @@ class ConfigParser {
254
179
 
255
180
  return filesToFilter;
256
181
  }
257
- /**
258
- * return configs
259
- */
260
-
261
182
 
262
183
  getConfig() {
263
184
  return this._config;
264
185
  }
265
- /**
266
- * return capabilities
267
- */
268
-
269
186
 
270
187
  getCapabilities(i) {
271
188
  if (typeof i === 'number' && this._capabilities[i]) {
@@ -274,13 +191,6 @@ class ConfigParser {
274
191
 
275
192
  return this._capabilities;
276
193
  }
277
- /**
278
- * returns a flatten list of globed files
279
- *
280
- * @param {String[]} filenames list of files to glob
281
- * @return {String[]} list of files
282
- */
283
-
284
194
 
285
195
  static getFilePaths(patterns, omitWarnings) {
286
196
  let files = [];
@@ -311,5 +221,4 @@ class ConfigParser {
311
221
 
312
222
  }
313
223
 
314
- exports.default = ConfigParser;
315
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvQ29uZmlnUGFyc2VyLmpzIl0sIm5hbWVzIjpbImxvZyIsIk1FUkdFX09QVElPTlMiLCJjbG9uZSIsIkNvbmZpZ1BhcnNlciIsImNvbnN0cnVjdG9yIiwiX2NvbmZpZyIsIkRFRkFVTFRfQ09ORklHUyIsIl9jYXBhYmlsaXRpZXMiLCJhZGRDb25maWdGaWxlIiwiZmlsZW5hbWUiLCJFcnJvciIsImZpbGVQYXRoIiwicGF0aCIsInJlc29sdmUiLCJwcm9jZXNzIiwiY3dkIiwiZmlsZUNvbmZpZyIsInJlcXVpcmUiLCJjb25maWciLCJkZWZhdWx0VG8iLCJBcnJheSIsImlzQXJyYXkiLCJjYXBhYmlsaXRpZXMiLCJhZGRTZXJ2aWNlIiwiaG9va05hbWUiLCJTVVBQT1JURURfSE9PS1MiLCJpc1JEQyIsInNvbWUiLCJjYXBhYmlsaXR5IiwiZSIsImVycm9yIiwibWVzc2FnZSIsIm1lcmdlIiwib2JqZWN0Iiwic3BlYyIsImV4Y2x1ZGUiLCJzcGVjcyIsImxlbmd0aCIsInNldEZpbGVQYXRoVG9GaWx0ZXJPcHRpb25zIiwiZGVmYXVsdEJhY2tlbmQiLCJob3N0bmFtZSIsInBvcnQiLCJwcm90b2NvbCIsInNlcnZpY2UiLCJwdXNoIiwiYmluZCIsImhvb2siLCJnZXRTcGVjcyIsImNhcFNwZWNzIiwiY2FwRXhjbHVkZSIsImdldEZpbGVQYXRocyIsInN1aXRlcyIsInN1aXRlIiwic3VpdGVTcGVjcyIsInN1aXRlTmFtZSIsImNvbmNhdCIsImpvaW4iLCJ0bXBTcGVjcyIsIlNldCIsImZpbHRlciIsImluY2x1ZGVzIiwiY2xpQXJnRmlsZUxpc3QiLCJmaWxlc1RvRmlsdGVyIiwiZmlsZUxpc3QiLCJmb3JFYWNoIiwiZmlsdGVyZWRGaWxlIiwiZnMiLCJleGlzdHNTeW5jIiwibHN0YXRTeW5jIiwiaXNGaWxlIiwiYWRkIiwiZmlsZSIsIm1hdGNoIiwic2l6ZSIsImdldENvbmZpZyIsImdldENhcGFiaWxpdGllcyIsImkiLCJwYXR0ZXJucyIsIm9taXRXYXJuaW5ncyIsImZpbGVzIiwicGF0dGVybiIsImZpbGVuYW1lcyIsImdsb2IiLCJzeW5jIiwic2xpY2UiLCJtYXAiLCJpc0Fic29sdXRlIiwibm9ybWFsaXplIiwid2FybiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7Ozs7QUFFQSxNQUFNQSxHQUFHLEdBQUcscUJBQU8sMkJBQVAsQ0FBWjtBQUNBLE1BQU1DLGFBQWEsR0FBRztBQUFFQyxFQUFBQSxLQUFLLEVBQUU7QUFBVCxDQUF0Qjs7QUFFZSxNQUFNQyxZQUFOLENBQW1CO0FBQzlCQyxFQUFBQSxXQUFXLEdBQUk7QUFDWCxTQUFLQyxPQUFMLEdBQWVDLDBCQUFmO0FBQ0EsU0FBS0MsYUFBTCxHQUFxQixFQUFyQjtBQUNIO0FBRUQ7Ozs7OztBQUlBQyxFQUFBQSxhQUFhLENBQUVDLFFBQUYsRUFBWTtBQUNyQixRQUFJLE9BQU9BLFFBQVAsS0FBb0IsUUFBeEIsRUFBa0M7QUFDOUIsWUFBTSxJQUFJQyxLQUFKLENBQVUsaUNBQVYsQ0FBTjtBQUNIOztBQUVELFFBQUlDLFFBQVEsR0FBR0MsY0FBS0MsT0FBTCxDQUFhQyxPQUFPLENBQUNDLEdBQVIsRUFBYixFQUE0Qk4sUUFBNUIsQ0FBZjs7QUFFQSxRQUFJO0FBQ0E7OztBQUdBLFVBQUlPLFVBQVUsR0FBRyx3QkFBTUMsT0FBTyxDQUFDTixRQUFELENBQVAsQ0FBa0JPLE1BQXhCLEVBQWdDLEVBQWhDLEVBQW9DakIsYUFBcEMsQ0FBakI7QUFFQTs7OztBQUdBLFlBQU1rQixTQUFTLEdBQUdDLEtBQUssQ0FBQ0MsT0FBTixDQUFjLEtBQUtkLGFBQW5CLElBQW9DLEVBQXBDLEdBQXlDLEVBQTNEO0FBQ0EsV0FBS0EsYUFBTCxHQUFxQix3QkFBTSxLQUFLQSxhQUFYLEVBQTBCUyxVQUFVLENBQUNNLFlBQVgsSUFBMkJILFNBQXJELEVBQWdFbEIsYUFBaEUsQ0FBckI7QUFDQSxhQUFPZSxVQUFVLENBQUNNLFlBQWxCO0FB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QUgsTUFBQUEsU0FBUyxHQUFHQSxTQUFTLENBQUNJLEdBQVYsQ0FBYzVFLFFBQVEsSUFDOUJHLGNBQUswRSxVQUFMLENBQWdCN0UsUUFBaEIsSUFBNEJHLGNBQUsyRSxTQUFMLENBQWU5RSxRQUFmLENBQTVCLEdBQXVERyxjQUFLQyxPQUFMLENBQWFDLE9BQU8sQ0FBQ0MsR0FBUixFQUFiLEVBQTRCTixRQUE1QixDQUQvQyxDQUFaOztBQUdBLFVBQUl3RSxTQUFTLENBQUM1QyxNQUFWLEtBQXFCLENBQXJCLElBQTBCLENBQUN5QyxZQUEvQixFQUE2QztBQUN6QzlFLFFBQUFBLEdBQUcsQ0FBQ3dGLElBQUosQ0FBUyxTQUFULEVBQW9CUixPQUFwQixFQUE2Qix3QkFBN0I7QUFDSDs7QUFFREQsTUFBQUEsS0FBSyxHQUFHLHdCQUFNQSxLQUFOLEVBQWFFLFNBQWIsRUFBd0JoRixhQUF4QixDQUFSO0FBQ0g7O0FBRUQsV0FBTzhFLEtBQVA7QUFDSDs7QUFsUjZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGZzIGZyb20gJ2ZzJ1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcbmltcG9ydCBnbG9iIGZyb20gJ2dsb2InXG5pbXBvcnQgbWVyZ2UgZnJvbSAnZGVlcG1lcmdlJ1xuXG5pbXBvcnQgbG9nZ2VyIGZyb20gJ0B3ZGlvL2xvZ2dlcidcblxuaW1wb3J0IHsgZGV0ZWN0QmFja2VuZCB9IGZyb20gJy4uL3V0aWxzJ1xuXG5pbXBvcnQgeyBERUZBVUxUX0NPTkZJR1MsIFNVUFBPUlRFRF9IT09LUyB9IGZyb20gJy4uL2NvbnN0YW50cydcblxuY29uc3QgbG9nID0gbG9nZ2VyKCdAd2Rpby9jb25maWc6Q29uZmlnUGFyc2VyJylcbmNvbnN0IE1FUkdFX09QVElPTlMgPSB7IGNsb25lOiBmYWxzZSB9XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENvbmZpZ1BhcnNlciB7XG4gICAgY29uc3RydWN0b3IgKCkge1xuICAgICAgICB0aGlzLl9jb25maWcgPSBERUZBVUxUX0NPTkZJR1NcbiAgICAgICAgdGhpcy5fY2FwYWJpbGl0aWVzID0gW11cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBtZXJnZXMgY29uZmlnIGZpbGUgd2l0aCBkZWZhdWx0IHZhbHVlc1xuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBmaWxlbmFtZSBwYXRoIG9mIGZpbGUgcmVsYXRpdmUgdG8gY3VycmVudCBkaXJlY3RvcnlcbiAgICAgKi9cbiAgICBhZGRDb25maWdGaWxlIChmaWxlbmFtZSkge1xuICAgICAgICBpZiAodHlwZW9mIGZpbGVuYW1lICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdhZGRDb25maWdGaWxlIHJlcXVpcmVzIGZpbGVwYXRoJylcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBmaWxlUGF0aCA9IHBhdGgucmVzb2x2ZShwcm9jZXNzLmN3ZCgpLCBmaWxlbmFtZSlcblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBjbG9uZSB0aGUgb3JpZ2luYWwgY29uZmlnXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHZhciBmaWxlQ29uZmlnID0gbWVyZ2UocmVxdWlyZShmaWxlUGF0aCkuY29uZmlnLCB7fSwgTUVSR0VfT1BUSU9OUylcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBtZXJnZSBjYXBhYmlsaXRpZXNcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgZGVmYXVsdFRvID0gQXJyYXkuaXNBcnJheSh0aGlzLl9jYXBhYmlsaXRpZXMpID8gW10gOiB7fVxuICAgICAgICAgICAgdGhpcy5fY2FwYWJpbGl0aWVzID0gbWVyZ2UodGhpcy5fY2FwYWJpbGl0aWVzLCBmaWxlQ29uZmlnLmNhcGFiaWxpdGllcyB8fCBkZWZhdWx0VG8sIE1FUkdFX09QVElPTlMpXG4gICAgICAgICAgICBkZWxldGUgZmlsZUNvbmZpZy5jYXBhYmlsaXRpZXNcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBBZGQgaG9va3MgZnJvbSB0aGUgZmlsZSBjb25maWcgYW5kIHJlbW92ZSB0aGVtIGZyb20gZmlsZSBjb25maWcgb2JqZWN0IHRvIGF2b2lkXG4gICAgICAgICAgICAgKiBjb21wbGljYXRpb25zIHdoZW4gdXNpbmcgbWVyZ2UgZnVuY3Rpb25cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgdGhpcy5hZGRTZXJ2aWNlKGZpbGVDb25maWcpXG4gICAgICAgICAgICBmb3IgKGxldCBob29rTmFtZSBvZiBTVVBQT1JURURfSE9PS1MpIHtcbiAgICAgICAgICAgICAgICBkZWxldGUgZmlsZUNvbmZpZ1tob29rTmFtZV1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fY29uZmlnID0gbWVyZ2UodGhpcy5fY29uZmlnLCBmaWxlQ29uZmlnLCBNRVJHRV9PUFRJT05TKVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEZvciBTYXVjZSBMYWJzIFJEQyB3ZSBuZWVkIHRvIGRldGVybWluZSBpZiB0aGUgY29uZmlnIGZpbGUgaGFzIGEgYHRlc3RvYmplY3RfYXBpX2tleWBcbiAgICAgICAgICAgICAqIElmIHNvLCB3ZSBuZWVkIHRvIHByb3ZpZGUgYSBib29sZWFuIHRvIHRoZSBgZGV0ZWN0QmFja2VuZGAgdG8gc2V0IHRoZSBjb3JyZWN0IGhvc3RuYW1lXG4gICAgICAgICAgICAgKlxuICAgICAgICAgICAgICogTk9URTogVGhpcyB3aWxsIG5vdCB3b3JrIGZvciBtdWx0aSByZW1vdGVcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgaXNSREMgPSBBcnJheS5pc0FycmF5KHRoaXMuX2NhcGFiaWxpdGllcykgJiYgdGhpcy5fY2FwYWJpbGl0aWVzLnNvbWUoY2FwYWJpbGl0eSA9PiAndGVzdG9iamVjdF9hcGlfa2V5JyBpbiBjYXBhYmlsaXR5KVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIGRldGVjdCBTZWxlbml1bSBiYWNrZW5kXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHRoaXMuX2NvbmZpZyA9IG1lcmdlKGRldGVjdEJhY2tlbmQodGhpcy5fY29uZmlnLCBpc1JEQyksIHRoaXMuX2NvbmZpZywgTUVSR0VfT1BUSU9OUylcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgbG9nLmVycm9yKGBGYWlsZWQgbG9hZGluZyBjb25maWd1cmF0aW9uIGZpbGU6ICR7ZmlsZVBhdGh9OmAsIGUubWVzc2FnZSlcbiAgICAgICAgICAgIHRocm93IGVcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIG1lcmdlIGV4dGVybmFsIG9iamVjdCB3aXRoIGNvbmZpZyBvYmplY3RcbiAgICAgKiBAcGFyYW0gIHtPYmplY3R9IG9iamVjdCAgZGVzaXJlZCBvYmplY3QgdG8gbWVyZ2UgaW50byB0aGUgY29uZmlnIG9iamVjdFxuICAgICAqL1xuICAgIG1lcmdlIChvYmplY3QgPSB7fSkge1xuICAgICAgICB0aGlzLl9jb25maWcgPSBtZXJnZSh0aGlzLl9jb25maWcsIG9iamVjdCwgTUVSR0VfT1BUSU9OUylcbiAgICAgICAgbGV0IHNwZWMgPSBBcnJheS5pc0FycmF5KG9iamVjdC5zcGVjKSA/IG9iamVjdC5zcGVjIDogW11cbiAgICAgICAgbGV0IGV4Y2x1ZGUgPSBBcnJheS5pc0FycmF5KG9iamVjdC5leGNsdWRlKSA/IG9iamVjdC5leGNsdWRlIDogW11cblxuICAgICAgICAvKipcbiAgICAgICAgICogb3ZlcndyaXRlIGNvbmZpZyBzcGVjcyB0aGF0IGdvdCBwaXBlZCBpbnRvIHRoZSB3ZGlvIGNvbW1hbmRcbiAgICAgICAgICovXG4gICAgICAgIGlmIChvYmplY3Quc3BlY3MgJiYgb2JqZWN0LnNwZWNzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuX2NvbmZpZy5zcGVjcyA9IG9iamVjdC5zcGVjc1xuICAgICAgICB9IGVsc2UgaWYgKG9iamVjdC5leGNsdWRlICYmIG9iamVjdC5leGNsdWRlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuX2NvbmZpZy5leGNsdWRlID0gb2JqZWN0LmV4Y2x1ZGVcbiAgICAgICAgfVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBtZXJnZSBjYXBhYmlsaXRpZXNcbiAgICAgICAgICovXG4gICAgICAgIGNvbnN0IGRlZmF1bHRUbyA9IEFycmF5LmlzQXJyYXkodGhpcy5fY2FwYWJpbGl0aWVzKSA/IFtdIDoge31cbiAgICAgICAgdGhpcy5fY2FwYWJpbGl0aWVzID0gbWVyZ2UodGhpcy5fY2FwYWJpbGl0aWVzLCB0aGlzLl9jb25maWcuY2FwYWJpbGl0aWVzIHx8IGRlZmF1bHRUbywgTUVSR0VfT1BUSU9OUylcblxuICAgICAgICAvKipcbiAgICAgICAgICogcnVuIHNpbmdsZSBzcGVjIGZpbGUgb25seSwgcmVnYXJkbGVzcyBvZiBtdWx0aXBsZS1zcGVjIHNwZWNpZmljYXRpb25cbiAgICAgICAgICovXG4gICAgICAgIGlmIChzcGVjLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuX2NvbmZpZy5zcGVjcyA9IFsuLi50aGlzLnNldEZpbGVQYXRoVG9GaWx0ZXJPcHRpb25zKHNwZWMsIHRoaXMuX2NvbmZpZy5zcGVjcyldXG4gICAgICAgIH1cbiAgICAgICAgaWYgKGV4Y2x1ZGUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5fY29uZmlnLmV4Y2x1ZGUgPSBbLi4udGhpcy5zZXRGaWxlUGF0aFRvRmlsdGVyT3B0aW9ucyhleGNsdWRlLCB0aGlzLl9jb25maWcuZXhjbHVkZSldXG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogdXNlciBhbmQga2V5IGNvdWxkIGdldCBhZGRlZCB2aWEgY2xpIGFyZ3VtZW50cyBzbyB3ZSBuZWVkIHRvIGRldGVjdCBhZ2FpblxuICAgICAgICAgKiBOb3RlOiBjbGkgYXJndW1lbnRzIGFyZSBvbiB0aGUgcmlnaHQgYW5kIG92ZXJ3cml0ZSBjb25maWdcbiAgICAgICAgICogaWYgaG9zdCBhbmQgcG9ydCBhcmUgZGVmYXVsdCwgcmVtb3ZlIHRoZW0gdG8gZ2V0IG5ldyB2YWx1ZXNcbiAgICAgICAgICovXG4gICAgICAgIGxldCBkZWZhdWx0QmFja2VuZCA9IGRldGVjdEJhY2tlbmQoe30pXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICh0aGlzLl9jb25maWcuaG9zdG5hbWUgPT09IGRlZmF1bHRCYWNrZW5kLmhvc3RuYW1lKSAmJlxuICAgICAgICAgICAgKHRoaXMuX2NvbmZpZy5wb3J0ID09PSBkZWZhdWx0QmFja2VuZC5wb3J0KSAmJlxuICAgICAgICAgICAgKHRoaXMuX2NvbmZpZy5wcm90b2NvbCA9PT0gZGVmYXVsdEJhY2tlbmQucHJvdG9jb2wpXG4gICAgICAgICkge1xuICAgICAgICAgICAgZGVsZXRlIHRoaXMuX2NvbmZpZy5ob3N0bmFtZVxuICAgICAgICAgICAgZGVsZXRlIHRoaXMuX2NvbmZpZy5wb3J0XG4gICAgICAgICAgICBkZWxldGUgdGhpcy5fY29uZmlnLnByb3RvY29sXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9jb25maWcgPSBtZXJnZShkZXRlY3RCYWNrZW5kKHRoaXMuX2NvbmZpZyksIHRoaXMuX2NvbmZpZywgTUVSR0VfT1BUSU9OUylcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgaG9va3MgZnJvbSBhbiBleGlzdGluZyBzZXJ2aWNlIHRvIHRoZSBydW5uZXIgY29uZmlnLlxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBzZXJ2aWNlIC0gYW4gb2JqZWN0IHRoYXQgY29udGFpbnMgaG9vayBtZXRob2RzLlxuICAgICAqL1xuICAgIGFkZFNlcnZpY2UgKHNlcnZpY2UpIHtcbiAgICAgICAgZm9yIChsZXQgaG9va05hbWUgb2YgU1VQUE9SVEVEX0hPT0tTKSB7XG4gICAgICAgICAgICBpZiAoIXNlcnZpY2VbaG9va05hbWVdKSB7XG4gICAgICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHR5cGVvZiBzZXJ2aWNlW2hvb2tOYW1lXSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHRoaXMuX2NvbmZpZ1tob29rTmFtZV0ucHVzaChzZXJ2aWNlW2hvb2tOYW1lXS5iaW5kKHNlcnZpY2UpKVxuICAgICAgICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHNlcnZpY2VbaG9va05hbWVdKSkge1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGhvb2sgb2Ygc2VydmljZVtob29rTmFtZV0pIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBob29rID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWdbaG9va05hbWVdLnB1c2goaG9vay5iaW5kKHNlcnZpY2UpKVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZ2V0IGV4Y2x1ZGVkIGZpbGVzIGZyb20gY29uZmlnIHBhdHRlcm5cbiAgICAgKi9cbiAgICBnZXRTcGVjcyAoY2FwU3BlY3MsIGNhcEV4Y2x1ZGUpIHtcbiAgICAgICAgbGV0IHNwZWNzID0gQ29uZmlnUGFyc2VyLmdldEZpbGVQYXRocyh0aGlzLl9jb25maWcuc3BlY3MpXG4gICAgICAgIGxldCBzcGVjICA9IEFycmF5LmlzQXJyYXkodGhpcy5fY29uZmlnLnNwZWMpID8gdGhpcy5fY29uZmlnLnNwZWMgOiBbXVxuICAgICAgICBsZXQgZXhjbHVkZSA9IENvbmZpZ1BhcnNlci5nZXRGaWxlUGF0aHModGhpcy5fY29uZmlnLmV4Y2x1ZGUpXG4gICAgICAgIGxldCBzdWl0ZXMgPSBBcnJheS5pc0FycmF5KHRoaXMuX2NvbmZpZy5zdWl0ZSkgPyB0aGlzLl9jb25maWcuc3VpdGUgOiBbXVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBjaGVjayBpZiB1c2VyIGhhcyBzcGVjaWZpZWQgYSBzcGVjaWZpYyBzdWl0ZXMgdG8gcnVuXG4gICAgICAgICAqL1xuICAgICAgICBpZiAoc3VpdGVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGxldCBzdWl0ZVNwZWNzID0gW11cbiAgICAgICAgICAgIGZvciAobGV0IHN1aXRlTmFtZSBvZiBzdWl0ZXMpIHtcbiAgICAgICAgICAgICAgICAvLyBUb0RvOiBsb2cgd2FybmluZyBpZiBzdWl0ZSB3YXMgbm90IGZvdW5kXG4gICAgICAgICAgICAgICAgbGV0IHN1aXRlID0gdGhpcy5fY29uZmlnLnN1aXRlc1tzdWl0ZU5hbWVdXG5cbiAgICAgICAgICAgICAgICBpZiAoc3VpdGUgJiYgQXJyYXkuaXNBcnJheShzdWl0ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgc3VpdGVTcGVjcyA9IHN1aXRlU3BlY3MuY29uY2F0KENvbmZpZ1BhcnNlci5nZXRGaWxlUGF0aHMoc3VpdGUpKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHN1aXRlU3BlY3MubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgc3VpdGUocykgXCIke3N1aXRlcy5qb2luKCdcIiwgXCInKX1cIiB5b3Ugc3BlY2lmaWVkIGRvbid0IGV4aXN0IGAgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaW4geW91ciBjb25maWcgZmlsZSBvciBkb2VzblxcJ3QgY29udGFpbiBhbnkgZmlsZXMhJylcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWxsb3cgLS1zdWl0ZSBhbmQgLS1zcGVjIHRvIGJvdGggYmUgZGVmaW5lZCBvbiB0aGUgY29tbWFuZCBsaW5lXG4gICAgICAgICAgICAvLyBSZW1vdmluZyBhbnkgZHVwbGljYXRlIHRlc3RzIHRoYXQgY291bGQgYmUgaW5jbHVkZWRcbiAgICAgICAgICAgIGxldCB0bXBTcGVjcyA9IHNwZWMubGVuZ3RoID4gMCA/IFsuLi5zcGVjcywgLi4uc3VpdGVTcGVjc10gOiBzdWl0ZVNwZWNzXG5cbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNhcFNwZWNzKSkge1xuICAgICAgICAgICAgICAgIHRtcFNwZWNzID0gdG1wU3BlY3MuY29uY2F0KENvbmZpZ1BhcnNlci5nZXRGaWxlUGF0aHMoY2FwU3BlY3MpKVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjYXBFeGNsdWRlKSkge1xuICAgICAgICAgICAgICAgIGV4Y2x1ZGUgPSBleGNsdWRlLmNvbmNhdChDb25maWdQYXJzZXIuZ2V0RmlsZVBhdGhzKGNhcEV4Y2x1ZGUpKVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGVjcyA9IFsuLi5uZXcgU2V0KHRtcFNwZWNzKV1cbiAgICAgICAgICAgIHJldHVybiBzcGVjcy5maWx0ZXIoc3BlYyA9PiAhZXhjbHVkZS5pbmNsdWRlcyhzcGVjKSlcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNhcFNwZWNzKSkge1xuICAgICAgICAgICAgc3BlY3MgPSBzcGVjcy5jb25jYXQoQ29uZmlnUGFyc2VyLmdldEZpbGVQYXRocyhjYXBTcGVjcykpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjYXBFeGNsdWRlKSkge1xuICAgICAgICAgICAgZXhjbHVkZSA9IGV4Y2x1ZGUuY29uY2F0KENvbmZpZ1BhcnNlci5nZXRGaWxlUGF0aHMoY2FwRXhjbHVkZSkpXG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gc3BlY3MuZmlsdGVyKHNwZWMgPT4gIWV4Y2x1ZGUuaW5jbHVkZXMoc3BlYykpXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogc2V0cyBjb25maWcgYXR0cmlidXRlIHdpdGggZmlsZSBwYXRocyBmcm9tIGZpbHRlcmluZ1xuICAgICAqIG9wdGlvbnMgZnJvbSBjbGkgYXJndW1lbnRcbiAgICAgKlxuICAgICAqIEBwYXJhbSAge1N0cmluZ30gY2xpQXJnRmlsZUxpc3QgIGxpc3Qgb2YgZmlsZXMgaW4gYSBzdHJpbmcgZnJvbVxuICAgICAqIEBwYXJhbSAge09iamVjdH0gY29uZmlnICBjb25maWcgb2JqZWN0IHRoYXQgc3RvcmVzIHRoZSBzcGVjIGFuZCBleGxjdWRlIGF0dHJpYnV0ZXNcbiAgICAgKiBjbGkgYXJndW1lbnRcbiAgICAgKiBAcmV0dXJuIHtTdHJpbmdbXX0gTGlzdCBvZiBmaWxlcyB0aGF0IHNob3VsZCBiZSBpbmNsdWRlZCBvciBleGNsdWRlZFxuICAgICAqL1xuICAgIHNldEZpbGVQYXRoVG9GaWx0ZXJPcHRpb25zIChjbGlBcmdGaWxlTGlzdCwgY29uZmlnKSB7XG4gICAgICAgIGNvbnN0IGZpbGVzVG9GaWx0ZXIgPSBuZXcgU2V0KClcbiAgICAgICAgY29uc3QgZmlsZUxpc3QgPSBDb25maWdQYXJzZXIuZ2V0RmlsZVBhdGhzKGNvbmZpZylcbiAgICAgICAgY2xpQXJnRmlsZUxpc3QuZm9yRWFjaChmaWx0ZXJlZEZpbGUgPT4ge1xuICAgICAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmMoZmlsdGVyZWRGaWxlKSAmJiBmcy5sc3RhdFN5bmMoZmlsdGVyZWRGaWxlKS5pc0ZpbGUoKSkge1xuICAgICAgICAgICAgICAgIGZpbGVzVG9GaWx0ZXIuYWRkKHBhdGgucmVzb2x2ZShwcm9jZXNzLmN3ZCgpLCBmaWx0ZXJlZEZpbGUpKVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBmaWxlTGlzdC5mb3JFYWNoKGZpbGUgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZmlsZS5tYXRjaChmaWx0ZXJlZEZpbGUpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxlc1RvRmlsdGVyLmFkZChmaWxlKVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgaWYgKGZpbGVzVG9GaWx0ZXIuc2l6ZSA9PT0gMCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBzcGVjIGZpbGUocykgJHtjbGlBcmdGaWxlTGlzdC5qb2luKCcsICcpfSBub3QgZm91bmRgKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmaWxlc1RvRmlsdGVyXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogcmV0dXJuIGNvbmZpZ3NcbiAgICAgKi9cbiAgICBnZXRDb25maWcgKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlnXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogcmV0dXJuIGNhcGFiaWxpdGllc1xuICAgICAqL1xuICAgIGdldENhcGFiaWxpdGllcyAoaSkge1xuICAgICAgICBpZiAodHlwZW9mIGkgPT09ICdudW1iZXInICYmIHRoaXMuX2NhcGFiaWxpdGllc1tpXSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2NhcGFiaWxpdGllc1tpXVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuX2NhcGFiaWxpdGllc1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHJldHVybnMgYSBmbGF0dGVuIGxpc3Qgb2YgZ2xvYmVkIGZpbGVzXG4gICAgICpcbiAgICAgKiBAcGFyYW0gIHtTdHJpbmdbXX0gZmlsZW5hbWVzICBsaXN0IG9mIGZpbGVzIHRvIGdsb2JcbiAgICAgKiBAcmV0dXJuIHtTdHJpbmdbXX0gbGlzdCBvZiBmaWxlc1xuICAgICAqL1xuICAgIHN0YXRpYyBnZXRGaWxlUGF0aHMgKHBhdHRlcm5zLCBvbWl0V2FybmluZ3MpIHtcbiAgICAgICAgbGV0IGZpbGVzID0gW11cblxuICAgICAgICBpZiAodHlwZW9mIHBhdHRlcm5zID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgcGF0dGVybnMgPSBbcGF0dGVybnNdXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkocGF0dGVybnMpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3NwZWNzIG9yIGV4Y2x1ZGUgcHJvcGVydHkgc2hvdWxkIGJlIGFuIGFycmF5IG9mIHN0cmluZ3MnKVxuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChsZXQgcGF0dGVybiBvZiBwYXR0ZXJucykge1xuICAgICAgICAgICAgbGV0IGZpbGVuYW1lcyA9IGdsb2Iuc3luYyhwYXR0ZXJuKVxuXG4gICAgICAgICAgICBmaWxlbmFtZXMgPSBmaWxlbmFtZXMuZmlsdGVyKGZpbGVuYW1lID0+XG4gICAgICAgICAgICAgICAgZmlsZW5hbWUuc2xpY2UoLTMpID09PSAnLmpzJyB8fFxuICAgICAgICAgICAgICAgIGZpbGVuYW1lLnNsaWNlKC00KSA9PT0gJy5lczYnIHx8XG4gICAgICAgICAgICAgICAgZmlsZW5hbWUuc2xpY2UoLTMpID09PSAnLnRzJyB8fFxuICAgICAgICAgICAgICAgIGZpbGVuYW1lLnNsaWNlKC04KSA9PT0gJy5mZWF0dXJlJyB8fFxuICAgICAgICAgICAgICAgIGZpbGVuYW1lLnNsaWNlKC03KSA9PT0gJy5jb2ZmZWUnKVxuXG4gICAgICAgICAgICBmaWxlbmFtZXMgPSBmaWxlbmFtZXMubWFwKGZpbGVuYW1lID0+XG4gICAgICAgICAgICAgICAgcGF0aC5pc0Fic29sdXRlKGZpbGVuYW1lKSA/IHBhdGgubm9ybWFsaXplKGZpbGVuYW1lKSA6IHBhdGgucmVzb2x2ZShwcm9jZXNzLmN3ZCgpLCBmaWxlbmFtZSkpXG5cbiAgICAgICAgICAgIGlmIChmaWxlbmFtZXMubGVuZ3RoID09PSAwICYmICFvbWl0V2FybmluZ3MpIHtcbiAgICAgICAgICAgICAgICBsb2cud2FybigncGF0dGVybicsIHBhdHRlcm4sICdkaWQgbm90IG1hdGNoIGFueSBmaWxlJylcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZmlsZXMgPSBtZXJnZShmaWxlcywgZmlsZW5hbWVzLCBNRVJHRV9PUFRJT05TKVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZpbGVzXG4gICAgfVxufVxuIl19
224
+ exports.default = ConfigParser;
package/build/shim.js CHANGED
@@ -5,8 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.executeAsync = exports.executeSync = exports.hasWdioSyncSupport = exports.wrapCommand = exports.runFnInFiberContext = exports.runTestInFiberContext = exports.executeHooksWithArgs = void 0;
7
7
 
8
- require("source-map-support/register");
9
-
10
8
  var _logger = _interopRequireDefault(require("@wdio/logger"));
11
9
 
12
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -16,16 +14,9 @@ const log = (0, _logger.default)('@wdio/config');
16
14
  const NOOP = () => {};
17
15
 
18
16
  let executeHooksWithArgs = async function executeHooksWithArgsShim(hooks, args) {
19
- /**
20
- * make sure hooks are an array of functions
21
- */
22
17
  if (!Array.isArray(hooks)) {
23
18
  hooks = [hooks];
24
19
  }
25
- /**
26
- * make sure args is an array since we are calling apply
27
- */
28
-
29
20
 
30
21
  if (!Array.isArray(args)) {
31
22
  args = [args];
@@ -40,11 +31,6 @@ let executeHooksWithArgs = async function executeHooksWithArgsShim(hooks, args)
40
31
  log.error(e.stack);
41
32
  return resolve();
42
33
  }
43
- /**
44
- * if a promise is returned make sure we don't have a catch handler
45
- * so in case of a rejection it won't cause the hook to fail
46
- */
47
-
48
34
 
49
35
  if (result && typeof result.then === 'function') {
50
36
  return result.then(resolve, e => {
@@ -81,15 +67,10 @@ let executeSync = (fn, _, args = []) => fn.apply(void 0, args);
81
67
  exports.executeSync = executeSync;
82
68
 
83
69
  let executeAsync = (fn, _, args = []) => fn.apply(void 0, args);
84
- /**
85
- * shim to make sure that we only wrap commands if wdio-sync is installed as dependency
86
- */
87
-
88
70
 
89
71
  exports.executeAsync = executeAsync;
90
72
 
91
73
  try {
92
- // eslint-disable-next-line import/no-unresolved
93
74
  const wdioSync = require('@wdio/sync');
94
75
 
95
76
  exports.hasWdioSyncSupport = hasWdioSyncSupport = true;
@@ -99,6 +80,4 @@ try {
99
80
  exports.executeHooksWithArgs = executeHooksWithArgs = wdioSync.executeHooksWithArgs;
100
81
  exports.executeSync = executeSync = wdioSync.executeSync;
101
82
  exports.executeAsync = executeAsync = wdioSync.executeAsync;
102
- } catch (_unused) {// do nothing
103
- }
104
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zaGltLmpzIl0sIm5hbWVzIjpbImxvZyIsIk5PT1AiLCJleGVjdXRlSG9va3NXaXRoQXJncyIsImV4ZWN1dGVIb29rc1dpdGhBcmdzU2hpbSIsImhvb2tzIiwiYXJncyIsIkFycmF5IiwiaXNBcnJheSIsIm1hcCIsImhvb2siLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlc3VsdCIsImFwcGx5IiwiZSIsImVycm9yIiwic3RhY2siLCJ0aGVuIiwiYWxsIiwicnVuVGVzdEluRmliZXJDb250ZXh0IiwicnVuRm5JbkZpYmVyQ29udGV4dCIsImZuIiwid3JhcENvbW1hbmQiLCJfIiwib3JpZ0ZuIiwiaGFzV2Rpb1N5bmNTdXBwb3J0IiwiZXhlY3V0ZVN5bmMiLCJleGVjdXRlQXN5bmMiLCJ3ZGlvU3luYyIsInJlcXVpcmUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOzs7O0FBRUEsTUFBTUEsR0FBRyxHQUFHLHFCQUFPLGNBQVAsQ0FBWjs7QUFDQSxNQUFNQyxJQUFJLEdBQUcsTUFBTSxDQUFFLENBQXJCOztBQUVPLElBQUlDLG9CQUFvQixHQUFHLGVBQWVDLHdCQUFmLENBQXlDQyxLQUF6QyxFQUFnREMsSUFBaEQsRUFBc0Q7QUFDcEY7OztBQUdBLE1BQUksQ0FBQ0MsS0FBSyxDQUFDQyxPQUFOLENBQWNILEtBQWQsQ0FBTCxFQUEyQjtBQUN2QkEsSUFBQUEsS0FBSyxHQUFHLENBQUNBLEtBQUQsQ0FBUjtBQUNIO0FBRUQ7Ozs7O0FBR0EsTUFBSSxDQUFDRSxLQUFLLENBQUNDLE9BQU4sQ0FBY0YsSUFBZCxDQUFMLEVBQTBCO0FBQ3RCQSxJQUFBQSxJQUFJLEdBQUcsQ0FBQ0EsSUFBRCxDQUFQO0FBQ0g7O0FBRURELEVBQUFBLEtBQUssR0FBR0EsS0FBSyxDQUFDSSxHQUFOLENBQVdDLElBQUQsSUFBVSxJQUFJQyxPQUFKLENBQWFDLE9BQUQsSUFBYTtBQUNqRCxRQUFJQyxNQUFKOztBQUVBLFFBQUk7QUFDQUEsTUFBQUEsTUFBTSxHQUFHSCxJQUFJLENBQUNJLEtBQUwsQ0FBVyxJQUFYLEVBQWlCUixJQUFqQixDQUFUO0FBQ0gsS0FGRCxDQUVFLE9BQU9TLENBQVAsRUFBVTtBQUNSZCxNQUFBQSxHQUFHLENBQUNlLEtBQUosQ0FBVUQsQ0FBQyxDQUFDRSxLQUFaO0FBQ0EsYUFBT0wsT0FBTyxFQUFkO0FBQ0g7QUFFRDs7Ozs7O0FBSUEsUUFBSUMsTUFBTSxJQUFJLE9BQU9BLE1BQU0sQ0FBQ0ssSUFBZCxLQUF1QixVQUFyQyxFQUFpRDtBQUM3QyxhQUFPTCxNQUFNLENBQUNLLElBQVAsQ0FBWU4sT0FBWixFQUFzQkcsQ0FBRCxJQUFPO0FBQy9CZCxRQUFBQSxHQUFHLENBQUNlLEtBQUosQ0FBVUQsQ0FBQyxDQUFDRSxLQUFaO0FBQ0FMLFFBQUFBLE9BQU87QUFDVixPQUhNLENBQVA7QUFJSDs7QUFFREEsSUFBQUEsT0FBTyxDQUFDQyxNQUFELENBQVA7QUFDSCxHQXRCMkIsQ0FBcEIsQ0FBUjtBQXdCQSxTQUFPRixPQUFPLENBQUNRLEdBQVIsQ0FBWWQsS0FBWixDQUFQO0FBQ0gsQ0F4Q007OztBQTBDQSxJQUFJZSxxQkFBcUIsR0FBR2xCLElBQTVCOzs7QUFDQSxJQUFJbUIsbUJBQW1CLEdBQUlDLEVBQUQsSUFBUTtBQUNyQyxTQUFPLFVBQVUsR0FBR2hCLElBQWIsRUFBbUI7QUFDdEIsV0FBT0ssT0FBTyxDQUFDQyxPQUFSLENBQWdCVSxFQUFFLENBQUNSLEtBQUgsQ0FBUyxJQUFULEVBQWVSLElBQWYsQ0FBaEIsQ0FBUDtBQUNILEdBRkQ7QUFHSCxDQUpNOzs7O0FBS0EsSUFBSWlCLFdBQVcsR0FBRyxDQUFDQyxDQUFELEVBQUlDLE1BQUosS0FBZUEsTUFBakM7OztBQUNBLElBQUlDLGtCQUFrQixHQUFHLEtBQXpCOzs7QUFDQSxJQUFJQyxXQUFXLEdBQUcsQ0FBQ0wsRUFBRCxFQUFLRSxDQUFMLEVBQVFsQixJQUFJLEdBQUcsRUFBZixLQUFzQmdCLEVBQUUsQ0FBQ1IsS0FBSCxTQUFlUixJQUFmLENBQXhDOzs7O0FBQ0EsSUFBSXNCLFlBQVksR0FBRyxDQUFDTixFQUFELEVBQUtFLENBQUwsRUFBUWxCLElBQUksR0FBRyxFQUFmLEtBQXNCZ0IsRUFBRSxDQUFDUixLQUFILFNBQWVSLElBQWYsQ0FBekM7QUFFUDs7Ozs7OztBQUdBLElBQUk7QUFDQTtBQUNBLFFBQU11QixRQUFRLEdBQUdDLE9BQU8sQ0FBQyxZQUFELENBQXhCOztBQUNBLCtCQUFBSixrQkFBa0IsR0FBRyxJQUFyQjtBQUNBLGdDQUFBTCxtQkFBbUIsR0FBR1EsUUFBUSxDQUFDUixtQkFBL0I7QUFDQSxrQ0FBQUQscUJBQXFCLEdBQUdTLFFBQVEsQ0FBQ1QscUJBQWpDO0FBQ0Esd0JBQUFHLFdBQVcsR0FBR00sUUFBUSxDQUFDTixXQUF2QjtBQUNBLGlDQUFBcEIsb0JBQW9CLEdBQUcwQixRQUFRLENBQUMxQixvQkFBaEM7QUFDQSx3QkFBQXdCLFdBQVcsR0FBR0UsUUFBUSxDQUFDRixXQUF2QjtBQUNBLHlCQUFBQyxZQUFZLEdBQUdDLFFBQVEsQ0FBQ0QsWUFBeEI7QUFDSCxDQVZELENBVUUsZ0JBQU0sQ0FDSjtBQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGxvZ2dlciBmcm9tICdAd2Rpby9sb2dnZXInXG5cbmNvbnN0IGxvZyA9IGxvZ2dlcignQHdkaW8vY29uZmlnJylcbmNvbnN0IE5PT1AgPSAoKSA9PiB7fVxuXG5leHBvcnQgbGV0IGV4ZWN1dGVIb29rc1dpdGhBcmdzID0gYXN5bmMgZnVuY3Rpb24gZXhlY3V0ZUhvb2tzV2l0aEFyZ3NTaGltIChob29rcywgYXJncykge1xuICAgIC8qKlxuICAgICAqIG1ha2Ugc3VyZSBob29rcyBhcmUgYW4gYXJyYXkgb2YgZnVuY3Rpb25zXG4gICAgICovXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGhvb2tzKSkge1xuICAgICAgICBob29rcyA9IFtob29rc11cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBtYWtlIHN1cmUgYXJncyBpcyBhbiBhcnJheSBzaW5jZSB3ZSBhcmUgY2FsbGluZyBhcHBseVxuICAgICAqL1xuICAgIGlmICghQXJyYXkuaXNBcnJheShhcmdzKSkge1xuICAgICAgICBhcmdzID0gW2FyZ3NdXG4gICAgfVxuXG4gICAgaG9va3MgPSBob29rcy5tYXAoKGhvb2spID0+IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgIGxldCByZXN1bHRcblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmVzdWx0ID0gaG9vay5hcHBseShudWxsLCBhcmdzKVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBsb2cuZXJyb3IoZS5zdGFjaylcbiAgICAgICAgICAgIHJldHVybiByZXNvbHZlKClcbiAgICAgICAgfVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBpZiBhIHByb21pc2UgaXMgcmV0dXJuZWQgbWFrZSBzdXJlIHdlIGRvbid0IGhhdmUgYSBjYXRjaCBoYW5kbGVyXG4gICAgICAgICAqIHNvIGluIGNhc2Ugb2YgYSByZWplY3Rpb24gaXQgd29uJ3QgY2F1c2UgdGhlIGhvb2sgdG8gZmFpbFxuICAgICAgICAgKi9cbiAgICAgICAgaWYgKHJlc3VsdCAmJiB0eXBlb2YgcmVzdWx0LnRoZW4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQudGhlbihyZXNvbHZlLCAoZSkgPT4ge1xuICAgICAgICAgICAgICAgIGxvZy5lcnJvcihlLnN0YWNrKVxuICAgICAgICAgICAgICAgIHJlc29sdmUoKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgfVxuXG4gICAgICAgIHJlc29sdmUocmVzdWx0KVxuICAgIH0pKVxuXG4gICAgcmV0dXJuIFByb21pc2UuYWxsKGhvb2tzKVxufVxuXG5leHBvcnQgbGV0IHJ1blRlc3RJbkZpYmVyQ29udGV4dCA9IE5PT1BcbmV4cG9ydCBsZXQgcnVuRm5JbkZpYmVyQ29udGV4dCA9IChmbikgPT4ge1xuICAgIHJldHVybiBmdW5jdGlvbiAoLi4uYXJncykge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGZuLmFwcGx5KHRoaXMsIGFyZ3MpKVxuICAgIH1cbn1cbmV4cG9ydCBsZXQgd3JhcENvbW1hbmQgPSAoXywgb3JpZ0ZuKSA9PiBvcmlnRm5cbmV4cG9ydCBsZXQgaGFzV2Rpb1N5bmNTdXBwb3J0ID0gZmFsc2VcbmV4cG9ydCBsZXQgZXhlY3V0ZVN5bmMgPSAoZm4sIF8sIGFyZ3MgPSBbXSkgPT4gZm4uYXBwbHkodGhpcywgYXJncylcbmV4cG9ydCBsZXQgZXhlY3V0ZUFzeW5jID0gKGZuLCBfLCBhcmdzID0gW10pID0+IGZuLmFwcGx5KHRoaXMsIGFyZ3MpXG5cbi8qKlxuICogc2hpbSB0byBtYWtlIHN1cmUgdGhhdCB3ZSBvbmx5IHdyYXAgY29tbWFuZHMgaWYgd2Rpby1zeW5jIGlzIGluc3RhbGxlZCBhcyBkZXBlbmRlbmN5XG4gKi9cbnRyeSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnJlc29sdmVkXG4gICAgY29uc3Qgd2Rpb1N5bmMgPSByZXF1aXJlKCdAd2Rpby9zeW5jJylcbiAgICBoYXNXZGlvU3luY1N1cHBvcnQgPSB0cnVlXG4gICAgcnVuRm5JbkZpYmVyQ29udGV4dCA9IHdkaW9TeW5jLnJ1bkZuSW5GaWJlckNvbnRleHRcbiAgICBydW5UZXN0SW5GaWJlckNvbnRleHQgPSB3ZGlvU3luYy5ydW5UZXN0SW5GaWJlckNvbnRleHRcbiAgICB3cmFwQ29tbWFuZCA9IHdkaW9TeW5jLndyYXBDb21tYW5kXG4gICAgZXhlY3V0ZUhvb2tzV2l0aEFyZ3MgPSB3ZGlvU3luYy5leGVjdXRlSG9va3NXaXRoQXJnc1xuICAgIGV4ZWN1dGVTeW5jID0gd2Rpb1N5bmMuZXhlY3V0ZVN5bmNcbiAgICBleGVjdXRlQXN5bmMgPSB3ZGlvU3luYy5leGVjdXRlQXN5bmNcbn0gY2F0Y2gge1xuICAgIC8vIGRvIG5vdGhpbmdcbn1cbiJdfQ==
83
+ } catch (_unused) {}
package/build/utils.js CHANGED
@@ -6,15 +6,11 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.getSauceEndpoint = getSauceEndpoint;
7
7
  exports.detectBackend = detectBackend;
8
8
  exports.validateConfig = validateConfig;
9
-
10
- require("source-map-support/register");
11
-
12
9
  const DEFAULT_HOSTNAME = '127.0.0.1';
13
10
  const DEFAULT_PORT = 4444;
14
11
  const DEFAULT_PROTOCOL = 'http';
15
12
  const REGION_MAPPING = {
16
13
  'us': '',
17
- // default endpoint
18
14
  'eu': 'eu-central-1.',
19
15
  'eu-central-1': 'eu-central-1.',
20
16
  'us-east-1': 'us-east-1.'
@@ -29,10 +25,6 @@ function getSauceEndpoint(region, isRDC) {
29
25
 
30
26
  return `ondemand.${REGION_MAPPING[shortRegion]}saucelabs.com`;
31
27
  }
32
- /**
33
- * helper to detect the Selenium backend according to given capabilities
34
- */
35
-
36
28
 
37
29
  function detectBackend(options = {}, isRDC = false) {
38
30
  let {
@@ -44,10 +36,6 @@ function detectBackend(options = {}, isRDC = false) {
44
36
  region,
45
37
  headless
46
38
  } = options;
47
- /**
48
- * browserstack
49
- * e.g. zHcv9sZ39ip8ZPsxBVJ2
50
- */
51
39
 
52
40
  if (typeof user === 'string' && typeof key === 'string' && key.length === 20) {
53
41
  return {
@@ -56,11 +44,6 @@ function detectBackend(options = {}, isRDC = false) {
56
44
  port: 443
57
45
  };
58
46
  }
59
- /**
60
- * testingbot
61
- * e.g. ec337d7b677720a4dde7bd72be0bfc67
62
- */
63
-
64
47
 
65
48
  if (typeof user === 'string' && typeof key === 'string' && key.length === 32) {
66
49
  return {
@@ -68,16 +51,8 @@ function detectBackend(options = {}, isRDC = false) {
68
51
  port: 80
69
52
  };
70
53
  }
71
- /**
72
- * Sauce Labs
73
- * e.g. 50aa152c-1932-B2f0-9707-18z46q2n1mb0
74
- */
75
54
 
76
-
77
- if (typeof user === 'string' && typeof key === 'string' && key.length === 36 || // When SC is used a user needs to be provided and `isRDC` needs to be true
78
- typeof user === 'string' && isRDC || // Or only RDC
79
- isRDC) {
80
- // Sauce headless is currently only in us-east-1
55
+ if (typeof user === 'string' && typeof key === 'string' && key.length === 36 || typeof user === 'string' && isRDC || isRDC) {
81
56
  const sauceRegion = headless ? 'us-east-1' : region;
82
57
  return {
83
58
  protocol: protocol || 'https',
@@ -86,21 +61,9 @@ function detectBackend(options = {}, isRDC = false) {
86
61
  };
87
62
  }
88
63
 
89
- if (
90
- /**
91
- * user and key are set in config
92
- */
93
- (typeof user === 'string' || typeof key === 'string') &&
94
- /**
95
- * but no custom WebDriver endpoint was configured
96
- */
97
- !hostname) {
64
+ if ((typeof user === 'string' || typeof key === 'string') && !hostname) {
98
65
  throw new Error('A "user" or "key" was provided but could not be connected to a ' + 'known cloud service (SauceLabs, Browerstack or Testingbot). ' + 'Please check if given user and key properties are correct!');
99
66
  }
100
- /**
101
- * no cloud provider detected, fallback to local browser driver
102
- */
103
-
104
67
 
105
68
  return {
106
69
  hostname: hostname || DEFAULT_HOSTNAME,
@@ -108,21 +71,11 @@ function detectBackend(options = {}, isRDC = false) {
108
71
  protocol: protocol || DEFAULT_PROTOCOL
109
72
  };
110
73
  }
111
- /**
112
- * validates configurations based on default values
113
- * @param {Object} defaults object describing all allowed properties
114
- * @param {Object} options option to check agains
115
- * @return {Object} validated config enriched with default values
116
- */
117
-
118
74
 
119
75
  function validateConfig(defaults, options) {
120
76
  const params = {};
121
77
 
122
78
  for (const [name, expectedOption] of Object.entries(defaults)) {
123
- /**
124
- * check if options is given
125
- */
126
79
  if (typeof options[name] === 'undefined' && !expectedOption.default && expectedOption.required) {
127
80
  throw new Error(`Required option "${name}" is missing`);
128
81
  }
@@ -153,5 +106,4 @@ function validateConfig(defaults, options) {
153
106
  }
154
107
 
155
108
  return params;
156
- }
157
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy5qcyJdLCJuYW1lcyI6WyJERUZBVUxUX0hPU1ROQU1FIiwiREVGQVVMVF9QT1JUIiwiREVGQVVMVF9QUk9UT0NPTCIsIlJFR0lPTl9NQVBQSU5HIiwiZ2V0U2F1Y2VFbmRwb2ludCIsInJlZ2lvbiIsImlzUkRDIiwic2hvcnRSZWdpb24iLCJkZXRlY3RCYWNrZW5kIiwib3B0aW9ucyIsInBvcnQiLCJob3N0bmFtZSIsInVzZXIiLCJrZXkiLCJwcm90b2NvbCIsImhlYWRsZXNzIiwibGVuZ3RoIiwic2F1Y2VSZWdpb24iLCJFcnJvciIsInZhbGlkYXRlQ29uZmlnIiwiZGVmYXVsdHMiLCJwYXJhbXMiLCJuYW1lIiwiZXhwZWN0ZWRPcHRpb24iLCJPYmplY3QiLCJlbnRyaWVzIiwiZGVmYXVsdCIsInJlcXVpcmVkIiwidHlwZSIsImUiLCJtZXNzYWdlIiwibWF0Y2giXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsTUFBTUEsZ0JBQWdCLEdBQUcsV0FBekI7QUFDQSxNQUFNQyxZQUFZLEdBQUcsSUFBckI7QUFDQSxNQUFNQyxnQkFBZ0IsR0FBRyxNQUF6QjtBQUVBLE1BQU1DLGNBQWMsR0FBRztBQUNuQixRQUFNLEVBRGE7QUFDVDtBQUNWLFFBQU0sZUFGYTtBQUduQixrQkFBZ0IsZUFIRztBQUluQixlQUFhO0FBSk0sQ0FBdkI7O0FBT08sU0FBU0MsZ0JBQVQsQ0FBMkJDLE1BQTNCLEVBQW1DQyxLQUFuQyxFQUEwQztBQUM3QyxRQUFNQyxXQUFXLEdBQUdKLGNBQWMsQ0FBQ0UsTUFBRCxDQUFkLEdBQXlCQSxNQUF6QixHQUFrQyxJQUF0RDs7QUFDQSxNQUFJQyxLQUFKLEVBQVU7QUFDTixXQUFRLEdBQUVDLFdBQVkseUJBQXRCO0FBQ0g7O0FBRUQsU0FBUSxZQUFXSixjQUFjLENBQUNJLFdBQUQsQ0FBYyxlQUEvQztBQUNIO0FBRUQ7Ozs7O0FBR08sU0FBU0MsYUFBVCxDQUF3QkMsT0FBTyxHQUFHLEVBQWxDLEVBQXNDSCxLQUFL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SUFBRCxDQUFkLEtBQXlCLFdBQTdCLEVBQTBDO0FBQ3RDLFVBQUksT0FBT0MsY0FBYyxDQUFDSyxJQUF0QixLQUErQixRQUEvQixJQUEyQyxPQUFPbkIsT0FBTyxDQUFDYSxJQUFELENBQWQsS0FBeUJDLGNBQWMsQ0FBQ0ssSUFBdkYsRUFBNkY7QUFDekYsY0FBTSxJQUFJVixLQUFKLENBQVcsb0JBQW1CSSxJQUFLLG1CQUFrQkMsY0FBYyxDQUFDSyxJQUFLLFlBQVcsT0FBT25CLE9BQU8sQ0FBQ2EsSUFBRCxDQUFPLEVBQXpHLENBQU47QUFDSDs7QUFFRCxVQUFJLE9BQU9DLGNBQWMsQ0FBQ0ssSUFBdEIsS0FBK0IsVUFBbkMsRUFBK0M7QUFDM0MsWUFBSTtBQUNBTCxVQUFBQSxjQUFjLENBQUNLLElBQWYsQ0FBb0JuQixPQUFPLENBQUNhLElBQUQsQ0FBM0I7QUFDSCxTQUZELENBRUUsT0FBT08sQ0FBUCxFQUFVO0FBQ1IsZ0JBQU0sSUFBSVgsS0FBSixDQUFXLDBCQUF5QkksSUFBSyxhQUFZTyxDQUFDLENBQUNDLE9BQVEsRUFBL0QsQ0FBTjtBQUNIO0FBQ0o7O0FBRUQsVUFBSVAsY0FBYyxDQUFDUSxLQUFmLElBQXdCLENBQUN0QixPQUFPLENBQUNhLElBQUQsQ0FBUCxDQUFjUyxLQUFkLENBQW9CUixjQUFjLENBQUNRLEtBQW5DLENBQTdCLEVBQXdFO0FBQ3BFLGNBQU0sSUFBSWIsS0FBSixDQUFXLFdBQVVJLElBQUssb0NBQW1DQyxjQUFjLENBQUNRLEtBQU0sRUFBbEYsQ0FBTjtBQUNIOztBQUVEVixNQUFBQSxNQUFNLENBQUNDLElBQUQsQ0FBTixHQUFlYixPQUFPLENBQUNhLElBQUQsQ0FBdEI7QUFDSDtBQUNKOztBQUVELFNBQU9ELE1BQVA7QUFDSCIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IERFRkFVTFRfSE9TVE5BTUUgPSAnMTI3LjAuMC4xJ1xuY29uc3QgREVGQVVMVF9QT1JUID0gNDQ0NFxuY29uc3QgREVGQVVMVF9QUk9UT0NPTCA9ICdodHRwJ1xuXG5jb25zdCBSRUdJT05fTUFQUElORyA9IHtcbiAgICAndXMnOiAnJywgLy8gZGVmYXVsdCBlbmRwb2ludFxuICAgICdldSc6ICdldS1jZW50cmFsLTEuJyxcbiAgICAnZXUtY2VudHJhbC0xJzogJ2V1LWNlbnRyYWwtMS4nLFxuICAgICd1cy1lYXN0LTEnOiAndXMtZWFzdC0xLidcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNhdWNlRW5kcG9pbnQgKHJlZ2lvbiwgaXNSREMpIHtcbiAgICBjb25zdCBzaG9ydFJlZ2lvbiA9IFJFR0lPTl9NQVBQSU5HW3JlZ2lvbl0gPyByZWdpb24gOiAndXMnXG4gICAgaWYgKGlzUkRDKXtcbiAgICAgICAgcmV0dXJuIGAke3Nob3J0UmVnaW9ufTEuYXBwaXVtLnRlc3RvYmplY3QuY29tYFxuICAgIH1cblxuICAgIHJldHVybiBgb25kZW1hbmQuJHtSRUdJT05fTUFQUElOR1tzaG9ydFJlZ2lvbl19c2F1Y2VsYWJzLmNvbWBcbn1cblxuLyoqXG4gKiBoZWxwZXIgdG8gZGV0ZWN0IHRoZSBTZWxlbml1bSBiYWNrZW5kIGFjY29yZGluZyB0byBnaXZlbiBjYXBhYmlsaXRpZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRldGVjdEJhY2tlbmQgKG9wdGlvbnMgPSB7fSwgaXNSREMgPSBmYWxzZSkge1xuICAgIGxldCB7IHBvcnQsIGhvc3RuYW1lLCB1c2VyLCBrZXksIHByb3RvY29sLCByZWdpb24sIGhlYWRsZXNzIH0gPSBvcHRpb25zXG5cbiAgICAvKipcbiAgICAgKiBicm93c2Vyc3RhY2tcbiAgICAgKiBlLmcuIHpIY3Y5c1ozOWlwOFpQc3hCVkoyXG4gICAgICovXG4gICAgaWYgKHR5cGVvZiB1c2VyID09PSAnc3RyaW5nJyAmJiB0eXBlb2Yga2V5ID09PSAnc3RyaW5nJyAmJiBrZXkubGVuZ3RoID09PSAyMCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcHJvdG9jb2w6ICdodHRwcycsXG4gICAgICAgICAgICBob3N0bmFtZTogJ2h1Yi1jbG91ZC5icm93c2Vyc3RhY2suY29tJyxcbiAgICAgICAgICAgIHBvcnQ6IDQ0M1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogdGVzdGluZ2JvdFxuICAgICAqIGUuZy4gZWMzMzdkN2I2Nzc3MjBhNGRkZTdiZDcyYmUwYmZjNjdcbiAgICAgKi9cbiAgICBpZiAodHlwZW9mIHVzZXIgPT09ICdzdHJpbmcnICYmIHR5cGVvZiBrZXkgPT09ICdzdHJpbmcnICYmIGtleS5sZW5ndGggPT09IDMyKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBob3N0bmFtZTogJ2h1Yi50ZXN0aW5nYm90LmNvbScsXG4gICAgICAgICAgICBwb3J0OiA4MFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2F1Y2UgTGFic1xuICAgICAqIGUuZy4gNTBhYTE1MmMtMTkzMi1CMmYwLTk3MDctMTh6NDZxMm4xbWIwXG4gICAgICovXG4gICAgaWYgKCh0eXBlb2YgdXNlciA9PT0gJ3N0cmluZycgJiYgdHlwZW9mIGtleSA9PT0gJ3N0cmluZycgJiYga2V5Lmxlbmd0aCA9PT0gMzYpIHx8XG4gICAgICAgIC8vIFdoZW4gU0MgaXMgdXNlZCBhIHVzZXIgbmVlZHMgdG8gYmUgcHJvdmlkZWQgYW5kIGBpc1JEQ2AgbmVlZHMgdG8gYmUgdHJ1ZVxuICAgICAgICAodHlwZW9mIHVzZXIgPT09ICdzdHJpbmcnICYmIGlzUkRDKSB8fFxuICAgICAgICAvLyBPciBvbmx5IFJEQ1xuICAgICAgICBpc1JEQ1xuICAgICkge1xuICAgICAgICAvLyBTYXVjZSBoZWFkbGVzcyBpcyBjdXJyZW50bHkgb25seSBpbiB1cy1lYXN0LTFcbiAgICAgICAgY29uc3Qgc2F1Y2VSZWdpb24gPSBoZWFkbGVzcyA/ICd1cy1lYXN0LTEnIDogcmVnaW9uXG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHByb3RvY29sOiBwcm90b2NvbCB8fCAnaHR0cHMnLFxuICAgICAgICAgICAgaG9zdG5hbWU6IGhvc3RuYW1lIHx8IGdldFNhdWNlRW5kcG9pbnQoc2F1Y2VSZWdpb24sIGlzUkRDKSxcbiAgICAgICAgICAgIHBvcnQ6IHBvcnQgfHwgNDQzXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICAgIC8qKlxuICAgICAgICAgKiB1c2VyIGFuZCBrZXkgYXJlIHNldCBpbiBjb25maWdcbiAgICAgICAgICovXG4gICAgICAgICh0eXBlb2YgdXNlciA9PT0gJ3N0cmluZycgfHwgdHlwZW9mIGtleSA9PT0gJ3N0cmluZycpICYmXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBidXQgbm8gY3VzdG9tIFdlYkRyaXZlciBlbmRwb2ludCB3YXMgY29uZmlndXJlZFxuICAgICAgICAgKi9cbiAgICAgICAgIWhvc3RuYW1lXG4gICAgKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICdBIFwidXNlclwiIG9yIFwia2V5XCIgd2FzIHByb3ZpZGVkIGJ1dCBjb3VsZCBub3QgYmUgY29ubmVjdGVkIHRvIGEgJyArXG4gICAgICAgICAgICAna25vd24gY2xvdWQgc2VydmljZSAoU2F1Y2VMYWJzLCBCcm93ZXJzdGFjayBvciBUZXN0aW5nYm90KS4gJyArXG4gICAgICAgICAgICAnUGxlYXNlIGNoZWNrIGlmIGdpdmVuIHVzZXIgYW5kIGtleSBwcm9wZXJ0aWVzIGFyZSBjb3JyZWN0ISdcbiAgICAgICAgKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIG5vIGNsb3VkIHByb3ZpZGVyIGRldGVjdGVkLCBmYWxsYmFjayB0byBsb2NhbCBicm93c2VyIGRyaXZlclxuICAgICAqL1xuICAgIHJldHVybiB7XG4gICAgICAgIGhvc3RuYW1lOiBob3N0bmFtZSB8fCBERUZBVUxUX0hPU1ROQU1FLFxuICAgICAgICBwb3J0OiBwb3J0IHx8IERFRkFVTFRfUE9SVCxcbiAgICAgICAgcHJvdG9jb2w6IHByb3RvY29sIHx8IERFRkFVTFRfUFJPVE9DT0xcbiAgICB9XG59XG5cbi8qKlxuICogdmFsaWRhdGVzIGNvbmZpZ3VyYXRpb25zIGJhc2VkIG9uIGRlZmF1bHQgdmFsdWVzXG4gKiBAcGFyYW0gIHtPYmplY3R9IGRlZmF1bHRzICBvYmplY3QgZGVzY3JpYmluZyBhbGwgYWxsb3dlZCBwcm9wZXJ0aWVzXG4gKiBAcGFyYW0gIHtPYmplY3R9IG9wdGlvbnMgICBvcHRpb24gdG8gY2hlY2sgYWdhaW5zXG4gKiBAcmV0dXJuIHtPYmplY3R9ICAgICAgICAgICB2YWxpZGF0ZWQgY29uZmlnIGVucmljaGVkIHdpdGggZGVmYXVsdCB2YWx1ZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlQ29uZmlnIChkZWZhdWx0cywgb3B0aW9ucykge1xuICAgIGNvbnN0IHBhcmFtcyA9IHt9XG5cbiAgICBmb3IgKGNvbnN0IFtuYW1lLCBleHBlY3RlZE9wdGlvbl0gb2YgT2JqZWN0LmVudHJpZXMoZGVmYXVsdHMpKSB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBjaGVjayBpZiBvcHRpb25zIGlzIGdpdmVuXG4gICAgICAgICAqL1xuICAgICAgICBpZiAodHlwZW9mIG9wdGlvbnNbbmFtZV0gPT09ICd1bmRlZmluZWQnICYmICFleHBlY3RlZE9wdGlvbi5kZWZhdWx0ICYmIGV4cGVjdGVkT3B0aW9uLnJlcXVpcmVkKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFJlcXVpcmVkIG9wdGlvbiBcIiR7bmFtZX1cIiBpcyBtaXNzaW5nYClcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2Ygb3B0aW9uc1tuYW1lXSA9PT0gJ3VuZGVmaW5lZCcgJiYgZXhwZWN0ZWRPcHRpb24uZGVmYXVsdCkge1xuICAgICAgICAgICAgcGFyYW1zW25hbWVdID0gZXhwZWN0ZWRPcHRpb24uZGVmYXVsdFxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiBvcHRpb25zW25hbWVdICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBleHBlY3RlZE9wdGlvbi50eXBlID09PSAnc3RyaW5nJyAmJiB0eXBlb2Ygb3B0aW9uc1tuYW1lXSAhPT0gZXhwZWN0ZWRPcHRpb24udHlwZSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgb3B0aW9uIFwiJHtuYW1lfVwiIHRvIGJlIHR5cGUgb2YgJHtleHBlY3RlZE9wdGlvbi50eXBlfSBidXQgd2FzICR7dHlwZW9mIG9wdGlvbnNbbmFtZV19YClcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHR5cGVvZiBleHBlY3RlZE9wdGlvbi50eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRPcHRpb24udHlwZShvcHRpb25zW25hbWVdKVxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUeXBlIGNoZWNrIGZvciBvcHRpb24gXCIke25hbWV9XCIgZmFpbGVkOiAke2UubWVzc2FnZX1gKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGV4cGVjdGVkT3B0aW9uLm1hdGNoICYmICFvcHRpb25zW25hbWVdLm1hdGNoKGV4cGVjdGVkT3B0aW9uLm1hdGNoKSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgT3B0aW9uIFwiJHtuYW1lfVwiIGRvZXNuJ3QgbWF0Y2ggZXhwZWN0ZWQgdmFsdWVzOiAke2V4cGVjdGVkT3B0aW9uLm1hdGNofWApXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHBhcmFtc1tuYW1lXSA9IG9wdGlvbnNbbmFtZV1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBwYXJhbXNcbn1cbiJdfQ==
109
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wdio/config",
3
- "version": "5.9.5",
3
+ "version": "5.12.1",
4
4
  "description": "A helper utility to parse and validate WebdriverIO options",
5
5
  "author": "Christian Bromann <christian@saucelabs.com>",
6
6
  "homepage": "https://github.com/webdriverio/webdriverio/tree/master/packages/wdio-config",
@@ -30,11 +30,12 @@
30
30
  "url": "https://github.com/webdriverio/webdriverio/issues"
31
31
  },
32
32
  "dependencies": {
33
- "@wdio/logger": "^5.9.3",
34
- "deepmerge": "^3.2.0",
33
+ "@wdio/logger": "^5.12.1",
34
+ "deepmerge": "^4.0.0",
35
35
  "glob": "^7.1.2"
36
36
  },
37
37
  "publishConfig": {
38
38
  "access": "public"
39
- }
39
+ },
40
+ "gitHead": "848151e5fdcb8b694c1a273b9b69852c22875687"
40
41
  }