appium 2.0.0-beta.4 → 2.0.0-beta.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -11
- package/build/lib/appium.d.ts +204 -0
- package/build/lib/appium.d.ts.map +1 -0
- package/build/lib/appium.js +256 -131
- package/build/lib/cli/args.d.ts +17 -0
- package/build/lib/cli/args.d.ts.map +1 -0
- package/build/lib/cli/args.js +96 -282
- package/build/lib/cli/driver-command.d.ts +37 -0
- package/build/lib/cli/driver-command.d.ts.map +1 -0
- package/build/lib/cli/driver-command.js +27 -18
- package/build/lib/cli/extension-command.d.ts +376 -0
- package/build/lib/cli/extension-command.d.ts.map +1 -0
- package/build/lib/cli/extension-command.js +287 -156
- package/build/lib/cli/extension.d.ts +22 -0
- package/build/lib/cli/extension.d.ts.map +1 -0
- package/build/lib/cli/extension.js +31 -17
- package/build/lib/cli/parser.d.ts +84 -0
- package/build/lib/cli/parser.d.ts.map +1 -0
- package/build/lib/cli/parser.js +164 -94
- package/build/lib/cli/plugin-command.d.ts +34 -0
- package/build/lib/cli/plugin-command.d.ts.map +1 -0
- package/build/lib/cli/plugin-command.js +26 -19
- package/build/lib/cli/utils.d.ts +29 -0
- package/build/lib/cli/utils.d.ts.map +1 -0
- package/build/lib/cli/utils.js +27 -3
- package/build/lib/config-file.d.ts +100 -0
- package/build/lib/config-file.d.ts.map +1 -0
- package/build/lib/config-file.js +136 -0
- package/build/lib/config.d.ts +49 -0
- package/build/lib/config.d.ts.map +1 -0
- package/build/lib/config.js +119 -96
- package/build/lib/constants.d.ts +48 -0
- package/build/lib/constants.d.ts.map +1 -0
- package/build/lib/constants.js +60 -0
- package/build/lib/extension/driver-config.d.ts +81 -0
- package/build/lib/extension/driver-config.d.ts.map +1 -0
- package/build/lib/extension/driver-config.js +177 -0
- package/build/lib/extension/extension-config.d.ts +242 -0
- package/build/lib/extension/extension-config.d.ts.map +1 -0
- package/build/lib/extension/extension-config.js +436 -0
- package/build/lib/extension/index.d.ts +48 -0
- package/build/lib/extension/index.d.ts.map +1 -0
- package/build/lib/extension/index.js +75 -0
- package/build/lib/extension/manifest.d.ts +174 -0
- package/build/lib/extension/manifest.d.ts.map +1 -0
- package/build/lib/extension/manifest.js +256 -0
- package/build/lib/extension/package-changed.d.ts +11 -0
- package/build/lib/extension/package-changed.d.ts.map +1 -0
- package/build/lib/extension/package-changed.js +66 -0
- package/build/lib/extension/plugin-config.d.ts +57 -0
- package/build/lib/extension/plugin-config.d.ts.map +1 -0
- package/build/lib/extension/plugin-config.js +78 -0
- package/build/lib/grid-register.d.ts +10 -0
- package/build/lib/grid-register.d.ts.map +1 -0
- package/build/lib/grid-register.js +21 -25
- package/build/lib/logger.d.ts +3 -0
- package/build/lib/logger.d.ts.map +1 -0
- package/build/lib/logger.js +4 -6
- package/build/lib/logsink.d.ts +4 -0
- package/build/lib/logsink.d.ts.map +1 -0
- package/build/lib/logsink.js +14 -17
- package/build/lib/main.d.ts +55 -0
- package/build/lib/main.d.ts.map +1 -0
- package/build/lib/main.js +183 -91
- package/build/lib/schema/arg-spec.d.ts +143 -0
- package/build/lib/schema/arg-spec.d.ts.map +1 -0
- package/build/lib/schema/arg-spec.js +119 -0
- package/build/lib/schema/cli-args.d.ts +19 -0
- package/build/lib/schema/cli-args.d.ts.map +1 -0
- package/build/lib/schema/cli-args.js +178 -0
- package/build/lib/schema/cli-transformers.d.ts +5 -0
- package/build/lib/schema/cli-transformers.d.ts.map +1 -0
- package/build/lib/schema/cli-transformers.js +74 -0
- package/build/lib/schema/index.d.ts +3 -0
- package/build/lib/schema/index.d.ts.map +1 -0
- package/build/lib/schema/index.js +34 -0
- package/build/lib/schema/keywords.d.ts +24 -0
- package/build/lib/schema/keywords.d.ts.map +1 -0
- package/build/lib/schema/keywords.js +70 -0
- package/build/lib/schema/schema.d.ts +259 -0
- package/build/lib/schema/schema.d.ts.map +1 -0
- package/build/lib/schema/schema.js +450 -0
- package/build/lib/utils.d.ts +66 -0
- package/build/lib/utils.d.ts.map +1 -0
- package/build/lib/utils.js +35 -139
- package/build/tsconfig.tsbuildinfo +1 -0
- package/build/types/appium-manifest.d.ts +59 -0
- package/build/types/appium-manifest.d.ts.map +1 -0
- package/build/types/cli.d.ts +123 -0
- package/build/types/cli.d.ts.map +1 -0
- package/build/types/extension-manifest.d.ts +55 -0
- package/build/types/extension-manifest.d.ts.map +1 -0
- package/build/types/index.d.ts +16 -0
- package/build/types/index.d.ts.map +1 -0
- package/driver.d.ts +1 -0
- package/driver.js +14 -0
- package/index.js +11 -0
- package/lib/appium.js +520 -186
- package/lib/cli/args.js +267 -422
- package/lib/cli/driver-command.js +58 -23
- package/lib/cli/extension-command.js +613 -260
- package/lib/cli/extension.js +47 -17
- package/lib/cli/parser.js +263 -83
- package/lib/cli/plugin-command.js +48 -20
- package/lib/cli/utils.js +24 -10
- package/lib/config-file.js +219 -0
- package/lib/config.js +243 -110
- package/lib/constants.js +69 -0
- package/lib/extension/driver-config.js +249 -0
- package/lib/extension/extension-config.js +677 -0
- package/lib/extension/index.js +116 -0
- package/lib/extension/manifest.js +475 -0
- package/lib/extension/package-changed.js +64 -0
- package/lib/extension/plugin-config.js +113 -0
- package/lib/grid-register.js +49 -35
- package/lib/logger.js +1 -2
- package/lib/logsink.js +38 -33
- package/lib/main.js +308 -100
- package/lib/schema/arg-spec.js +229 -0
- package/lib/schema/cli-args.js +238 -0
- package/lib/schema/cli-transformers.js +115 -0
- package/lib/schema/index.js +2 -0
- package/lib/schema/keywords.js +136 -0
- package/lib/schema/schema.js +717 -0
- package/lib/utils.js +121 -140
- package/package.json +85 -85
- package/plugin.d.ts +1 -0
- package/plugin.js +13 -0
- package/scripts/autoinstall-extensions.js +185 -0
- package/support.d.ts +1 -0
- package/support.js +13 -0
- package/test.d.ts +7 -0
- package/test.js +13 -0
- package/types/appium-manifest.ts +73 -0
- package/types/cli.ts +150 -0
- package/types/extension-manifest.ts +64 -0
- package/types/index.ts +21 -0
- package/CHANGELOG.md +0 -3515
- package/bin/ios-webkit-debug-proxy-launcher.js +0 -71
- package/build/lib/cli/npm.js +0 -206
- package/build/lib/cli/parser-helpers.js +0 -82
- package/build/lib/driver-config.js +0 -77
- package/build/lib/drivers.js +0 -96
- package/build/lib/extension-config.js +0 -253
- package/build/lib/plugin-config.js +0 -59
- package/build/lib/plugins.js +0 -14
- package/lib/cli/npm.js +0 -183
- package/lib/cli/parser-helpers.js +0 -79
- package/lib/driver-config.js +0 -46
- package/lib/drivers.js +0 -81
- package/lib/extension-config.js +0 -209
- package/lib/plugin-config.js +0 -34
- package/lib/plugins.js +0 -10
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export const commandClasses: Readonly<{
|
|
2
|
+
readonly driver: typeof DriverCommand;
|
|
3
|
+
readonly plugin: typeof PluginCommand;
|
|
4
|
+
}>;
|
|
5
|
+
export type ExtCommand<ExtType extends import("@appium/types").ExtensionType> = ExtType extends DriverType ? Class<DriverCommand> : ExtType extends PluginType ? Class<PluginCommand> : never;
|
|
6
|
+
export type ExtensionType = import('@appium/types').ExtensionType;
|
|
7
|
+
export type DriverType = import('@appium/types').DriverType;
|
|
8
|
+
export type PluginType = import('@appium/types').PluginType;
|
|
9
|
+
export type Class<T> = import('@appium/types').Class<T>;
|
|
10
|
+
import DriverCommand from "./driver-command";
|
|
11
|
+
import PluginCommand from "./plugin-command";
|
|
12
|
+
/**
|
|
13
|
+
* Run a subcommand of the 'appium driver' type. Each subcommand has its own set of arguments which
|
|
14
|
+
* can be represented as a JS object.
|
|
15
|
+
*
|
|
16
|
+
* @param {import('appium/types').Args<import('appium/types').WithExtSubcommand>} args - JS object where the key is the parameter name (as defined in
|
|
17
|
+
* driver-parser.js)
|
|
18
|
+
* @template {ExtensionType} ExtType
|
|
19
|
+
* @param {import('../extension/extension-config').ExtensionConfig<ExtType>} config - Extension config object
|
|
20
|
+
*/
|
|
21
|
+
export function runExtensionCommand<ExtType extends import("@appium/types").ExtensionType>(args: import('appium/types').Args<import('appium/types').WithExtSubcommand>, config: import("../extension/extension-config").ExtensionConfig<ExtType>): Promise<any>;
|
|
22
|
+
//# sourceMappingURL=extension.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../lib/cli/extension.js"],"names":[],"mappings":"AAMA;;;GAKE;gFAiDW,OAAO,SAAS,UAAU,GAAG,MAAM,aAAa,CAAC,GAAG,OAAO,SAAS,UAAU,GAAG,MAAM,aAAa,CAAC,GAAG,KAAK;4BAI7G,OAAO,eAAe,EAAE,aAAa;yBACrC,OAAO,eAAe,EAAE,UAAU;yBAClC,OAAO,eAAe,EAAE,UAAU;uBAKlC,OAAO,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;;;AA1D7C;;;;;;;;GAQG;AACH,iGALW,OAAO,cAAc,EAAE,IAAI,CAAC,OAAO,cAAc,EAAE,iBAAiB,CAAC,0FAqC/E"}
|
|
@@ -5,6 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
+
exports.commandClasses = void 0;
|
|
8
9
|
exports.runExtensionCommand = runExtensionCommand;
|
|
9
10
|
|
|
10
11
|
require("source-map-support/register");
|
|
@@ -13,44 +14,57 @@ var _driverCommand = _interopRequireDefault(require("./driver-command"));
|
|
|
13
14
|
|
|
14
15
|
var _pluginCommand = _interopRequireDefault(require("./plugin-command"));
|
|
15
16
|
|
|
16
|
-
var
|
|
17
|
-
|
|
18
|
-
var _pluginConfig = _interopRequireDefault(require("../plugin-config"));
|
|
19
|
-
|
|
20
|
-
var _extensionConfig = require("../extension-config");
|
|
17
|
+
var _constants = require("../constants");
|
|
21
18
|
|
|
22
19
|
var _utils = require("./utils");
|
|
23
20
|
|
|
24
|
-
|
|
21
|
+
const commandClasses = Object.freeze({
|
|
22
|
+
[_constants.DRIVER_TYPE]: _driverCommand.default,
|
|
23
|
+
[_constants.PLUGIN_TYPE]: _pluginCommand.default
|
|
24
|
+
});
|
|
25
|
+
exports.commandClasses = commandClasses;
|
|
26
|
+
|
|
27
|
+
async function runExtensionCommand(args, config) {
|
|
25
28
|
let jsonResult = null;
|
|
26
29
|
const {
|
|
30
|
+
extensionType: type
|
|
31
|
+
} = config;
|
|
32
|
+
const extCmd = args[`${type}Command`];
|
|
33
|
+
|
|
34
|
+
if (!extCmd) {
|
|
35
|
+
throw new TypeError(`Cannot call ${type} command without a subcommand like 'install'`);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
let {
|
|
27
39
|
json,
|
|
28
|
-
|
|
40
|
+
suppressOutput
|
|
29
41
|
} = args;
|
|
42
|
+
json = Boolean(json);
|
|
30
43
|
|
|
31
|
-
|
|
44
|
+
if (suppressOutput) {
|
|
45
|
+
json = true;
|
|
46
|
+
}
|
|
32
47
|
|
|
33
|
-
const
|
|
34
|
-
const CommandClass = type === _extensionConfig.DRIVER_TYPE ? _driverCommand.default : _pluginCommand.default;
|
|
35
|
-
const config = new ConfigClass(appiumHome, logFn);
|
|
48
|
+
const CommandClass = commandClasses[type];
|
|
36
49
|
const cmd = new CommandClass({
|
|
37
50
|
config,
|
|
38
51
|
json
|
|
39
52
|
});
|
|
40
53
|
|
|
41
54
|
try {
|
|
42
|
-
await config.read();
|
|
43
55
|
jsonResult = await cmd.execute(args);
|
|
44
56
|
} catch (err) {
|
|
57
|
+
if (suppressOutput) {
|
|
58
|
+
throw err;
|
|
59
|
+
}
|
|
60
|
+
|
|
45
61
|
(0, _utils.errAndQuit)(json, err);
|
|
46
62
|
}
|
|
47
63
|
|
|
48
|
-
if (json) {
|
|
64
|
+
if (json && !suppressOutput) {
|
|
49
65
|
console.log(JSON.stringify(jsonResult, null, _utils.JSON_SPACES));
|
|
50
66
|
}
|
|
51
67
|
|
|
52
68
|
return jsonResult;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9jbGkvZXh0ZW5zaW9uLmpzIl0sIm5hbWVzIjpbInJ1bkV4dGVuc2lvbkNvbW1hbmQiLCJhcmdzIiwidHlwZSIsImpzb25SZXN1bHQiLCJqc29uIiwiYXBwaXVtSG9tZSIsImxvZ0ZuIiwibXNnIiwiQ29uZmlnQ2xhc3MiLCJEUklWRVJfVFlQRSIsIkRyaXZlckNvbmZpZyIsIlBsdWdpbkNvbmZpZyIsIkNvbW1hbmRDbGFzcyIsIkRyaXZlckNvbW1hbmQiLCJQbHVnaW5Db21tYW5kIiwiY29uZmlnIiwiY21kIiwicmVhZCIsImV4ZWN1dGUiLCJlcnIiLCJjb25zb2xlIiwibG9nIiwiSlNPTiIsInN0cmluZ2lmeSIsIkpTT05fU1BBQ0VTIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUVBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQVNBLGVBQWVBLG1CQUFmLENBQW9DQyxJQUFwQyxFQUEwQ0MsSUFBMUMsRUFBZ0Q7QUFHOUMsTUFBSUMsVUFBVSxHQUFHLElBQWpCO0FBQ0EsUUFBTTtBQUFDQyxJQUFBQSxJQUFEO0FBQU9DLElBQUFBO0FBQVAsTUFBcUJKLElBQTNCOztBQUNBLFFBQU1LLEtBQUssR0FBSUMsR0FBRCxJQUFTLGdCQUFJSCxJQUFKLEVBQVVHLEdBQVYsQ0FBdkI7O0FBQ0EsUUFBTUMsV0FBVyxHQUFHTixJQUFJLEtBQUtPLDRCQUFULEdBQXVCQyxxQkFBdkIsR0FBc0NDLHFCQUExRDtBQUNBLFFBQU1DLFlBQVksR0FBR1YsSUFBSSxLQUFLTyw0QkFBVCxHQUF1Qkksc0JBQXZCLEdBQXVDQyxzQkFBNUQ7QUFDQSxRQUFNQyxNQUFNLEdBQUcsSUFBSVAsV0FBSixDQUFnQkgsVUFBaEIsRUFBNEJDLEtBQTVCLENBQWY7QUFDQSxRQUFNVSxHQUFHLEdBQUcsSUFBSUosWUFBSixDQUFpQjtBQUFDRyxJQUFBQSxNQUFEO0FBQVNYLElBQUFBO0FBQVQsR0FBakIsQ0FBWjs7QUFDQSxNQUFJO0FBQ0YsVUFBTVcsTUFBTSxDQUFDRSxJQUFQLEVBQU47QUFDQWQsSUFBQUEsVUFBVSxHQUFHLE1BQU1hLEdBQUcsQ0FBQ0UsT0FBSixDQUFZakIsSUFBWixDQUFuQjtBQUNELEdBSEQsQ0FHRSxPQUFPa0IsR0FBUCxFQUFZO0FBQ1osMkJBQVdmLElBQVgsRUFBaUJlLEdBQWpCO0FBQ0Q7O0FBRUQsTUFBSWYsSUFBSixFQUFVO0FBQ1JnQixJQUFBQSxPQUFPLENBQUNDLEdBQVIsQ0FBWUMsSUFBSSxDQUFDQyxTQUFMLENBQWVwQixVQUFmLEVBQTJCLElBQTNCLEVBQWlDcUIsa0JBQWpDLENBQVo7QUFDRDs7QUFFRCxTQUFPckIsVUFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuXG5pbXBvcnQgRHJpdmVyQ29tbWFuZCBmcm9tICcuL2RyaXZlci1jb21tYW5kJztcbmltcG9ydCBQbHVnaW5Db21tYW5kIGZyb20gJy4vcGx1Z2luLWNvbW1hbmQnO1xuaW1wb3J0IERyaXZlckNvbmZpZyBmcm9tICcuLi9kcml2ZXItY29uZmlnJztcbmltcG9ydCBQbHVnaW5Db25maWcgZnJvbSAnLi4vcGx1Z2luLWNvbmZpZyc7XG5pbXBvcnQgeyBEUklWRVJfVFlQRSB9IGZyb20gJy4uL2V4dGVuc2lvbi1jb25maWcnO1xuaW1wb3J0IHsgZXJyQW5kUXVpdCwgbG9nLCBKU09OX1NQQUNFUyB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIFJ1biBhIHN1YmNvbW1hbmQgb2YgdGhlICdhcHBpdW0gZHJpdmVyJyB0eXBlLiBFYWNoIHN1YmNvbW1hbmQgaGFzIGl0cyBvd24gc2V0IG9mIGFyZ3VtZW50cyB3aGljaFxuICogY2FuIGJlIHJlcHJlc2VudGVkIGFzIGEgSlMgb2JqZWN0LlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBhcmdzIC0gSlMgb2JqZWN0IHdoZXJlIHRoZSBrZXkgaXMgdGhlIHBhcmFtZXRlciBuYW1lIChhcyBkZWZpbmVkIGluXG4gKiBkcml2ZXItcGFyc2VyLmpzKVxuICovXG5hc3luYyBmdW5jdGlvbiBydW5FeHRlbnNpb25Db21tYW5kIChhcmdzLCB0eXBlKSB7XG4gIC8vIFRPRE8gZHJpdmVyIGNvbmZpZyBmaWxlIHNob3VsZCBiZSBsb2NrZWQgd2hpbGUgYW55IG9mIHRoZXNlIGNvbW1hbmRzIGFyZVxuICAvLyBydW5uaW5nIHRvIHByZXZlbnQgd2VpcmQgc2l0dWF0aW9uc1xuICBsZXQganNvblJlc3VsdCA9IG51bGw7XG4gIGNvbnN0IHtqc29uLCBhcHBpdW1Ib21lfSA9IGFyZ3M7XG4gIGNvbnN0IGxvZ0ZuID0gKG1zZykgPT4gbG9nKGpzb24sIG1zZyk7XG4gIGNvbnN0IENvbmZpZ0NsYXNzID0gdHlwZSA9PT0gRFJJVkVSX1RZUEUgPyBEcml2ZXJDb25maWcgOiBQbHVnaW5Db25maWc7XG4gIGNvbnN0IENvbW1hbmRDbGFzcyA9IHR5cGUgPT09IERSSVZFUl9UWVBFID8gRHJpdmVyQ29tbWFuZCA6IFBsdWdpbkNvbW1hbmQ7XG4gIGNvbnN0IGNvbmZpZyA9IG5ldyBDb25maWdDbGFzcyhhcHBpdW1Ib21lLCBsb2dGbik7XG4gIGNvbnN0IGNtZCA9IG5ldyBDb21tYW5kQ2xhc3Moe2NvbmZpZywganNvbn0pO1xuICB0cnkge1xuICAgIGF3YWl0IGNvbmZpZy5yZWFkKCk7XG4gICAganNvblJlc3VsdCA9IGF3YWl0IGNtZC5leGVjdXRlKGFyZ3MpO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICBlcnJBbmRRdWl0KGpzb24sIGVycik7XG4gIH1cblxuICBpZiAoanNvbikge1xuICAgIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KGpzb25SZXN1bHQsIG51bGwsIEpTT05fU1BBQ0VTKSk7XG4gIH1cblxuICByZXR1cm4ganNvblJlc3VsdDtcbn1cblxuZXhwb3J0IHtcbiAgcnVuRXh0ZW5zaW9uQ29tbWFuZCxcbn07XG4iXSwiZmlsZSI6ImxpYi9jbGkvZXh0ZW5zaW9uLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uIn0=
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb21tYW5kQ2xhc3NlcyIsIk9iamVjdCIsImZyZWV6ZSIsIkRSSVZFUl9UWVBFIiwiRHJpdmVyQ29tbWFuZCIsIlBMVUdJTl9UWVBFIiwiUGx1Z2luQ29tbWFuZCIsInJ1bkV4dGVuc2lvbkNvbW1hbmQiLCJhcmdzIiwiY29uZmlnIiwianNvblJlc3VsdCIsImV4dGVuc2lvblR5cGUiLCJ0eXBlIiwiZXh0Q21kIiwiVHlwZUVycm9yIiwianNvbiIsInN1cHByZXNzT3V0cHV0IiwiQm9vbGVhbiIsIkNvbW1hbmRDbGFzcyIsImNtZCIsImV4ZWN1dGUiLCJlcnIiLCJlcnJBbmRRdWl0IiwiY29uc29sZSIsImxvZyIsIkpTT04iLCJzdHJpbmdpZnkiLCJKU09OX1NQQUNFUyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9jbGkvZXh0ZW5zaW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbmltcG9ydCBEcml2ZXJDb21tYW5kIGZyb20gJy4vZHJpdmVyLWNvbW1hbmQnO1xuaW1wb3J0IFBsdWdpbkNvbW1hbmQgZnJvbSAnLi9wbHVnaW4tY29tbWFuZCc7XG5pbXBvcnQge0RSSVZFUl9UWVBFLCBQTFVHSU5fVFlQRX0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7ZXJyQW5kUXVpdCwgSlNPTl9TUEFDRVN9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgY29tbWFuZENsYXNzZXMgPSBPYmplY3QuZnJlZXplKFxuICAvKiogQHR5cGUge2NvbnN0fSAqLyAoe1xuICAgIFtEUklWRVJfVFlQRV06IERyaXZlckNvbW1hbmQsXG4gICAgW1BMVUdJTl9UWVBFXTogUGx1Z2luQ29tbWFuZCxcbiAgfSlcbik7XG5cbi8qKlxuICogUnVuIGEgc3ViY29tbWFuZCBvZiB0aGUgJ2FwcGl1bSBkcml2ZXInIHR5cGUuIEVhY2ggc3ViY29tbWFuZCBoYXMgaXRzIG93biBzZXQgb2YgYXJndW1lbnRzIHdoaWNoXG4gKiBjYW4gYmUgcmVwcmVzZW50ZWQgYXMgYSBKUyBvYmplY3QuXG4gKlxuICogQHBhcmFtIHtpbXBvcnQoJ2FwcGl1bS90eXBlcycpLkFyZ3M8aW1wb3J0KCdhcHBpdW0vdHlwZXMnKS5XaXRoRXh0U3ViY29tbWFuZD59IGFyZ3MgLSBKUyBvYmplY3Qgd2hlcmUgdGhlIGtleSBpcyB0aGUgcGFyYW1ldGVyIG5hbWUgKGFzIGRlZmluZWQgaW5cbiAqIGRyaXZlci1wYXJzZXIuanMpXG4gKiBAdGVtcGxhdGUge0V4dGVuc2lvblR5cGV9IEV4dFR5cGVcbiAqIEBwYXJhbSB7aW1wb3J0KCcuLi9leHRlbnNpb24vZXh0ZW5zaW9uLWNvbmZpZycpLkV4dGVuc2lvbkNvbmZpZzxFeHRUeXBlPn0gY29uZmlnIC0gRXh0ZW5zaW9uIGNvbmZpZyBvYmplY3RcbiAqL1xuYXN5bmMgZnVuY3Rpb24gcnVuRXh0ZW5zaW9uQ29tbWFuZChhcmdzLCBjb25maWcpIHtcbiAgLy8gVE9ETyBkcml2ZXIgY29uZmlnIGZpbGUgc2hvdWxkIGJlIGxvY2tlZCB3aGlsZSBhbnkgb2YgdGhlc2UgY29tbWFuZHMgYXJlXG4gIC8vIHJ1bm5pbmcgdG8gcHJldmVudCB3ZWlyZCBzaXR1YXRpb25zXG4gIGxldCBqc29uUmVzdWx0ID0gbnVsbDtcbiAgY29uc3Qge2V4dGVuc2lvblR5cGU6IHR5cGV9ID0gY29uZmlnO1xuICBjb25zdCBleHRDbWQgPSBhcmdzW2Ake3R5cGV9Q29tbWFuZGBdO1xuICBpZiAoIWV4dENtZCkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYENhbm5vdCBjYWxsICR7dHlwZX0gY29tbWFuZCB3aXRob3V0IGEgc3ViY29tbWFuZCBsaWtlICdpbnN0YWxsJ2ApO1xuICB9XG4gIGxldCB7anNvbiwgc3VwcHJlc3NPdXRwdXR9ID0gYXJncztcbiAganNvbiA9IEJvb2xlYW4oanNvbik7XG4gIGlmIChzdXBwcmVzc091dHB1dCkge1xuICAgIGpzb24gPSB0cnVlO1xuICB9XG4gIGNvbnN0IENvbW1hbmRDbGFzcyA9IC8qKiBAdHlwZSB7RXh0Q29tbWFuZDxFeHRUeXBlPn0gKi8gKGNvbW1hbmRDbGFzc2VzW3R5cGVdKTtcbiAgY29uc3QgY21kID0gbmV3IENvbW1hbmRDbGFzcyh7Y29uZmlnLCBqc29ufSk7XG4gIHRyeSB7XG4gICAganNvblJlc3VsdCA9IGF3YWl0IGNtZC5leGVjdXRlKGFyZ3MpO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICAvLyBpbiB0aGUgc3VwcHJlc3Mgb3V0cHV0IGNhc2UsIHdlIGFyZSBjYWxsaW5nIHRoaXMgZnVuY3Rpb24gaW50ZXJuYWxseSBhbmQgc2hvdWxkXG4gICAgLy8ganVzdCB0aHJvdyBpbnN0ZWFkIG9mIHByaW50aW5nIGFuIGVycm9yIGFuZCBlbmRpbmcgdGhlIHByb2Nlc3NcbiAgICBpZiAoc3VwcHJlc3NPdXRwdXQpIHtcbiAgICAgIHRocm93IGVycjtcbiAgICB9XG4gICAgZXJyQW5kUXVpdChqc29uLCBlcnIpO1xuICB9XG5cbiAgaWYgKGpzb24gJiYgIXN1cHByZXNzT3V0cHV0KSB7XG4gICAgY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkoanNvblJlc3VsdCwgbnVsbCwgSlNPTl9TUEFDRVMpKTtcbiAgfVxuXG4gIHJldHVybiBqc29uUmVzdWx0O1xufVxuXG5leHBvcnQge3J1bkV4dGVuc2lvbkNvbW1hbmR9O1xuXG4vKipcbiAqIEB0ZW1wbGF0ZSB7RXh0ZW5zaW9uVHlwZX0gRXh0VHlwZVxuICogQHR5cGVkZWYge0V4dFR5cGUgZXh0ZW5kcyBEcml2ZXJUeXBlID8gQ2xhc3M8RHJpdmVyQ29tbWFuZD4gOiBFeHRUeXBlIGV4dGVuZHMgUGx1Z2luVHlwZSA/IENsYXNzPFBsdWdpbkNvbW1hbmQ+IDogbmV2ZXJ9IEV4dENvbW1hbmRcbiAqL1xuXG4vKipcbiAqIEB0eXBlZGVmIHtpbXBvcnQoJ0BhcHBpdW0vdHlwZXMnKS5FeHRlbnNpb25UeXBlfSBFeHRlbnNpb25UeXBlXG4gKiBAdHlwZWRlZiB7aW1wb3J0KCdAYXBwaXVtL3R5cGVzJykuRHJpdmVyVHlwZX0gRHJpdmVyVHlwZVxuICogQHR5cGVkZWYge2ltcG9ydCgnQGFwcGl1bS90eXBlcycpLlBsdWdpblR5cGV9IFBsdWdpblR5cGVcbiAqL1xuXG4vKipcbiAqIEB0ZW1wbGF0ZSBUXG4gKiBAdHlwZWRlZiB7aW1wb3J0KCdAYXBwaXVtL3R5cGVzJykuQ2xhc3M8VD59IENsYXNzXG4gKi9cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRU8sTUFBTUEsY0FBYyxHQUFHQyxNQUFNLENBQUNDLE1BQVAsQ0FDTjtFQUNwQixDQUFDQyxzQkFBRCxHQUFlQyxzQkFESztFQUVwQixDQUFDQyxzQkFBRCxHQUFlQztBQUZLLENBRE0sQ0FBdkI7OztBQWdCUCxlQUFlQyxtQkFBZixDQUFtQ0MsSUFBbkMsRUFBeUNDLE1BQXpDLEVBQWlEO0VBRy9DLElBQUlDLFVBQVUsR0FBRyxJQUFqQjtFQUNBLE1BQU07SUFBQ0MsYUFBYSxFQUFFQztFQUFoQixJQUF3QkgsTUFBOUI7RUFDQSxNQUFNSSxNQUFNLEdBQUdMLElBQUksQ0FBRSxHQUFFSSxJQUFLLFNBQVQsQ0FBbkI7O0VBQ0EsSUFBSSxDQUFDQyxNQUFMLEVBQWE7SUFDWCxNQUFNLElBQUlDLFNBQUosQ0FBZSxlQUFjRixJQUFLLDhDQUFsQyxDQUFOO0VBQ0Q7O0VBQ0QsSUFBSTtJQUFDRyxJQUFEO0lBQU9DO0VBQVAsSUFBeUJSLElBQTdCO0VBQ0FPLElBQUksR0FBR0UsT0FBTyxDQUFDRixJQUFELENBQWQ7O0VBQ0EsSUFBSUMsY0FBSixFQUFvQjtJQUNsQkQsSUFBSSxHQUFHLElBQVA7RUFDRDs7RUFDRCxNQUFNRyxZQUFZLEdBQXVDbEIsY0FBYyxDQUFDWSxJQUFELENBQXZFO0VBQ0EsTUFBTU8sR0FBRyxHQUFHLElBQUlELFlBQUosQ0FBaUI7SUFBQ1QsTUFBRDtJQUFTTTtFQUFULENBQWpCLENBQVo7O0VBQ0EsSUFBSTtJQUNGTCxVQUFVLEdBQUcsTUFBTVMsR0FBRyxDQUFDQyxPQUFKLENBQVlaLElBQVosQ0FBbkI7RUFDRCxDQUZELENBRUUsT0FBT2EsR0FBUCxFQUFZO0lBR1osSUFBSUwsY0FBSixFQUFvQjtNQUNsQixNQUFNSyxHQUFOO0lBQ0Q7O0lBQ0QsSUFBQUMsaUJBQUEsRUFBV1AsSUFBWCxFQUFpQk0sR0FBakI7RUFDRDs7RUFFRCxJQUFJTixJQUFJLElBQUksQ0FBQ0MsY0FBYixFQUE2QjtJQUMzQk8sT0FBTyxDQUFDQyxHQUFSLENBQVlDLElBQUksQ0FBQ0MsU0FBTCxDQUFlaEIsVUFBZixFQUEyQixJQUEzQixFQUFpQ2lCLGtCQUFqQyxDQUFaO0VBQ0Q7O0VBRUQsT0FBT2pCLFVBQVA7QUFDRCJ9
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
export const EXTRA_ARGS: "extraArgs";
|
|
2
|
+
export type DriverType = import('@appium/types').DriverType;
|
|
3
|
+
export type PluginType = import('@appium/types').PluginType;
|
|
4
|
+
/**
|
|
5
|
+
* Creates a {@link ArgParser} instance; finalizes the config schema.
|
|
6
|
+
*
|
|
7
|
+
* @constructs ArgParser
|
|
8
|
+
* @param {boolean} [debug] - If `true`, throw instead of exit upon parsing error
|
|
9
|
+
* @returns {ArgParser}
|
|
10
|
+
*/
|
|
11
|
+
export function getParser(debug?: boolean | undefined): ArgParser;
|
|
12
|
+
/**
|
|
13
|
+
* A wrapper around `argparse`
|
|
14
|
+
*
|
|
15
|
+
* - Handles instantiation, configuration, and monkeypatching of an
|
|
16
|
+
* `ArgumentParser` instance for Appium server and its extensions
|
|
17
|
+
* - Handles error conditions, messages, and exit behavior
|
|
18
|
+
*/
|
|
19
|
+
export class ArgParser {
|
|
20
|
+
/**
|
|
21
|
+
* Given an object full of arguments as returned by `argparser.parse_args`,
|
|
22
|
+
* expand the ones for extensions into a nested object structure and rename
|
|
23
|
+
* keys to match the intended destination.
|
|
24
|
+
*
|
|
25
|
+
* E.g., `{'driver-foo-bar': baz}` becomes `{driver: {foo: {bar: 'baz'}}}`
|
|
26
|
+
* @param {object} args
|
|
27
|
+
* @param {string[]} [unknownArgs]
|
|
28
|
+
* @returns {object}
|
|
29
|
+
*/
|
|
30
|
+
static _transformParsedArgs(args: object, unknownArgs?: string[] | undefined): object;
|
|
31
|
+
/**
|
|
32
|
+
* Patches the `exit()` method of the parser to throw an error, so we can handle it manually.
|
|
33
|
+
* @param {ArgumentParser} parser
|
|
34
|
+
*/
|
|
35
|
+
static _patchExit(parser: ArgumentParser): void;
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @param {import('argparse').SubParser} subParser
|
|
39
|
+
* @returns {import('./args').ArgumentDefinitions}
|
|
40
|
+
*/
|
|
41
|
+
static _addServerToParser(subParser: import('argparse').SubParser): import('./args').ArgumentDefinitions;
|
|
42
|
+
/**
|
|
43
|
+
* Adds extension sub-sub-commands to `driver`/`plugin` subcommands
|
|
44
|
+
* @param {import('argparse').SubParser} subParsers
|
|
45
|
+
*/
|
|
46
|
+
static _addExtensionCommandsToParser(subParsers: import('argparse').SubParser): void;
|
|
47
|
+
/**
|
|
48
|
+
* @param {boolean} [debug] - If true, throw instead of exit on error.
|
|
49
|
+
*/
|
|
50
|
+
constructor(debug?: boolean | undefined);
|
|
51
|
+
/**
|
|
52
|
+
* Program name (typically `appium`)
|
|
53
|
+
* @type {string}
|
|
54
|
+
*/
|
|
55
|
+
prog: string;
|
|
56
|
+
/**
|
|
57
|
+
* If `true`, throw an error on parse failure instead of printing help
|
|
58
|
+
* @type {boolean}
|
|
59
|
+
*/
|
|
60
|
+
debug: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Wrapped `ArgumentParser` instance
|
|
63
|
+
* @type {ArgumentParser}
|
|
64
|
+
*/
|
|
65
|
+
parser: ArgumentParser;
|
|
66
|
+
rawArgs: import("./args").ArgumentDefinitions;
|
|
67
|
+
/**
|
|
68
|
+
* @type {ArgParser['parseArgs']}
|
|
69
|
+
*/
|
|
70
|
+
parse_args: ArgParser['parseArgs'];
|
|
71
|
+
/**
|
|
72
|
+
* Parse arguments from the command line.
|
|
73
|
+
*
|
|
74
|
+
* If no subcommand is passed in, this method will inject the `server` subcommand.
|
|
75
|
+
*
|
|
76
|
+
* `ArgParser.prototype.parse_args` is an alias of this method.
|
|
77
|
+
* @template [T=import('appium/types').WithServerSubcommand]
|
|
78
|
+
* @param {string[]} [args] - Array of arguments, ostensibly from `process.argv`. Gathers args from `process.argv` if not provided.
|
|
79
|
+
* @returns {import('appium/types').Args<T>} - The parsed arguments
|
|
80
|
+
*/
|
|
81
|
+
parseArgs<T = import("appium/types").WithServerSubcommand>(args?: string[] | undefined): import("appium/types").Args<T>;
|
|
82
|
+
}
|
|
83
|
+
import { ArgumentParser } from "argparse";
|
|
84
|
+
//# sourceMappingURL=parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../lib/cli/parser.js"],"names":[],"mappings":"AASA,qCAAsC;yBA0QzB,OAAO,eAAe,EAAE,UAAU;yBAClC,OAAO,eAAe,EAAE,UAAU;AAjB/C;;;;;;GAMG;AACH,wDAFa,SAAS,CAMrB;AAzPD;;;;;;GAMG;AACH;IAqGE;;;;;;;;;OASG;IACH,kCAJW,MAAM,uCAEJ,MAAM,CAmBlB;IAED;;;OAGG;IACH,0BAFW,cAAc,QASxB;IAED;;;;OAIG;IACH,qCAHW,OAAO,UAAU,EAAE,SAAS,GAC1B,OAAO,QAAQ,EAAE,mBAAmB,CAkBhD;IAED;;;OAGG;IACH,iDAFW,OAAO,UAAU,EAAE,SAAS,QA4DtC;IAnOD;;OAEG;IACH,yCAmDC;IAxCC;;;OAGG;IACH,MAFU,MAAM,CAEA;IAEhB;;;OAGG;IACH,OAFU,OAAO,CAEC;IAElB;;;OAGG;IACH,QAFU,cAAc,CAEJ;IAcpB,8CAAyB;IAMzB;;OAEG;IACH,YAFU,SAAS,CAAC,WAAW,CAAC,CAEA;IAGlC;;;;;;;;;OASG;IACH,wHAgCC;CAkIF"}
|
package/build/lib/cli/parser.js
CHANGED
|
@@ -5,130 +5,200 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
+
exports.EXTRA_ARGS = exports.ArgParser = void 0;
|
|
8
9
|
exports.getParser = getParser;
|
|
9
|
-
exports.getDefaultServerArgs = getDefaultServerArgs;
|
|
10
|
-
exports.default = void 0;
|
|
11
10
|
|
|
12
11
|
require("source-map-support/register");
|
|
13
12
|
|
|
14
|
-
var
|
|
13
|
+
var _support = require("@appium/support");
|
|
14
|
+
|
|
15
|
+
var _argparse = require("argparse");
|
|
15
16
|
|
|
16
17
|
var _lodash = _interopRequireDefault(require("lodash"));
|
|
17
18
|
|
|
18
|
-
var
|
|
19
|
+
var _path = _interopRequireDefault(require("path"));
|
|
20
|
+
|
|
21
|
+
var _constants = require("../constants");
|
|
22
|
+
|
|
23
|
+
var _schema = require("../schema");
|
|
24
|
+
|
|
25
|
+
var _config = require("../config");
|
|
19
26
|
|
|
20
27
|
var _args = require("./args");
|
|
21
28
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
const serverArgs = addServerToParser(_args.sharedArgs, subParsers, debug);
|
|
39
|
-
parser.rawArgs = serverArgs;
|
|
40
|
-
addExtensionsToParser(_args.sharedArgs, subParsers, debug);
|
|
41
|
-
parser._parseArgs = parser.parseArgs;
|
|
42
|
-
|
|
43
|
-
parser.parseArgs = function (args, namespace) {
|
|
44
|
-
if (_lodash.default.isUndefined(args)) {
|
|
45
|
-
args = [...process.argv.slice(2)];
|
|
46
|
-
}
|
|
29
|
+
const EXTRA_ARGS = 'extraArgs';
|
|
30
|
+
exports.EXTRA_ARGS = EXTRA_ARGS;
|
|
31
|
+
const NON_SERVER_ARGS = Object.freeze(new Set([_constants.DRIVER_TYPE, _constants.PLUGIN_TYPE, _constants.SERVER_SUBCOMMAND, '-h', '--help', '-v', '--version']));
|
|
32
|
+
|
|
33
|
+
const version = _support.fs.readPackageJsonFrom(_config.rootDir).version;
|
|
34
|
+
|
|
35
|
+
class ArgParser {
|
|
36
|
+
constructor(debug = false) {
|
|
37
|
+
const prog = process.argv[1] ? _path.default.basename(process.argv[1]) : 'appium';
|
|
38
|
+
const parser = new _argparse.ArgumentParser({
|
|
39
|
+
add_help: true,
|
|
40
|
+
description: 'A webdriver-compatible server that facilitates automation of web, mobile, and other types of apps across various platforms.',
|
|
41
|
+
prog
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
ArgParser._patchExit(parser);
|
|
47
45
|
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
this.prog = prog;
|
|
47
|
+
this.debug = debug;
|
|
48
|
+
this.parser = parser;
|
|
49
|
+
parser.add_argument('-v', '--version', {
|
|
50
|
+
action: 'version',
|
|
51
|
+
version
|
|
52
|
+
});
|
|
53
|
+
const subParsers = parser.add_subparsers({
|
|
54
|
+
dest: 'subcommand'
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
const serverArgs = ArgParser._addServerToParser(subParsers);
|
|
58
|
+
|
|
59
|
+
this.rawArgs = serverArgs;
|
|
60
|
+
|
|
61
|
+
ArgParser._addExtensionCommandsToParser(subParsers);
|
|
62
|
+
|
|
63
|
+
this.parse_args = this.parseArgs;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
parseArgs(args = process.argv.slice(2)) {
|
|
67
|
+
if (!NON_SERVER_ARGS.has(args[0])) {
|
|
68
|
+
args.unshift(_constants.SERVER_SUBCOMMAND);
|
|
50
69
|
}
|
|
51
70
|
|
|
52
|
-
|
|
53
|
-
|
|
71
|
+
try {
|
|
72
|
+
const parsed = this.parser.parse_known_args(args);
|
|
73
|
+
const [knownArgs, unknownArgs] = parsed;
|
|
54
74
|
|
|
55
|
-
|
|
56
|
-
|
|
75
|
+
if (unknownArgs !== null && unknownArgs !== void 0 && unknownArgs.length && (knownArgs.driverCommand === 'run' || knownArgs.pluginCommand === 'run')) {
|
|
76
|
+
return ArgParser._transformParsedArgs(knownArgs, unknownArgs);
|
|
77
|
+
} else if (unknownArgs !== null && unknownArgs !== void 0 && unknownArgs.length) {
|
|
78
|
+
throw new Error(`[ERROR] Unrecognized arguments: ${unknownArgs.join(' ')}`);
|
|
79
|
+
}
|
|
57
80
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
});
|
|
81
|
+
return ArgParser._transformParsedArgs(knownArgs);
|
|
82
|
+
} catch (err) {
|
|
83
|
+
if (this.debug) {
|
|
84
|
+
throw err;
|
|
85
|
+
}
|
|
64
86
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
87
|
+
{
|
|
88
|
+
console.error();
|
|
89
|
+
console.error(err.message);
|
|
90
|
+
process.exit(1);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
68
93
|
}
|
|
69
94
|
|
|
70
|
-
|
|
71
|
-
|
|
95
|
+
static _transformParsedArgs(args, unknownArgs = []) {
|
|
96
|
+
const result = _lodash.default.reduce(args, (unpacked, value, key) => {
|
|
97
|
+
if (!_lodash.default.isUndefined(value) && (0, _schema.hasArgSpec)(key)) {
|
|
98
|
+
const {
|
|
99
|
+
dest
|
|
100
|
+
} = (0, _schema.getArgSpec)(key);
|
|
72
101
|
|
|
73
|
-
|
|
74
|
-
|
|
102
|
+
_lodash.default.set(unpacked, dest, value);
|
|
103
|
+
} else {
|
|
104
|
+
unpacked[key] = value;
|
|
105
|
+
}
|
|
75
106
|
|
|
76
|
-
|
|
77
|
-
|
|
107
|
+
return unpacked;
|
|
108
|
+
}, {});
|
|
109
|
+
|
|
110
|
+
result[EXTRA_ARGS] = unknownArgs;
|
|
111
|
+
return result;
|
|
78
112
|
}
|
|
79
113
|
|
|
80
|
-
|
|
81
|
-
|
|
114
|
+
static _patchExit(parser) {
|
|
115
|
+
parser.exit = (code, msg) => {
|
|
116
|
+
if (code) {
|
|
117
|
+
throw new Error(msg);
|
|
118
|
+
}
|
|
82
119
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
dest: `${type}Command`,
|
|
92
|
-
debug
|
|
120
|
+
process.exit();
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
static _addServerToParser(subParser) {
|
|
125
|
+
const serverParser = subParser.add_parser('server', {
|
|
126
|
+
add_help: true,
|
|
127
|
+
help: 'Run an Appium server'
|
|
93
128
|
});
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
help: `Install a ${type}`
|
|
102
|
-
}, {
|
|
103
|
-
command: 'uninstall',
|
|
104
|
-
args: _args.extensionArgs[type].uninstall,
|
|
105
|
-
help: `Uninstall a ${type}`
|
|
106
|
-
}, {
|
|
107
|
-
command: 'update',
|
|
108
|
-
args: _args.extensionArgs[type].update,
|
|
109
|
-
help: `Update installed ${type}s to the latest version`
|
|
110
|
-
}];
|
|
111
|
-
|
|
112
|
-
for (const {
|
|
113
|
-
command,
|
|
114
|
-
args,
|
|
115
|
-
help
|
|
116
|
-
} of parserSpecs) {
|
|
117
|
-
const parser = extSubParsers.addParser(command, {
|
|
118
|
-
help,
|
|
119
|
-
debug
|
|
129
|
+
|
|
130
|
+
ArgParser._patchExit(serverParser);
|
|
131
|
+
|
|
132
|
+
const serverArgs = (0, _args.getServerArgs)();
|
|
133
|
+
|
|
134
|
+
for (const [flagsOrNames, opts] of serverArgs) {
|
|
135
|
+
serverParser.add_argument(...flagsOrNames, { ...opts
|
|
120
136
|
});
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
return serverArgs;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
static _addExtensionCommandsToParser(subParsers) {
|
|
143
|
+
for (const type of [_constants.DRIVER_TYPE, _constants.PLUGIN_TYPE]) {
|
|
144
|
+
const extParser = subParsers.add_parser(type, {
|
|
145
|
+
add_help: true,
|
|
146
|
+
help: `Access the ${type} management CLI commands`
|
|
147
|
+
});
|
|
148
|
+
|
|
149
|
+
ArgParser._patchExit(extParser);
|
|
121
150
|
|
|
122
|
-
|
|
123
|
-
|
|
151
|
+
const extSubParsers = extParser.add_subparsers({
|
|
152
|
+
dest: `${type}Command`
|
|
153
|
+
});
|
|
154
|
+
const extensionArgs = (0, _args.getExtensionArgs)();
|
|
155
|
+
const parserSpecs = [{
|
|
156
|
+
command: 'list',
|
|
157
|
+
args: extensionArgs[type].list,
|
|
158
|
+
help: `List available and installed ${type}s`
|
|
159
|
+
}, {
|
|
160
|
+
command: 'install',
|
|
161
|
+
args: extensionArgs[type].install,
|
|
162
|
+
help: `Install a ${type}`
|
|
163
|
+
}, {
|
|
164
|
+
command: 'uninstall',
|
|
165
|
+
args: extensionArgs[type].uninstall,
|
|
166
|
+
help: `Uninstall a ${type}`
|
|
167
|
+
}, {
|
|
168
|
+
command: 'update',
|
|
169
|
+
args: extensionArgs[type].update,
|
|
170
|
+
help: `Update installed ${type}s to the latest version`
|
|
171
|
+
}, {
|
|
172
|
+
command: 'run',
|
|
173
|
+
args: extensionArgs[type].run,
|
|
174
|
+
help: `Run a script (defined inside the ${type}'s package.json under the ` + `“scripts” field inside the “appium” field) from an installed ${type}`
|
|
175
|
+
}];
|
|
176
|
+
|
|
177
|
+
for (const {
|
|
178
|
+
command,
|
|
179
|
+
args,
|
|
180
|
+
help
|
|
181
|
+
} of parserSpecs) {
|
|
182
|
+
const parser = extSubParsers.add_parser(command, {
|
|
183
|
+
help
|
|
124
184
|
});
|
|
185
|
+
|
|
186
|
+
ArgParser._patchExit(parser);
|
|
187
|
+
|
|
188
|
+
for (const [flagsOrNames, opts] of args) {
|
|
189
|
+
parser.add_argument(...flagsOrNames, { ...opts
|
|
190
|
+
});
|
|
191
|
+
}
|
|
125
192
|
}
|
|
126
193
|
}
|
|
127
194
|
}
|
|
128
|
-
}
|
|
129
195
|
|
|
130
|
-
|
|
131
|
-
exports.default = _default;require('source-map-support').install();
|
|
196
|
+
}
|
|
132
197
|
|
|
198
|
+
exports.ArgParser = ArgParser;
|
|
133
199
|
|
|
134
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9jbGkvcGFyc2VyLmpzIl0sIm5hbWVzIjpbImdldFBhcnNlciIsImRlYnVnIiwicGFyc2VyIiwiQXJndW1lbnRQYXJzZXIiLCJ2ZXJzaW9uIiwicmVxdWlyZSIsInBhdGgiLCJyZXNvbHZlIiwicm9vdERpciIsImFkZEhlbHAiLCJkZXNjcmlwdGlvbiIsInByb2ciLCJwcm9jZXNzIiwiYXJndiIsImJhc2VuYW1lIiwic3ViUGFyc2VycyIsImFkZFN1YnBhcnNlcnMiLCJkZXN0Iiwic2VydmVyQXJncyIsImFkZFNlcnZlclRvUGFyc2VyIiwic2hhcmVkQXJncyIsInJhd0FyZ3MiLCJhZGRFeHRlbnNpb25zVG9QYXJzZXIiLCJfcGFyc2VBcmdzIiwicGFyc2VBcmdzIiwiYXJncyIsIm5hbWVzcGFjZSIsIl8iLCJpc1VuZGVmaW5lZCIsInNsaWNlIiwiaW5jbHVkZXMiLCJEUklWRVJfVFlQRSIsIlBMVUdJTl9UWVBFIiwic3BsaWNlIiwiYmluZCIsInNlcnZlclBhcnNlciIsImFkZFBhcnNlciIsImhlbHAiLCJmbGFncyIsIm9wdHMiLCJhZGRBcmd1bWVudCIsImdldERlZmF1bHRTZXJ2ZXJBcmdzIiwiZGVmYXVsdHMiLCJhcmciLCJkZWZhdWx0VmFsdWUiLCJ0eXBlIiwiZXh0UGFyc2VyIiwiZXh0U3ViUGFyc2VycyIsInBhcnNlclNwZWNzIiwiY29tbWFuZCIsImV4dGVuc2lvbkFyZ3MiLCJsaXN0IiwiaW5zdGFsbCIsInVuaW5zdGFsbCIsInVwZGF0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLFNBQVNBLFNBQVQsQ0FBb0JDLEtBQUssR0FBRyxLQUE1QixFQUFtQztBQUNqQyxRQUFNQyxNQUFNLEdBQUcsSUFBSUMsd0JBQUosQ0FBbUI7QUFDaENDLElBQUFBLE9BQU8sRUFBRUMsT0FBTyxDQUFDQyxjQUFLQyxPQUFMLENBQWFDLGNBQWIsRUFBc0IsY0FBdEIsQ0FBRCxD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RDtBQUFVeEIsTUFBQUEsSUFBVjtBQUFnQlksTUFBQUE7QUFBaEIsS0FBWCxJQUFvQ1csV0FBcEMsRUFBaUQ7QUFDL0MsWUFBTTlDLE1BQU0sR0FBRzZDLGFBQWEsQ0FBQ1gsU0FBZCxDQUF3QmEsT0FBeEIsRUFBaUM7QUFBQ1osUUFBQUEsSUFBRDtBQUFPcEMsUUFBQUE7QUFBUCxPQUFqQyxDQUFmOztBQUNBLFdBQUssTUFBTSxDQUFDcUMsS0FBRCxFQUFRQyxJQUFSLENBQVgsSUFBNEIsQ0FBQyxHQUFHbkIsVUFBSixFQUFnQixHQUFHSyxJQUFuQixDQUE1QixFQUFzRDtBQUVwRHZCLFFBQUFBLE1BQU0sQ0FBQ3NDLFdBQVAsQ0FBbUIsQ0FBQyxHQUFHRixLQUFKLENBQW5CLEVBQStCLEVBQUMsR0FBR0M7QUFBSixTQUEvQjtBQUNEO0FBQ0Y7QUFDRjtBQUNGOztlQUVjdkMsUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IEFyZ3VtZW50UGFyc2VyIH0gZnJvbSAnYXJncGFyc2UnO1xuaW1wb3J0IHsgc2hhcmVkQXJncywgc2VydmVyQXJncywgZXh0ZW5zaW9uQXJncyB9IGZyb20gJy4vYXJncyc7XG5pbXBvcnQgeyBEUklWRVJfVFlQRSwgUExVR0lOX1RZUEUgfSBmcm9tICcuLi9leHRlbnNpb24tY29uZmlnJztcbmltcG9ydCB7IHJvb3REaXIgfSBmcm9tICcuLi91dGlscyc7XG5cbmZ1bmN0aW9uIGdldFBhcnNlciAoZGVidWcgPSBmYWxzZSkge1xuICBjb25zdCBwYXJzZXIgPSBuZXcgQXJndW1lbnRQYXJzZXIoe1xuICAgIHZlcnNpb246IHJlcXVpcmUocGF0aC5yZXNvbHZlKHJvb3REaXIsICdwYWNrYWdlLmpzb24nKSkudmVyc2lvbixcbiAgICBhZGRIZWxwOiB0cnVlLFxuICAgIGRlc2NyaXB0aW9uOiAnQSB3ZWJkcml2ZXItY29tcGF0aWJsZSBzZXJ2ZXIgZm9yIHVzZSB3aXRoIG5hdGl2ZSBhbmQgaHlicmlkIGlPUyBhbmQgQW5kcm9pZCBhcHBsaWNhdGlvbnMuJyxcbiAgICBwcm9nOiBwcm9jZXNzLmFyZ3ZbMV0gPyBwYXRoLmJhc2VuYW1lKHByb2Nlc3MuYXJndlsxXSkgOiAnYXBwaXVtJyxcbiAgICBkZWJ1Z1xuICB9KTtcbiAgY29uc3Qgc3ViUGFyc2VycyA9IHBhcnNlci5hZGRTdWJwYXJzZXJzKHtkZXN0OiAnc3ViY29tbWFuZCcsIGRlYnVnfSk7XG5cbiAgLy8gYWRkIHRoZSAnc2VydmVyJyBzdWJjb21tYW5kLCBhbmQgc3RvcmUgdGhlIHJhdyBhcmd1bWVudHMgb24gdGhlIHBhcnNlclxuICAvLyBvYmplY3QgYXMgYSB3YXkgZm9yIG90aGVyIHBhcnRzIG9mIHRoZSBjb2RlIHRvIHdvcmsgd2l0aCB0aGUgYXJndW1lbnRzXG4gIC8vIGNvbmNlcHR1YWxseSByYXRoZXIgdGhhbiBqdXN0IHRocm91Z2ggYXJncGFyc2VcbiAgY29uc3Qgc2VydmVyQXJncyA9IGFkZFNlcnZlclRvUGFyc2VyKHNoYXJlZEFyZ3MsIHN1YlBhcnNlcnMsIGRlYnVnKTtcbiAgcGFyc2VyLnJhd0FyZ3MgPSBzZXJ2ZXJBcmdzO1xuXG4gIC8vIGFkZCB0aGUgJ2RyaXZlcicgYW5kICdwbHVnaW4nIHN1YmNvbW1hbmRzXG4gIGFkZEV4dGVuc2lvbnNUb1BhcnNlcihzaGFyZWRBcmdzLCBzdWJQYXJzZXJzLCBkZWJ1Zyk7XG5cbiAgLy8gbW9kaWZ5IHRoZSBwYXJzZUFyZ3MgZnVuY3Rpb24gdG8gaW5zZXJ0IHRoZSAnc2VydmVyJyBzdWJjb21tYW5kIGlmIHRoZVxuICAvLyB1c2VyIGhhc24ndCBzcGVjaWZpZWQgYSBzdWJjb21tYW5kIG9yIHRoZSBnbG9iYWwgaGVscCBjb21tYW5kXG4gIHBhcnNlci5fcGFyc2VBcmdzID0gcGFyc2VyLnBhcnNlQXJncztcbiAgcGFyc2VyLnBhcnNlQXJncyA9IGZ1bmN0aW9uIChhcmdzLCBuYW1lc3BhY2UpIHtcbiAgICBpZiAoXy5pc1VuZGVmaW5lZChhcmdzKSkge1xuICAgICAgYXJncyA9IFsuLi5wcm9jZXNzLmFyZ3Yuc2xpY2UoMildO1xuICAgIH1cbiAgICBpZiAoIV8uaW5jbHVkZXMoW0RSSVZFUl9UWVBFLCBQTFVHSU5fVFlQRSwgJ3NlcnZlcicsICctaCddLCBhcmdzWzBdKSkge1xuICAgICAgYXJncy5zcGxpY2UoMCwgMCwgJ3NlcnZlcicpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fcGFyc2VBcmdzKGFyZ3MsIG5hbWVzcGFjZSk7XG4gIH0uYmluZChwYXJzZXIpO1xuICByZXR1cm4gcGFyc2VyO1xufVxuXG5mdW5jdGlvbiBhZGRTZXJ2ZXJUb1BhcnNlciAoc2hhcmVkQXJncywgc3ViUGFyc2VycywgZGVidWcpIHtcbiAgY29uc3Qgc2VydmVyUGFyc2VyID0gc3ViUGFyc2Vycy5hZGRQYXJzZXIoJ3NlcnZlcicsIHtcbiAgICBhZGRIZWxwOiB0cnVlLFxuICAgIGhlbHA6ICdSdW4gYW4gQXBwaXVtIHNlcnZlcicsXG4gICAgZGVidWdcbiAgfSk7XG5cbiAgZm9yIChjb25zdCBbZmxhZ3MsIG9wdHNdIG9mIFsuLi5zaGFyZWRBcmdzLCAuLi5zZXJ2ZXJBcmdzXSkge1xuICAgIC8vIGFkZEFyZ3VtZW50IG11dGF0ZXMgYXJndW1lbnRzIHNvIG1ha2UgY29waWVzXG4gICAgc2VydmVyUGFyc2VyLmFkZEFyZ3VtZW50KFsuLi5mbGFnc10sIHsuLi5vcHRzfSk7XG4gIH1cblxuICByZXR1cm4gc2VydmVyQXJncztcbn1cblxuZnVuY3Rpb24gZ2V0RGVmYXVsdFNlcnZlckFyZ3MgKCkge1xuICBsZXQgZGVmYXVsdHMgPSB7fTtcbiAgZm9yIChsZXQgWywgYXJnXSBvZiBzZXJ2ZXJBcmdzKSB7XG4gICAgZGVmYXVsdHNbYXJnLmRlc3RdID0gYXJnLmRlZmF1bHRWYWx1ZTtcbiAgfVxuICByZXR1cm4gZGVmYXVsdHM7XG59XG5cbmZ1bmN0aW9uIGFkZEV4dGVuc2lvbnNUb1BhcnNlciAoc2hhcmVkQXJncywgc3ViUGFyc2VycywgZGVidWcpIHtcbiAgZm9yIChjb25zdCB0eXBlIG9mIFtEUklWRVJfVFlQRSwgUExVR0lOX1RZUEVdKSB7XG4gICAgY29uc3QgZXh0UGFyc2VyID0gc3ViUGFyc2Vycy5hZGRQYXJzZXIodHlwZSwge1xuICAgICAgYWRkSGVscDogdHJ1ZSxcbiAgICAgIGhlbHA6IGBBY2Nlc3MgdGhlICR7dHlwZX0gbWFuYWdlbWVudCBDTEkgY29tbWFuZHNgLFxuICAgICAgZGVidWdcbiAgICB9KTtcbiAgICBjb25zdCBleHRTdWJQYXJzZXJzID0gZXh0UGFyc2VyLmFkZFN1YnBhcnNlcnMoe1xuICAgICAgZGVzdDogYCR7dHlwZX1Db21tYW5kYCxcbiAgICAgIGRlYnVnXG4gICAgfSk7XG4gICAgY29uc3QgcGFyc2VyU3BlY3MgPSBbXG4gICAgICB7Y29tbWFuZDogJ2xpc3QnLCBhcmdzOiBleHRlbnNpb25BcmdzW3R5cGVdLmxpc3QsXG4gICAgICAgaGVscDogYExpc3QgYXZhaWxhYmxlIGFuZCBpbnN0YWxsZWQgJHt0eXBlfXNgfSxcbiAgICAgIHtjb21tYW5kOiAnaW5zdGFsbCcsIGFyZ3M6IGV4dGVuc2lvbkFyZ3NbdHlwZV0uaW5zdGFsbCxcbiAgICAgICBoZWxwOiBgSW5zdGFsbCBhICR7dHlwZX1gfSxcbiAgICAgIHtjb21tYW5kOiAndW5pbnN0YWxsJywgYXJnczogZXh0ZW5zaW9uQXJnc1t0eXBlXS51bmluc3RhbGwsXG4gICAgICAgaGVscDogYFVuaW5zdGFsbCBhICR7dHlwZX1gfSxcbiAgICAgIHtjb21tYW5kOiAndXBkYXRlJywgYXJnczogZXh0ZW5zaW9uQXJnc1t0eXBlXS51cGRhdGUsXG4gICAgICAgaGVscDogYFVwZGF0ZSBpbnN0YWxsZWQgJHt0eXBlfXMgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uYH0sXG4gICAgXTtcblxuICAgIGZvciAoY29uc3Qge2NvbW1hbmQsIGFyZ3MsIGhlbHB9IG9mIHBhcnNlclNwZWNzKSB7XG4gICAgICBjb25zdCBwYXJzZXIgPSBleHRTdWJQYXJzZXJzLmFkZFBhcnNlcihjb21tYW5kLCB7aGVscCwgZGVidWd9KTtcbiAgICAgIGZvciAoY29uc3QgW2ZsYWdzLCBvcHRzXSBvZiBbLi4uc2hhcmVkQXJncywgLi4uYXJnc10pIHtcbiAgICAgICAgLy8gYWRkQXJndW1lbnQgbXV0YXRlcyBwYXJhbXMgc28gbWFrZSBzdXJlIHRvIHNlbmQgaW4gY29waWVzIGluc3RlYWRcbiAgICAgICAgcGFyc2VyLmFkZEFyZ3VtZW50KFsuLi5mbGFnc10sIHsuLi5vcHRzfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGdldFBhcnNlcjtcbmV4cG9ydCB7IGdldFBhcnNlciwgZ2V0RGVmYXVsdFNlcnZlckFyZ3MgfTtcbiJdLCJmaWxlIjoibGliL2NsaS9wYXJzZXIuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4ifQ==
|
|
200
|
+
function getParser(debug) {
|
|
201
|
+
(0, _schema.finalizeSchema)();
|
|
202
|
+
return new ArgParser(debug);
|
|
203
|
+
}
|
|
204
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJFWFRSQV9BUkdTIiwiTk9OX1NFUlZFUl9BUkdTIiwiT2JqZWN0IiwiZnJlZXplIiwiU2V0IiwiRFJJVkVSX1RZUEUiLCJQTFVHSU5fVFlQRSIsIlNFUlZFUl9TVUJDT01NQU5EIiwidmVyc2lvbiIsImZzIiwicmVhZFBhY2thZ2VKc29uRnJvbSIsInJvb3REaXIiLCJBcmdQYXJzZXIiLCJjb25zdHJ1Y3RvciIsImRlYnVnIiwicHJvZyIsInByb2Nlc3MiLCJhcmd2IiwicGF0aCIsImJhc2VuYW1lIiwicGFyc2VyIiwiQXJndW1lbnRQYXJzZXIiLCJhZGRfaGVscCIsImRlc2NyaXB0aW9uIiwiX3BhdGNoRXhpdCIsImFkZF9hcmd1bWVudCIsImFjdGlvbiIsInN1YlBhcnNlcnMiLCJhZGRfc3VicGFyc2VycyIsImRlc3QiLCJzZXJ2ZXJBcmdzIiwiX2FkZFNlcnZlclRvUGFyc2VyIiwicmF3QXJncyIsIl9hZGRFeHRlbnNpb25Db21tYW5kc1RvUGFyc2VyIiwicGFyc2VfYXJncyIsInBhcnNlQXJncyIsImFyZ3MiLCJzbGljZSIsImhhcyIsInVuc2hpZnQiLCJwYXJzZWQiLCJwYXJzZV9rbm93bl9hcmdzIiwia25vd25BcmdzIiwidW5rbm93bkFyZ3MiLCJsZW5ndGgiLCJkcml2ZXJDb21tYW5kIiwicGx1Z2luQ29tbWFuZCIsIl90cmFuc2Zvcm1QYXJzZWRBcmdzIiwiRXJyb3IiLCJqb2luIiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwibWVzc2FnZSIsImV4aXQiLCJyZXN1bHQiLCJfIiwicmVkdWNlIiwidW5wYWNrZWQiLCJ2YWx1ZSIsImtleSIsImlzVW5kZWZpbmVkIiwiaGFzQXJnU3BlYyIsImdldEFyZ1NwZWMiLCJzZXQiLCJjb2RlIiwibXNnIiwic3ViUGFyc2VyIiwic2VydmVyUGFyc2VyIiwiYWRkX3BhcnNlciIsImhlbHAiLCJnZXRTZXJ2ZXJBcmdzIiwiZmxhZ3NPck5hbWVzIiwib3B0cyIsInR5cGUiLCJleHRQYXJzZXIiLCJleHRTdWJQYXJzZXJzIiwiZXh0ZW5zaW9uQXJncyIsImdldEV4dGVuc2lvbkFyZ3MiLCJwYXJzZXJTcGVjcyIsImNvbW1hbmQiLCJsaXN0IiwiaW5zdGFsbCIsInVuaW5zdGFsbCIsInVwZGF0ZSIsInJ1biIsImdldFBhcnNlciIsImZpbmFsaXplU2NoZW1hIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL2NsaS9wYXJzZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtmc30gZnJvbSAnQGFwcGl1bS9zdXBwb3J0JztcbmltcG9ydCB7QXJndW1lbnRQYXJzZXJ9IGZyb20gJ2FyZ3BhcnNlJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7RFJJVkVSX1RZUEUsIFBMVUdJTl9UWVBFLCBTRVJWRVJfU1VCQ09NTUFORH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7ZmluYWxpemVTY2hlbWEsIGdldEFyZ1NwZWMsIGhhc0FyZ1NwZWN9IGZyb20gJy4uL3NjaGVtYSc7XG5pbXBvcnQge3Jvb3REaXJ9IGZyb20gJy4uL2NvbmZpZyc7XG5pbXBvcnQge2dldEV4dGVuc2lvbkFyZ3MsIGdldFNlcnZlckFyZ3N9IGZyb20gJy4vYXJncyc7XG5cbmV4cG9ydCBjb25zdCBFWFRSQV9BUkdTID0gJ2V4dHJhQXJncyc7XG5cbi8qKlxuICogSWYgdGhlIHBhcnNlZCBhcmdzIGRvIG5vdCBjb250YWluIGFueSBvZiB0aGVzZSB2YWx1ZXMsIHRoZW4gd2VcbiAqIHdpbGwgYXV0b21hdGlhbGx5IGluamVjdCB0aGUgYHNlcnZlcmAgc3ViY29tbWFuZC5cbiAqL1xuY29uc3QgTk9OX1NFUlZFUl9BUkdTID0gT2JqZWN0LmZyZWV6ZShcbiAgbmV3IFNldChbRFJJVkVSX1RZUEUsIFBMVUdJTl9UWVBFLCBTRVJWRVJfU1VCQ09NTUFORCwgJy1oJywgJy0taGVscCcsICctdicsICctLXZlcnNpb24nXSlcbik7XG5cbmNvbnN0IHZlcnNpb24gPSBmcy5yZWFkUGFja2FnZUpzb25Gcm9tKHJvb3REaXIpLnZlcnNpb247XG5cbi8qKlxuICogQSB3cmFwcGVyIGFyb3VuZCBgYXJncGFyc2VgXG4gKlxuICogLSBIYW5kbGVzIGluc3RhbnRpYXRpb24sIGNvbmZpZ3VyYXRpb24sIGFuZCBtb25rZXlwYXRjaGluZyBvZiBhblxuICogICAgYEFyZ3VtZW50UGFyc2VyYCBpbnN0YW5jZSBmb3IgQXBwaXVtIHNlcnZlciBhbmQgaXRzIGV4dGVuc2lvbnNcbiAqIC0gSGFuZGxlcyBlcnJvciBjb25kaXRpb25zLCBtZXNzYWdlcywgYW5kIGV4aXQgYmVoYXZpb3JcbiAqL1xuY2xhc3MgQXJnUGFyc2VyIHtcbiAgLyoqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gW2RlYnVnXSAtIElmIHRydWUsIHRocm93IGluc3RlYWQgb2YgZXhpdCBvbiBlcnJvci5cbiAgICovXG4gIGNvbnN0cnVjdG9yKGRlYnVnID0gZmFsc2UpIHtcbiAgICBjb25zdCBwcm9nID0gcHJvY2Vzcy5hcmd2WzFdID8gcGF0aC5iYXNlbmFtZShwcm9jZXNzLmFyZ3ZbMV0pIDogJ2FwcGl1bSc7XG4gICAgY29uc3QgcGFyc2VyID0gbmV3IEFyZ3VtZW50UGFyc2VyKHtcbiAgICAgIGFkZF9oZWxwOiB0cnVlLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICdBIHdlYmRyaXZlci1jb21wYXRpYmxlIHNlcnZlciB0aGF0IGZhY2lsaXRhdGVzIGF1dG9tYXRpb24gb2Ygd2ViLCBtb2JpbGUsIGFuZCBvdGhlciB0eXBlcyBvZiBhcHBzIGFjcm9zcyB2YXJpb3VzIHBsYXRmb3Jtcy4nLFxuICAgICAgcHJvZyxcbiAgICB9KTtcblxuICAgIEFyZ1BhcnNlci5fcGF0Y2hFeGl0KHBhcnNlcik7XG5cbiAgICAvKipcbiAgICAgKiBQcm9ncmFtIG5hbWUgKHR5cGljYWxseSBgYXBwaXVtYClcbiAgICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgICAqL1xuICAgIHRoaXMucHJvZyA9IHByb2c7XG5cbiAgICAvKipcbiAgICAgKiBJZiBgdHJ1ZWAsIHRocm93IGFuIGVycm9yIG9uIHBhcnNlIGZhaWx1cmUgaW5zdGVhZCBvZiBwcmludGluZyBoZWxwXG4gICAgICogQHR5cGUge2Jvb2xlYW59XG4gICAgICovXG4gICAgdGhpcy5kZWJ1ZyA9IGRlYnVnO1xuXG4gICAgLyoqXG4gICAgICogV3JhcHBlZCBgQXJndW1lbnRQYXJzZXJgIGluc3RhbmNlXG4gICAgICogQHR5cGUge0FyZ3VtZW50UGFyc2VyfVxuICAgICAqL1xuICAgIHRoaXMucGFyc2VyID0gcGFyc2VyO1xuXG4gICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLXYnLCAnLS12ZXJzaW9uJywge1xuICAgICAgYWN0aW9uOiAndmVyc2lvbicsXG4gICAgICB2ZXJzaW9uLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc3ViUGFyc2VycyA9IHBhcnNlci5hZGRfc3VicGFyc2Vycyh7ZGVzdDogJ3N1YmNvbW1hbmQnfSk7XG5cbiAgICAvLyBhZGQgdGhlICdzZXJ2ZXInIHN1YmNvbW1hbmQsIGFuZCBzdG9yZSB0aGUgcmF3IGFyZ3VtZW50cyBvbiB0aGUgcGFyc2VyXG4gICAgLy8gb2JqZWN0IGFzIGEgd2F5IGZvciBvdGhlciBwYXJ0cyBvZiB0aGUgY29kZSB0byB3b3JrIHdpdGggdGhlIGFyZ3VtZW50c1xuICAgIC8vIGNvbmNlcHR1YWxseSByYXRoZXIgdGhhbiBqdXN0IHRocm91Z2ggYXJncGFyc2VcbiAgICBjb25zdCBzZXJ2ZXJBcmdzID0gQXJnUGFyc2VyLl9hZGRTZXJ2ZXJUb1BhcnNlcihzdWJQYXJzZXJzKTtcblxuICAgIHRoaXMucmF3QXJncyA9IHNlcnZlckFyZ3M7XG5cbiAgICAvLyBhZGQgdGhlICdkcml2ZXInIGFuZCAncGx1Z2luJyBzdWJjb21tYW5kc1xuICAgIEFyZ1BhcnNlci5fYWRkRXh0ZW5zaW9uQ29tbWFuZHNUb1BhcnNlcihzdWJQYXJzZXJzKTtcblxuICAgIC8vIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IC8gZHJvcC1pbiB3cmFwcGVyXG4gICAgLyoqXG4gICAgICogQHR5cGUge0FyZ1BhcnNlclsncGFyc2VBcmdzJ119XG4gICAgICovXG4gICAgdGhpcy5wYXJzZV9hcmdzID0gdGhpcy5wYXJzZUFyZ3M7XG4gIH1cblxuICAvKipcbiAgICogUGFyc2UgYXJndW1lbnRzIGZyb20gdGhlIGNvbW1hbmQgbGluZS5cbiAgICpcbiAgICogSWYgbm8gc3ViY29tbWFuZCBpcyBwYXNzZWQgaW4sIHRoaXMgbWV0aG9kIHdpbGwgaW5qZWN0IHRoZSBgc2VydmVyYCBzdWJjb21tYW5kLlxuICAgKlxuICAgKiBgQXJnUGFyc2VyLnByb3RvdHlwZS5wYXJzZV9hcmdzYCBpcyBhbiBhbGlhcyBvZiB0aGlzIG1ldGhvZC5cbiAgICogQHRlbXBsYXRlIFtUPWltcG9ydCgnYXBwaXVtL3R5cGVzJykuV2l0aFNlcnZlclN1YmNvbW1hbmRdXG4gICAqIEBwYXJhbSB7c3RyaW5nW119IFthcmdzXSAtIEFycmF5IG9mIGFyZ3VtZW50cywgb3N0ZW5zaWJseSBmcm9tIGBwcm9jZXNzLmFyZ3ZgLiBHYXRoZXJzIGFyZ3MgZnJvbSBgcHJvY2Vzcy5hcmd2YCBpZiBub3QgcHJvdmlkZWQuXG4gICAqIEByZXR1cm5zIHtpbXBvcnQoJ2FwcGl1bS90eXBlcycpLkFyZ3M8VD59IC0gVGhlIHBhcnNlZCBhcmd1bWVudHNcbiAgICovXG4gIHBhcnNlQXJncyhhcmdzID0gcHJvY2Vzcy5hcmd2LnNsaWNlKDIpKSB7XG4gICAgaWYgKCFOT05fU0VSVkVSX0FSR1MuaGFzKGFyZ3NbMF0pKSB7XG4gICAgICBhcmdzLnVuc2hpZnQoU0VSVkVSX1NVQkNPTU1BTkQpO1xuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBwYXJzZWQgPSB0aGlzLnBhcnNlci5wYXJzZV9rbm93bl9hcmdzKGFyZ3MpO1xuICAgICAgY29uc3QgW2tub3duQXJncywgdW5rbm93bkFyZ3NdID0gcGFyc2VkO1xuICAgICAgaWYgKFxuICAgICAgICB1bmtub3duQXJncz8ubGVuZ3RoICYmXG4gICAgICAgIChrbm93bkFyZ3MuZHJpdmVyQ29tbWFuZCA9PT0gJ3J1bicgfHwga25vd25BcmdzLnBsdWdpbkNvbW1hbmQgPT09ICdydW4nKVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBBcmdQYXJzZXIuX3RyYW5zZm9ybVBhcnNlZEFyZ3Moa25vd25BcmdzLCB1bmtub3duQXJncyk7XG4gICAgICB9IGVsc2UgaWYgKHVua25vd25BcmdzPy5sZW5ndGgpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBbRVJST1JdIFVucmVjb2duaXplZCBhcmd1bWVudHM6ICR7dW5rbm93bkFyZ3Muam9pbignICcpfWApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIEFyZ1BhcnNlci5fdHJhbnNmb3JtUGFyc2VkQXJncyhrbm93bkFyZ3MpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKHRoaXMuZGVidWcpIHtcbiAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgfVxuICAgICAgLy8gdGhpcyBpc24ndCB0ZXN0ZWQgdmlhIHVuaXQgdGVzdHMgKHdlIHVzZSBgZGVidWc6IHRydWVgKSBzbyBtYXkgZXNjYXBlIGNvdmVyYWdlLlxuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICBjb25zb2xlLmVycm9yKCk7IC8vIG5lZWQgYW4gZXh0cmEgc3BhY2Ugc2luY2UgYXJncGFyc2UgcHJpbnRzIHVzYWdlLlxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICBjb25zb2xlLmVycm9yKGVyci5tZXNzYWdlKTtcbiAgICAgICAgcHJvY2Vzcy5leGl0KDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHaXZlbiBhbiBvYmplY3QgZnVsbCBvZiBhcmd1bWVudHMgYXMgcmV0dXJuZWQgYnkgYGFyZ3BhcnNlci5wYXJzZV9hcmdzYCxcbiAgICogZXhwYW5kIHRoZSBvbmVzIGZvciBleHRlbnNpb25zIGludG8gYSBuZXN0ZWQgb2JqZWN0IHN0cnVjdHVyZSBhbmQgcmVuYW1lXG4gICAqIGtleXMgdG8gbWF0Y2ggdGhlIGludGVuZGVkIGRlc3RpbmF0aW9uLlxuICAgKlxuICAgKiBFLmcuLCBgeydkcml2ZXItZm9vLWJhcic6IGJhen1gIGJlY29tZXMgYHtkcml2ZXI6IHtmb286IHtiYXI6ICdiYXonfX19YFxuICAgKiBAcGFyYW0ge29iamVjdH0gYXJnc1xuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBbdW5rbm93bkFyZ3NdXG4gICAqIEByZXR1cm5zIHtvYmplY3R9XG4gICAqL1xuICBzdGF0aWMgX3RyYW5zZm9ybVBhcnNlZEFyZ3MoYXJncywgdW5rbm93bkFyZ3MgPSBbXSkge1xuICAgIGNvbnN0IHJlc3VsdCA9IF8ucmVkdWNlKFxuICAgICAgYXJncyxcbiAgICAgICh1bnBhY2tlZCwgdmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAoIV8uaXNVbmRlZmluZWQodmFsdWUpICYmIGhhc0FyZ1NwZWMoa2V5KSkge1xuICAgICAgICAgIGNvbnN0IHtkZXN0fSA9IC8qKiBAdHlwZSB7aW1wb3J0KCcuLi9zY2hlbWEvYXJnLXNwZWMnKS5BcmdTcGVjfSAqLyAoZ2V0QXJnU3BlYyhrZXkpKTtcbiAgICAgICAgICBfLnNldCh1bnBhY2tlZCwgZGVzdCwgdmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIHRoaXMgY291bGQgYmUgYW55dGhpbmcgdGhhdCBfaXNuJ3RfIGEgc2VydmVyIGFyZ1xuICAgICAgICAgIHVucGFja2VkW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5wYWNrZWQ7XG4gICAgICB9LFxuICAgICAge31cbiAgICApO1xuICAgIHJlc3VsdFtFWFRSQV9BUkdTXSA9IHVua25vd25BcmdzO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogUGF0Y2hlcyB0aGUgYGV4aXQoKWAgbWV0aG9kIG9mIHRoZSBwYXJzZXIgdG8gdGhyb3cgYW4gZXJyb3IsIHNvIHdlIGNhbiBoYW5kbGUgaXQgbWFudWFsbHkuXG4gICAqIEBwYXJhbSB7QXJndW1lbnRQYXJzZXJ9IHBhcnNlclxuICAgKi9cbiAgc3RhdGljIF9wYXRjaEV4aXQocGFyc2VyKSB7XG4gICAgcGFyc2VyLmV4aXQgPSAoY29kZSwgbXNnKSA9PiB7XG4gICAgICBpZiAoY29kZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IobXNnKTtcbiAgICAgIH1cbiAgICAgIHByb2Nlc3MuZXhpdCgpO1xuICAgIH07XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHtpbXBvcnQoJ2FyZ3BhcnNlJykuU3ViUGFyc2VyfSBzdWJQYXJzZXJcbiAgICogQHJldHVybnMge2ltcG9ydCgnLi9hcmdzJykuQXJndW1lbnREZWZpbml0aW9uc31cbiAgICovXG4gIHN0YXRpYyBfYWRkU2VydmVyVG9QYXJzZXIoc3ViUGFyc2VyKSB7XG4gICAgY29uc3Qgc2VydmVyUGFyc2VyID0gc3ViUGFyc2VyLmFkZF9wYXJzZXIoJ3NlcnZlcicsIHtcbiAgICAgIGFkZF9oZWxwOiB0cnVlLFxuICAgICAgaGVscDogJ1J1biBhbiBBcHBpdW0gc2VydmVyJyxcbiAgICB9KTtcblxuICAgIEFyZ1BhcnNlci5fcGF0Y2hFeGl0KHNlcnZlclBhcnNlcik7XG5cbiAgICBjb25zdCBzZXJ2ZXJBcmdzID0gZ2V0U2VydmVyQXJncygpO1xuICAgIGZvciAoY29uc3QgW2ZsYWdzT3JOYW1lcywgb3B0c10gb2Ygc2VydmVyQXJncykge1xuICAgICAgLy8gVFMgZG9lc24ndCBsaWtlIHRoZSBzcHJlYWQgb3BlcmF0b3IgaGVyZS5cbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIHNlcnZlclBhcnNlci5hZGRfYXJndW1lbnQoLi4uZmxhZ3NPck5hbWVzLCB7Li4ub3B0c30pO1xuICAgIH1cblxuICAgIHJldHVybiBzZXJ2ZXJBcmdzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgZXh0ZW5zaW9uIHN1Yi1zdWItY29tbWFuZHMgdG8gYGRyaXZlcmAvYHBsdWdpbmAgc3ViY29tbWFuZHNcbiAgICogQHBhcmFtIHtpbXBvcnQoJ2FyZ3BhcnNlJykuU3ViUGFyc2VyfSBzdWJQYXJzZXJzXG4gICAqL1xuICBzdGF0aWMgX2FkZEV4dGVuc2lvbkNvbW1hbmRzVG9QYXJzZXIoc3ViUGFyc2Vycykge1xuICAgIGZvciAoY29uc3QgdHlwZSBvZiAvKiogQHR5cGUge1tEcml2ZXJUeXBlLCBQbHVnaW5UeXBlXX0gKi8gKFtEUklWRVJfVFlQRSwgUExVR0lOX1RZUEVdKSkge1xuICAgICAgY29uc3QgZXh0UGFyc2VyID0gc3ViUGFyc2Vycy5hZGRfcGFyc2VyKHR5cGUsIHtcbiAgICAgICAgYWRkX2hlbHA6IHRydWUsXG4gICAgICAgIGhlbHA6IGBBY2Nlc3MgdGhlICR7dHlwZX0gbWFuYWdlbWVudCBDTEkgY29tbWFuZHNgLFxuICAgICAgfSk7XG5cbiAgICAgIEFyZ1BhcnNlci5fcGF0Y2hFeGl0KGV4dFBhcnNlcik7XG5cbiAgICAgIGNvbnN0IGV4dFN1YlBhcnNlcnMgPSBleHRQYXJzZXIuYWRkX3N1YnBhcnNlcnMoe1xuICAgICAgICBkZXN0OiBgJHt0eXBlfUNvbW1hbmRgLFxuICAgICAgfSk7XG4gICAgICBjb25zdCBleHRlbnNpb25BcmdzID0gZ2V0RXh0ZW5zaW9uQXJncygpO1xuICAgICAgLyoqXG4gICAgICAgKiBAdHlwZSB7IHtjb21tYW5kOiBpbXBvcnQoJ2FwcGl1bS90eXBlcycpLkNsaUV4dGVuc2lvblN1YmNvbW1hbmQsIGFyZ3M6IGltcG9ydCgnLi9hcmdzJykuQXJndW1lbnREZWZpbml0aW9ucywgaGVscDogc3RyaW5nfVtdIH1cbiAgICAgICAqL1xuICAgICAgY29uc3QgcGFyc2VyU3BlY3MgPSBbXG4gICAgICAgIHtcbiAgICAgICAgICBjb21tYW5kOiAnbGlzdCcsXG4gICAgICAgICAgYXJnczogZXh0ZW5zaW9uQXJnc1t0eXBlXS5saXN0LFxuICAgICAgICAgIGhlbHA6IGBMaXN0IGF2YWlsYWJsZSBhbmQgaW5zdGFsbGVkICR7dHlwZX1zYCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGNvbW1hbmQ6ICdpbnN0YWxsJyxcbiAgICAgICAgICBhcmdzOiBleHRlbnNpb25BcmdzW3R5cGVdLmluc3RhbGwsXG4gICAgICAgICAgaGVscDogYEluc3RhbGwgYSAke3R5cGV9YCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGNvbW1hbmQ6ICd1bmluc3RhbGwnLFxuICAgICAgICAgIGFyZ3M6IGV4dGVuc2lvbkFyZ3NbdHlwZV0udW5pbnN0YWxsLFxuICAgICAgICAgIGhlbHA6IGBVbmluc3RhbGwgYSAke3R5cGV9YCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGNvbW1hbmQ6ICd1cGRhdGUnLFxuICAgICAgICAgIGFyZ3M6IGV4dGVuc2lvbkFyZ3NbdHlwZV0udXBkYXRlLFxuICAgICAgICAgIGhlbHA6IGBVcGRhdGUgaW5zdGFsbGVkICR7dHlwZX1zIHRvIHRoZSBsYXRlc3QgdmVyc2lvbmAsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBjb21tYW5kOiAncnVuJyxcbiAgICAgICAgICBhcmdzOiBleHRlbnNpb25BcmdzW3R5cGVdLnJ1bixcbiAgICAgICAgICBoZWxwOlxuICAgICAgICAgICAgYFJ1biBhIHNjcmlwdCAoZGVmaW5lZCBpbnNpZGUgdGhlICR7dHlwZX0ncyBwYWNrYWdlLmpzb24gdW5kZXIgdGhlIGAgK1xuICAgICAgICAgICAgYOKAnHNjcmlwdHPigJ0gZmllbGQgaW5zaWRlIHRoZSDigJxhcHBpdW3igJ0gZmllbGQpIGZyb20gYW4gaW5zdGFsbGVkICR7dHlwZX1gLFxuICAgICAgICB9LFxuICAgICAgXTtcblxuICAgICAgZm9yIChjb25zdCB7Y29tbWFuZCwgYXJncywgaGVscH0gb2YgcGFyc2VyU3BlY3MpIHtcbiAgICAgICAgY29uc3QgcGFyc2VyID0gZXh0U3ViUGFyc2Vycy5hZGRfcGFyc2VyKGNvbW1hbmQsIHtoZWxwfSk7XG5cbiAgICAgICAgQXJnUGFyc2VyLl9wYXRjaEV4aXQocGFyc2VyKTtcblxuICAgICAgICBmb3IgKGNvbnN0IFtmbGFnc09yTmFtZXMsIG9wdHNdIG9mIGFyZ3MpIHtcbiAgICAgICAgICAvLyBhZGRfYXJndW1lbnQgbXV0YXRlcyBwYXJhbXMgc28gbWFrZSBzdXJlIHRvIHNlbmQgaW4gY29waWVzIGluc3RlYWRcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCguLi5mbGFnc09yTmFtZXMsIHsuLi5vcHRzfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEge0BsaW5rIEFyZ1BhcnNlcn0gaW5zdGFuY2U7IGZpbmFsaXplcyB0aGUgY29uZmlnIHNjaGVtYS5cbiAqXG4gKiBAY29uc3RydWN0cyBBcmdQYXJzZXJcbiAqIEBwYXJhbSB7Ym9vbGVhbn0gW2RlYnVnXSAtIElmIGB0cnVlYCwgdGhyb3cgaW5zdGVhZCBvZiBleGl0IHVwb24gcGFyc2luZyBlcnJvclxuICogQHJldHVybnMge0FyZ1BhcnNlcn1cbiAqL1xuZnVuY3Rpb24gZ2V0UGFyc2VyKGRlYnVnKSB7XG4gIGZpbmFsaXplU2NoZW1hKCk7XG5cbiAgcmV0dXJuIG5ldyBBcmdQYXJzZXIoZGVidWcpO1xufVxuXG5leHBvcnQge2dldFBhcnNlciwgQXJnUGFyc2VyfTtcblxuLyoqXG4gKiBAdHlwZWRlZiB7aW1wb3J0KCdAYXBwaXVtL3R5cGVzJykuRHJpdmVyVHlwZX0gRHJpdmVyVHlwZVxuICogQHR5cGVkZWYge2ltcG9ydCgnQGFwcGl1bS90eXBlcycpLlBsdWdpblR5cGV9IFBsdWdpblR5cGVcbiAqL1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7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
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @extends {ExtensionCommand<PluginType>}
|
|
3
|
+
*/
|
|
4
|
+
export default class PluginCommand extends ExtensionCommand<"plugin"> {
|
|
5
|
+
/**
|
|
6
|
+
*
|
|
7
|
+
* @param {import('./extension-command').ExtensionCommandOptions<PluginType>} opts
|
|
8
|
+
*/
|
|
9
|
+
constructor({ config, json }: import('./extension-command').ExtensionCommandOptions<PluginType>);
|
|
10
|
+
install({ plugin, installType, packageName }: {
|
|
11
|
+
plugin: any;
|
|
12
|
+
installType: any;
|
|
13
|
+
packageName: any;
|
|
14
|
+
}): Promise<import("./extension-command").ExtRecord<"plugin">>;
|
|
15
|
+
uninstall({ plugin }: {
|
|
16
|
+
plugin: any;
|
|
17
|
+
}): Promise<import("./extension-command").ExtRecord<"plugin">>;
|
|
18
|
+
update({ plugin, unsafe }: {
|
|
19
|
+
plugin: any;
|
|
20
|
+
unsafe: any;
|
|
21
|
+
}): Promise<import("./extension-command").ExtensionUpdateResult>;
|
|
22
|
+
run({ plugin, scriptName, extraArgs }: {
|
|
23
|
+
plugin: any;
|
|
24
|
+
scriptName: any;
|
|
25
|
+
extraArgs: any;
|
|
26
|
+
}): Promise<import("./extension-command").RunOutput>;
|
|
27
|
+
getPostInstallText({ extName, extData }: {
|
|
28
|
+
extName: any;
|
|
29
|
+
extData: any;
|
|
30
|
+
}): string;
|
|
31
|
+
}
|
|
32
|
+
export type PluginType = import('@appium/types').PluginType;
|
|
33
|
+
import ExtensionCommand from "./extension-command";
|
|
34
|
+
//# sourceMappingURL=plugin-command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-command.d.ts","sourceRoot":"","sources":["../../../lib/cli/plugin-command.js"],"names":[],"mappings":"AAMA;;GAEG;AACH;IACE;;;OAGG;IACH,8BAFW,OAAO,qBAAqB,EAAE,uBAAuB,CAAC,UAAU,CAAC,EAK3E;IAED;;;;mEAMC;IAED;;mEAEC;IAED;;;qEAEC;IAED;;;;yDAEC;IAED;;;eAEC;CAyBF;yBAGY,OAAO,eAAe,EAAE,UAAU"}
|