appium 2.0.0-beta.46 → 2.0.0-beta.47
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 +145 -44
- package/build/lib/appium.d.ts +3 -103
- package/build/lib/appium.d.ts.map +1 -1
- package/build/lib/appium.js +679 -549
- package/build/lib/appium.js.map +1 -1
- package/build/lib/cli/args.js +247 -127
- package/build/lib/cli/args.js.map +1 -1
- package/build/lib/cli/driver-command.js +63 -88
- package/build/lib/cli/driver-command.js.map +1 -1
- package/build/lib/cli/extension-command.d.ts +32 -23
- package/build/lib/cli/extension-command.d.ts.map +1 -1
- package/build/lib/cli/extension-command.js +730 -512
- package/build/lib/cli/extension-command.js.map +1 -1
- package/build/lib/cli/extension.d.ts +7 -6
- package/build/lib/cli/extension.d.ts.map +1 -1
- package/build/lib/cli/extension.js +68 -65
- package/build/lib/cli/extension.js.map +1 -1
- package/build/lib/cli/parser.d.ts +3 -3
- package/build/lib/cli/parser.d.ts.map +1 -1
- package/build/lib/cli/parser.js +234 -192
- package/build/lib/cli/parser.js.map +1 -1
- package/build/lib/cli/plugin-command.js +58 -87
- package/build/lib/cli/plugin-command.js.map +1 -1
- package/build/lib/cli/utils.js +66 -69
- package/build/lib/cli/utils.js.map +1 -1
- package/build/lib/config-file.d.ts.map +1 -1
- package/build/lib/config-file.js +189 -120
- package/build/lib/config-file.js.map +1 -1
- package/build/lib/config.d.ts.map +1 -1
- package/build/lib/config.js +254 -213
- package/build/lib/config.js.map +1 -1
- package/build/lib/constants.d.ts +5 -5
- package/build/lib/constants.d.ts.map +1 -1
- package/build/lib/constants.js +64 -59
- package/build/lib/constants.js.map +1 -1
- package/build/lib/extension/driver-config.js +199 -164
- package/build/lib/extension/driver-config.js.map +1 -1
- package/build/lib/extension/extension-config.d.ts +18 -16
- package/build/lib/extension/extension-config.d.ts.map +1 -1
- package/build/lib/extension/extension-config.js +523 -396
- package/build/lib/extension/extension-config.js.map +1 -1
- package/build/lib/extension/index.js +98 -68
- package/build/lib/extension/index.js.map +1 -1
- package/build/lib/extension/manifest-migrations.d.ts +27 -0
- package/build/lib/extension/manifest-migrations.d.ts.map +1 -0
- package/build/lib/extension/manifest-migrations.js +99 -0
- package/build/lib/extension/manifest-migrations.js.map +1 -0
- package/build/lib/extension/manifest.d.ts +7 -56
- package/build/lib/extension/manifest.d.ts.map +1 -1
- package/build/lib/extension/manifest.js +432 -240
- package/build/lib/extension/manifest.js.map +1 -1
- package/build/lib/extension/package-changed.js +57 -61
- package/build/lib/extension/package-changed.js.map +1 -1
- package/build/lib/extension/plugin-config.d.ts +2 -3
- package/build/lib/extension/plugin-config.d.ts.map +1 -1
- package/build/lib/extension/plugin-config.js +94 -70
- package/build/lib/extension/plugin-config.js.map +1 -1
- package/build/lib/grid-register.js +119 -137
- package/build/lib/grid-register.js.map +1 -1
- package/build/lib/logger.d.ts +1 -1
- package/build/lib/logger.d.ts.map +1 -1
- package/build/lib/logger.js +5 -15
- package/build/lib/logger.js.map +1 -1
- package/build/lib/logsink.d.ts.map +1 -1
- package/build/lib/logsink.js +189 -183
- package/build/lib/logsink.js.map +1 -1
- package/build/lib/main.d.ts +19 -12
- package/build/lib/main.d.ts.map +1 -1
- package/build/lib/main.js +330 -304
- package/build/lib/main.js.map +1 -1
- package/build/lib/schema/arg-spec.js +153 -108
- package/build/lib/schema/arg-spec.js.map +1 -1
- package/build/lib/schema/cli-args.js +203 -164
- package/build/lib/schema/cli-args.js.map +1 -1
- package/build/lib/schema/cli-transformers.js +117 -72
- package/build/lib/schema/cli-transformers.js.map +1 -1
- package/build/lib/schema/index.js +17 -32
- package/build/lib/schema/index.js.map +1 -1
- package/build/lib/schema/keywords.js +125 -67
- package/build/lib/schema/keywords.js.map +1 -1
- package/build/lib/schema/schema.d.ts.map +1 -1
- package/build/lib/schema/schema.js +582 -417
- package/build/lib/schema/schema.js.map +1 -1
- package/build/lib/utils.d.ts +41 -255
- package/build/lib/utils.d.ts.map +1 -1
- package/build/lib/utils.js +342 -193
- package/build/lib/utils.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/build/types/cli.d.ts +45 -34
- package/build/types/cli.d.ts.map +1 -1
- package/build/types/cli.js +3 -0
- package/build/types/cli.js.map +1 -0
- package/build/types/index.d.ts +1 -2
- package/build/types/index.d.ts.map +1 -1
- package/build/types/index.js +19 -0
- package/build/types/index.js.map +1 -0
- package/build/types/manifest/base.d.ts +135 -0
- package/build/types/manifest/base.d.ts.map +1 -0
- package/build/types/manifest/base.js +3 -0
- package/build/types/manifest/base.js.map +1 -0
- package/build/types/manifest/index.d.ts +19 -0
- package/build/types/manifest/index.d.ts.map +1 -0
- package/build/types/manifest/index.js +40 -0
- package/build/types/manifest/index.js.map +1 -0
- package/build/types/manifest/v3.d.ts +139 -0
- package/build/types/manifest/v3.d.ts.map +1 -0
- package/build/types/manifest/v3.js +3 -0
- package/build/types/manifest/v3.js.map +1 -0
- package/lib/appium.js +1 -1
- package/lib/cli/args.js +1 -1
- package/lib/cli/extension-command.js +116 -61
- package/lib/cli/extension.js +9 -8
- package/lib/cli/parser.js +2 -2
- package/lib/config-file.js +2 -3
- package/lib/config.js +3 -2
- package/lib/constants.js +6 -5
- package/lib/extension/extension-config.js +24 -25
- package/lib/extension/manifest-migrations.js +99 -0
- package/lib/extension/manifest.js +79 -72
- package/lib/extension/plugin-config.js +1 -2
- package/lib/logsink.js +26 -5
- package/lib/main.js +58 -50
- package/lib/schema/schema.js +6 -1
- package/lib/utils.js +62 -0
- package/package.json +23 -24
- package/scripts/autoinstall-extensions.js +78 -26
- package/types/cli.ts +81 -42
- package/types/index.ts +1 -2
- package/types/manifest/README.md +30 -0
- package/types/manifest/base.ts +158 -0
- package/types/manifest/index.ts +27 -0
- package/types/manifest/v3.ts +161 -0
- package/build/types/appium-manifest.d.ts +0 -59
- package/build/types/appium-manifest.d.ts.map +0 -1
- package/build/types/extension-manifest.d.ts +0 -55
- package/build/types/extension-manifest.d.ts.map +0 -1
- package/types/appium-manifest.ts +0 -73
- package/types/extension-manifest.ts +0 -64
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"args.js","names":["DRIVER_EXAMPLE","PLUGIN_EXAMPLE","INSTALL_TYPES_ARRAY","INSTALL_TYPES","EXTENSION_TYPES","Set","DRIVER_TYPE","PLUGIN_TYPE","globalExtensionArgs","Map","required","default","action","help","dest","getExtensionArgs","_","memoize","extensionArgs","type","EXT_SUBCOMMAND_LIST","makeListArgs","EXT_SUBCOMMAND_INSTALL","makeInstallArgs","EXT_SUBCOMMAND_UNINSTALL","makeUninstallArgs","EXT_SUBCOMMAND_UPDATE","makeUpdateArgs","EXT_SUBCOMMAND_RUN","makeRunArgs","choices","join","getServerArgs","toParserArgs","serverArgsDisallowedInConfig","const"],"sources":["../../../lib/cli/args.js"],"sourcesContent":["import _ from 'lodash';\nimport {\n DRIVER_TYPE,\n PLUGIN_TYPE,\n EXT_SUBCOMMAND_INSTALL,\n EXT_SUBCOMMAND_LIST,\n EXT_SUBCOMMAND_RUN,\n EXT_SUBCOMMAND_UNINSTALL,\n EXT_SUBCOMMAND_UPDATE,\n} from '../constants';\nimport {INSTALL_TYPES} from '../extension/extension-config';\nimport {toParserArgs} from '../schema/cli-args';\nconst DRIVER_EXAMPLE = 'xcuitest';\nconst PLUGIN_EXAMPLE = 'find_by_image';\n\n/**\n * This is necessary because we pass the array into `argparse`. `argparse` is bad and mutates things. We don't want that.\n * Bad `argparse`! Bad!\n */\nconst INSTALL_TYPES_ARRAY = [...INSTALL_TYPES];\n\n/** @type {Set<ExtensionType>} */\nconst EXTENSION_TYPES = new Set([DRIVER_TYPE, PLUGIN_TYPE]);\n\n// this set of args works for both drivers and plugins ('extensions')\n/** @type {ArgumentDefinitions} */\nconst globalExtensionArgs = new Map([\n [\n ['--json'],\n {\n required: false,\n default: false,\n action: 'store_true',\n help: 'Use JSON for output format',\n dest: 'json',\n },\n ],\n]);\n\n/**\n * Builds a Record of extension types to a Record of subcommands to their argument definitions\n */\nconst getExtensionArgs = _.memoize(function getExtensionArgs() {\n const extensionArgs = {};\n for (const type of EXTENSION_TYPES) {\n extensionArgs[type] = {\n [EXT_SUBCOMMAND_LIST]: makeListArgs(type),\n [EXT_SUBCOMMAND_INSTALL]: makeInstallArgs(type),\n [EXT_SUBCOMMAND_UNINSTALL]: makeUninstallArgs(type),\n [EXT_SUBCOMMAND_UPDATE]: makeUpdateArgs(type),\n [EXT_SUBCOMMAND_RUN]: makeRunArgs(type),\n };\n }\n return /** @type {Record<ExtensionType, Record<import('appium/types').CliExtensionSubcommand,ArgumentDefinitions>>} */ (\n extensionArgs\n );\n});\n\n/**\n * Makes the opts for the `list` subcommand for each extension type.\n * @param {ExtensionType} type\n * @returns {ArgumentDefinitions}\n */\nfunction makeListArgs(type) {\n return new Map([\n ...globalExtensionArgs,\n [\n ['--installed'],\n {\n required: false,\n default: false,\n action: 'store_true',\n help: `List only installed ${type}s`,\n dest: 'showInstalled',\n },\n ],\n [\n ['--updates'],\n {\n required: false,\n default: false,\n action: 'store_true',\n help: 'Show information about newer versions',\n dest: 'showUpdates',\n },\n ],\n ]);\n}\n\n/**\n * Makes the opts for the `install` subcommand for each extension type\n * @param {ExtensionType} type\n * @returns {ArgumentDefinitions}\n */\nfunction makeInstallArgs(type) {\n return new Map([\n ...globalExtensionArgs,\n [\n [type],\n {\n type: 'str',\n help:\n `Name of the ${type} to install, for example: ` + type === DRIVER_TYPE\n ? DRIVER_EXAMPLE\n : PLUGIN_EXAMPLE,\n },\n ],\n [\n ['--source'],\n {\n required: false,\n default: null,\n choices: INSTALL_TYPES_ARRAY,\n help:\n `Where to look for the ${type} if it is not one of Appium's verified ` +\n `${type}s. Possible values: ${INSTALL_TYPES_ARRAY.join(', ')}`,\n dest: 'installType',\n },\n ],\n [\n ['--package'],\n {\n required: false,\n default: null,\n type: 'str',\n help:\n `If installing from Git or GitHub, the package name, as defined in the plugin's ` +\n `package.json file in the \"name\" field, cannot be determined automatically, and ` +\n `should be reported here, otherwise the install will probably fail.`,\n dest: 'packageName',\n },\n ],\n ]);\n}\n\n/**\n * Makes the opts for the `uninstall` subcommand for each extension type\n * @param {ExtensionType} type\n * @returns {ArgumentDefinitions}\n */\nfunction makeUninstallArgs(type) {\n return new Map([\n ...globalExtensionArgs,\n [\n [type],\n {\n type: 'str',\n help:\n 'Name of the driver to uninstall, for example: ' + type === DRIVER_TYPE\n ? DRIVER_EXAMPLE\n : PLUGIN_EXAMPLE,\n },\n ],\n ]);\n}\n\n/**\n * Makes the opts for the `update` subcommand for each extension type\n * @param {ExtensionType} type\n * @returns {ArgumentDefinitions}\n */\nfunction makeUpdateArgs(type) {\n return new Map([\n ...globalExtensionArgs,\n [\n [type],\n {\n type: 'str',\n help:\n `Name of the ${type} to update, or the word \"installed\" to update all installed ` +\n `${type}s. To see available updates, run \"appium ${type} list --installed --updates\". ` +\n 'For example: ' +\n type ===\n DRIVER_TYPE\n ? DRIVER_EXAMPLE\n : PLUGIN_EXAMPLE,\n },\n ],\n [\n ['--unsafe'],\n {\n required: false,\n default: false,\n action: 'store_true',\n help:\n `Include updates that might have a new major revision, and potentially include ` +\n `breaking changes`,\n },\n ],\n ]);\n}\n\n/**\n * Makes the opts for the `run` subcommand for each extension type\n * @param {ExtensionType} type\n * @returns {ArgumentDefinitions}\n */\nfunction makeRunArgs(type) {\n return new Map([\n ...globalExtensionArgs,\n [\n [type],\n {\n type: 'str',\n help:\n `Name of the ${type} to run a script from, for example: ` + type === DRIVER_TYPE\n ? DRIVER_EXAMPLE\n : PLUGIN_EXAMPLE,\n },\n ],\n [\n ['scriptName'],\n {\n default: null,\n type: 'str',\n help:\n `Name of the script to run from the ${type}. The script name must be a key ` +\n `inside the \"appium.scripts\" field inside the ${type}'s \"package.json\" file`,\n },\n ],\n ]);\n}\n\n/**\n * Derives the options for the `server` command from the schema, and adds the arguments\n * which are disallowed in the config file.\n * @returns {ArgumentDefinitions}\n */\nfunction getServerArgs() {\n return new Map([...toParserArgs(), ...serverArgsDisallowedInConfig]);\n}\n\n/**\n * These don't make sense in the context of a config file for obvious reasons.\n * @type {ArgumentDefinitions}\n */\nconst serverArgsDisallowedInConfig = new Map([\n [\n ['--shell'],\n {\n required: false,\n help: 'Enter REPL mode',\n action: 'store_const',\n const: true,\n dest: 'shell',\n },\n ],\n [\n ['--show-build-info'],\n {\n dest: 'showBuildInfo',\n action: 'store_const',\n const: true,\n required: false,\n help: 'Show info about the Appium build and exit',\n },\n ],\n [\n ['--show-config'],\n {\n dest: 'showConfig',\n action: 'store_const',\n const: true,\n required: false,\n help: 'Show the current Appium configuration and exit',\n },\n ],\n [\n ['--config'],\n {\n dest: 'configFile',\n type: 'string',\n required: false,\n help: 'Explicit path to Appium configuration file',\n },\n ],\n]);\n\nexport {getServerArgs, getExtensionArgs};\n\n/**\n * @typedef {import('@appium/types').ExtensionType} ExtensionType\n */\n\n/**\n * A tuple of argument aliases and argument options\n * @typedef {Map<string[],import('argparse').ArgumentOptions>} ArgumentDefinitions\n */\n"],"mappings":";;;;;;;;;;AAAA;;AACA;;AASA;;AACA;;;;AACA,MAAMA,cAAc,GAAG,UAAvB;AACA,MAAMC,cAAc,GAAG,eAAvB;AAMA,MAAMC,mBAAmB,GAAG,CAAC,GAAGC,8BAAJ,CAA5B;AAGA,MAAMC,eAAe,GAAG,IAAIC,GAAJ,CAAQ,CAACC,sBAAD,EAAcC,sBAAd,CAAR,CAAxB;AAIA,MAAMC,mBAAmB,GAAG,IAAIC,GAAJ,CAAQ,CAClC,CACE,CAAC,QAAD,CADF,EAEE;EACEC,QAAQ,EAAE,KADZ;EAEEC,OAAO,EAAE,KAFX;EAGEC,MAAM,EAAE,YAHV;EAIEC,IAAI,EAAE,4BAJR;EAKEC,IAAI,EAAE;AALR,CAFF,CADkC,CAAR,CAA5B;;AAgBA,MAAMC,gBAAgB,GAAGC,eAAA,CAAEC,OAAF,CAAU,SAASF,gBAAT,GAA4B;EAC7D,MAAMG,aAAa,GAAG,EAAtB;;EACA,KAAK,MAAMC,IAAX,IAAmBf,eAAnB,EAAoC;IAClCc,aAAa,CAACC,IAAD,CAAb,GAAsB;MACpB,CAACC,8BAAD,GAAuBC,YAAY,CAACF,IAAD,CADf;MAEpB,CAACG,iCAAD,GAA0BC,eAAe,CAACJ,IAAD,CAFrB;MAGpB,CAACK,mCAAD,GAA4BC,iBAAiB,CAACN,IAAD,CAHzB;MAIpB,CAACO,gCAAD,GAAyBC,cAAc,CAACR,IAAD,CAJnB;MAKpB,CAACS,6BAAD,GAAsBC,WAAW,CAACV,IAAD;IALb,CAAtB;EAOD;;EACD,OACED,aADF;AAGD,CAdwB,CAAzB;;;;AAqBA,SAASG,YAAT,CAAsBF,IAAtB,EAA4B;EAC1B,OAAO,IAAIV,GAAJ,CAAQ,CACb,GAAGD,mBADU,EAEb,CACE,CAAC,aAAD,CADF,EAEE;IACEE,QAAQ,EAAE,KADZ;IAEEC,OAAO,EAAE,KAFX;IAGEC,MAAM,EAAE,YAHV;IAIEC,IAAI,EAAG,uBAAsBM,IAAK,GAJpC;IAKEL,IAAI,EAAE;EALR,CAFF,CAFa,EAYb,CACE,CAAC,WAAD,CADF,EAEE;IACEJ,QAAQ,EAAE,KADZ;IAEEC,OAAO,EAAE,KAFX;IAGEC,MAAM,EAAE,YAHV;IAIEC,IAAI,EAAE,uCAJR;IAKEC,IAAI,EAAE;EALR,CAFF,CAZa,CAAR,CAAP;AAuBD;;AAOD,SAASS,eAAT,CAAyBJ,IAAzB,EAA+B;EAC7B,OAAO,IAAIV,GAAJ,CAAQ,CACb,GAAGD,mBADU,EAEb,CACE,CAACW,IAAD,CADF,EAEE;IACEA,IAAI,EAAE,KADR;IAEEN,IAAI,EACD,eAAcM,IAAK,4BAApB,GAAkDA,IAAlD,KAA2Db,sBAA3D,GACIN,cADJ,GAEIC;EALR,CAFF,CAFa,EAYb,CACE,CAAC,UAAD,CADF,EAEE;IACES,QAAQ,EAAE,KADZ;IAEEC,OAAO,EAAE,IAFX;IAGEmB,OAAO,EAAE5B,mBAHX;IAIEW,IAAI,EACD,yBAAwBM,IAAK,yCAA9B,GACC,GAAEA,IAAK,uBAAsBjB,mBAAmB,CAAC6B,IAApB,CAAyB,IAAzB,CAA+B,EANjE;IAOEjB,IAAI,EAAE;EAPR,CAFF,CAZa,EAwBb,CACE,CAAC,WAAD,CADF,EAEE;IACEJ,QAAQ,EAAE,KADZ;IAEEC,OAAO,EAAE,IAFX;IAGEQ,IAAI,EAAE,KAHR;IAIEN,IAAI,EACD,iFAAD,GACC,iFADD,GAEC,oEAPL;IAQEC,IAAI,EAAE;EARR,CAFF,CAxBa,CAAR,CAAP;AAsCD;;AAOD,SAASW,iBAAT,CAA2BN,IAA3B,EAAiC;EAC/B,OAAO,IAAIV,GAAJ,CAAQ,CACb,GAAGD,mBADU,EAEb,CACE,CAACW,IAAD,CADF,EAEE;IACEA,IAAI,EAAE,KADR;IAEEN,IAAI,EACF,mDAAmDM,IAAnD,KAA4Db,sBAA5D,GACIN,cADJ,GAEIC;EALR,CAFF,CAFa,CAAR,CAAP;AAaD;;AAOD,SAAS0B,cAAT,CAAwBR,IAAxB,EAA8B;EAC5B,OAAO,IAAIV,GAAJ,CAAQ,CACb,GAAGD,mBADU,EAEb,CACE,CAACW,IAAD,CADF,EAEE;IACEA,IAAI,EAAE,KADR;IAEEN,IAAI,EACD,eAAcM,IAAK,8DAApB,GACG,GAAEA,IAAK,4CAA2CA,IAAK,gCAD1D,GAEE,eAFF,GAGEA,IAHF,KAIAb,sBAJA,GAKIN,cALJ,GAMIC;EATR,CAFF,CAFa,EAgBb,CACE,CAAC,UAAD,CADF,EAEE;IACES,QAAQ,EAAE,KADZ;IAEEC,OAAO,EAAE,KAFX;IAGEC,MAAM,EAAE,YAHV;IAIEC,IAAI,EACD,gFAAD,GACC;EANL,CAFF,CAhBa,CAAR,CAAP;AA4BD;;AAOD,SAASgB,WAAT,CAAqBV,IAArB,EAA2B;EACzB,OAAO,IAAIV,GAAJ,CAAQ,CACb,GAAGD,mBADU,EAEb,CACE,CAACW,IAAD,CADF,EAEE;IACEA,IAAI,EAAE,KADR;IAEEN,IAAI,EACD,eAAcM,IAAK,sCAApB,GAA4DA,IAA5D,KAAqEb,sBAArE,GACIN,cADJ,GAEIC;EALR,CAFF,CAFa,EAYb,CACE,CAAC,YAAD,CADF,EAEE;IACEU,OAAO,EAAE,IADX;IAEEQ,IAAI,EAAE,KAFR;IAGEN,IAAI,EACD,sCAAqCM,IAAK,kCAA3C,GACC,gDAA+CA,IAAK;EALzD,CAFF,CAZa,CAAR,CAAP;AAuBD;;AAOD,SAASa,aAAT,GAAyB;EACvB,OAAO,IAAIvB,GAAJ,CAAQ,CAAC,GAAG,IAAAwB,qBAAA,GAAJ,EAAoB,GAAGC,4BAAvB,CAAR,CAAP;AACD;;AAMD,MAAMA,4BAA4B,GAAG,IAAIzB,GAAJ,CAAQ,CAC3C,CACE,CAAC,SAAD,CADF,EAEE;EACEC,QAAQ,EAAE,KADZ;EAEEG,IAAI,EAAE,iBAFR;EAGED,MAAM,EAAE,aAHV;EAIEuB,KAAK,EAAE,IAJT;EAKErB,IAAI,EAAE;AALR,CAFF,CAD2C,EAW3C,CACE,CAAC,mBAAD,CADF,EAEE;EACEA,IAAI,EAAE,eADR;EAEEF,MAAM,EAAE,aAFV;EAGEuB,KAAK,EAAE,IAHT;EAIEzB,QAAQ,EAAE,KAJZ;EAKEG,IAAI,EAAE;AALR,CAFF,CAX2C,EAqB3C,CACE,CAAC,eAAD,CADF,EAEE;EACEC,IAAI,EAAE,YADR;EAEEF,MAAM,EAAE,aAFV;EAGEuB,KAAK,EAAE,IAHT;EAIEzB,QAAQ,EAAE,KAJZ;EAKEG,IAAI,EAAE;AALR,CAFF,CArB2C,EA+B3C,CACE,CAAC,UAAD,CADF,EAEE;EACEC,IAAI,EAAE,YADR;EAEEK,IAAI,EAAE,QAFR;EAGET,QAAQ,EAAE,KAHZ;EAIEG,IAAI,EAAE;AAJR,CAFF,CA/B2C,CAAR,CAArC"}
|
|
1
|
+
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../../lib/cli/args.js"],"names":[],"mappings":"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"}
|
|
@@ -1,94 +1,69 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
require("
|
|
9
|
-
|
|
10
|
-
var _lodash = _interopRequireDefault(require("lodash"));
|
|
11
|
-
|
|
12
|
-
var _extensionCommand = _interopRequireDefault(require("./extension-command"));
|
|
13
|
-
|
|
14
|
-
var _constants = require("../constants");
|
|
15
|
-
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
7
|
+
const extension_command_1 = __importDefault(require("./extension-command"));
|
|
8
|
+
const constants_1 = require("../constants");
|
|
16
9
|
require("@colors/colors");
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
20
10
|
const REQ_DRIVER_FIELDS = ['driverName', 'automationName', 'platformNames', 'mainClass'];
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}) {
|
|
69
|
-
return await super._run({
|
|
70
|
-
installSpec: driver,
|
|
71
|
-
scriptName,
|
|
72
|
-
extraArgs
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
getPostInstallText({
|
|
77
|
-
extName,
|
|
78
|
-
extData
|
|
79
|
-
}) {
|
|
80
|
-
return `Driver ${extName}@${extData.version} successfully installed\n`.green + `- automationName: ${extData.automationName.green}\n` + `- platformNames: ${JSON.stringify(extData.platformNames).green}`;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
validateExtensionFields(driverMetadata, installSpec) {
|
|
84
|
-
const missingFields = REQ_DRIVER_FIELDS.reduce((acc, field) => driverMetadata[field] ? acc : [...acc, field], []);
|
|
85
|
-
|
|
86
|
-
if (!_lodash.default.isEmpty(missingFields)) {
|
|
87
|
-
throw new Error(`Driver "${installSpec}" did not expose correct fields for compability ` + `with Appium. Missing fields: ${JSON.stringify(missingFields)}`);
|
|
11
|
+
/**
|
|
12
|
+
* @extends {ExtensionCommand<DriverType>}
|
|
13
|
+
*/
|
|
14
|
+
class DriverCommand extends extension_command_1.default {
|
|
15
|
+
/**
|
|
16
|
+
* @param {import('./extension-command').ExtensionCommandOptions<DriverType>} opts
|
|
17
|
+
*/
|
|
18
|
+
constructor({ config, json }) {
|
|
19
|
+
super({ config, json });
|
|
20
|
+
this.knownExtensions = constants_1.KNOWN_DRIVERS;
|
|
21
|
+
}
|
|
22
|
+
async install({ driver, installType, packageName }) {
|
|
23
|
+
return await super._install({
|
|
24
|
+
installSpec: driver,
|
|
25
|
+
installType,
|
|
26
|
+
packageName,
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
async uninstall({ driver }) {
|
|
30
|
+
return await super._uninstall({ installSpec: driver });
|
|
31
|
+
}
|
|
32
|
+
async update({ driver, unsafe }) {
|
|
33
|
+
return await super._update({ installSpec: driver, unsafe });
|
|
34
|
+
}
|
|
35
|
+
async run({ driver, scriptName, extraArgs }) {
|
|
36
|
+
return await super._run({ installSpec: driver, scriptName, extraArgs });
|
|
37
|
+
}
|
|
38
|
+
getPostInstallText({ extName, extData }) {
|
|
39
|
+
return (`Driver ${extName}@${extData.version} successfully installed\n`.green +
|
|
40
|
+
`- automationName: ${extData.automationName.green}\n` +
|
|
41
|
+
`- platformNames: ${JSON.stringify(extData.platformNames).green}`);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Validates fields in `appium` field of `driverMetadata`
|
|
45
|
+
*
|
|
46
|
+
* For any `package.json` fields which a driver requires, validate the type of
|
|
47
|
+
* those fields on the `package.json` data, throwing an error if anything is
|
|
48
|
+
* amiss.
|
|
49
|
+
* @param {import('appium/types').ExtMetadata<DriverType>} driverMetadata
|
|
50
|
+
* @param {string} installSpec
|
|
51
|
+
*/
|
|
52
|
+
validateExtensionFields(driverMetadata, installSpec) {
|
|
53
|
+
const missingFields = REQ_DRIVER_FIELDS.reduce((acc, field) => (driverMetadata[field] ? acc : [...acc, field]), []);
|
|
54
|
+
if (!lodash_1.default.isEmpty(missingFields)) {
|
|
55
|
+
throw new Error(`Driver "${installSpec}" did not expose correct fields for compability ` +
|
|
56
|
+
`with Appium. Missing fields: ${JSON.stringify(missingFields)}`);
|
|
57
|
+
}
|
|
88
58
|
}
|
|
89
|
-
}
|
|
90
|
-
|
|
91
59
|
}
|
|
92
|
-
|
|
93
60
|
exports.default = DriverCommand;
|
|
94
|
-
|
|
61
|
+
/**
|
|
62
|
+
* @typedef DriverCommandOptions
|
|
63
|
+
* @property {import('../extension/extension-config').ExtensionConfig<DriverType>} config
|
|
64
|
+
* @property {boolean} json
|
|
65
|
+
*/
|
|
66
|
+
/**
|
|
67
|
+
* @typedef {import('@appium/types').DriverType} DriverType
|
|
68
|
+
*/
|
|
69
|
+
//# sourceMappingURL=driver-command.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver-command.js","
|
|
1
|
+
{"version":3,"file":"driver-command.js","sourceRoot":"","sources":["../../../lib/cli/driver-command.js"],"names":[],"mappings":";;;;;AAAA,oDAAuB;AACvB,4EAAmD;AACnD,4CAA2C;AAC3C,0BAAwB;AAExB,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC;AAEzF;;GAEG;AACH,MAAqB,aAAc,SAAQ,2BAAgB;IACzD;;OAEG;IACH,YAAY,EAAC,MAAM,EAAE,IAAI,EAAC;QACxB,KAAK,CAAC,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC;QACtB,IAAI,CAAC,eAAe,GAAG,yBAAa,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAC;QAC9C,OAAO,MAAM,KAAK,CAAC,QAAQ,CAAC;YAC1B,WAAW,EAAE,MAAM;YACnB,WAAW;YACX,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAC,MAAM,EAAC;QACtB,OAAO,MAAM,KAAK,CAAC,UAAU,CAAC,EAAC,WAAW,EAAE,MAAM,EAAC,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAC,MAAM,EAAE,MAAM,EAAC;QAC3B,OAAO,MAAM,KAAK,CAAC,OAAO,CAAC,EAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAC,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC;QACvC,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,EAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC,CAAC,CAAC;IACxE,CAAC;IAED,kBAAkB,CAAC,EAAC,OAAO,EAAE,OAAO,EAAC;QACnC,OAAO,CACL,UAAU,OAAO,IAAI,OAAO,CAAC,OAAO,2BAA2B,CAAC,KAAK;YACrE,qBAAqB,OAAO,CAAC,cAAc,CAAC,KAAK,IAAI;YACrD,oBAAoB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,CAClE,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,uBAAuB,CAAC,cAAc,EAAE,WAAW;QACjD,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAC5C,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,EAC/D,EAAE,CACH,CAAC;QAEF,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YAC7B,MAAM,IAAI,KAAK,CACb,WAAW,WAAW,kDAAkD;gBACtE,gCAAgC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAClE,CAAC;SACH;IACH,CAAC;CACF;AA3DD,gCA2DC;AAED;;;;GAIG;AAEH;;GAEG"}
|
|
@@ -32,6 +32,10 @@ export type ExtensionMetadata = {
|
|
|
32
32
|
* - If the extension is installed and the latest
|
|
33
33
|
*/
|
|
34
34
|
upToDate: boolean;
|
|
35
|
+
/**
|
|
36
|
+
* - Update check error message (if present)
|
|
37
|
+
*/
|
|
38
|
+
updateError: string | null;
|
|
35
39
|
};
|
|
36
40
|
export type ExtensionType = import('@appium/types').ExtensionType;
|
|
37
41
|
export type DriverType = import('@appium/types').DriverType;
|
|
@@ -41,6 +45,7 @@ export type ExtensionConfig<ExtType extends import("@appium/types").ExtensionTyp
|
|
|
41
45
|
export type ExtMetadata<ExtType extends import("@appium/types").ExtensionType> = import('appium/types').ExtMetadata<ExtType>;
|
|
42
46
|
export type ExtManifest<ExtType extends import("@appium/types").ExtensionType> = import('appium/types').ExtManifest<ExtType>;
|
|
43
47
|
export type ExtPackageJson<ExtType extends import("@appium/types").ExtensionType> = import('appium/types').ExtPackageJson<ExtType>;
|
|
48
|
+
export type ExtInstallReceipt<ExtType extends import("@appium/types").ExtensionType> = import('appium/types').ExtInstallReceipt<ExtType>;
|
|
44
49
|
/**
|
|
45
50
|
* Possible return value for {@linkcode ExtensionCommand.list }
|
|
46
51
|
*/
|
|
@@ -159,6 +164,10 @@ export type InstallViaNpmArgs = {
|
|
|
159
164
|
* - the NPM package name of the extension
|
|
160
165
|
*/
|
|
161
166
|
pkgName: string;
|
|
167
|
+
/**
|
|
168
|
+
* - type of install
|
|
169
|
+
*/
|
|
170
|
+
installType: import('appium/types').InstallType;
|
|
162
171
|
/**
|
|
163
172
|
* - the specific version of the NPM package
|
|
164
173
|
*/
|
|
@@ -184,7 +193,7 @@ export type PossibleUpdates = {
|
|
|
184
193
|
/**
|
|
185
194
|
* Options for {@linkcode ExtensionCommand._install }
|
|
186
195
|
*/
|
|
187
|
-
export type
|
|
196
|
+
export type InstallOpts = {
|
|
188
197
|
/**
|
|
189
198
|
* - the name or spec of an extension to install
|
|
190
199
|
*/
|
|
@@ -192,20 +201,12 @@ export type InstallArgs = {
|
|
|
192
201
|
/**
|
|
193
202
|
* - how to install this extension. One of the INSTALL_TYPES
|
|
194
203
|
*/
|
|
195
|
-
installType:
|
|
204
|
+
installType: InstallType;
|
|
196
205
|
/**
|
|
197
206
|
* - for git/github installs, the extension node package name
|
|
198
207
|
*/
|
|
199
208
|
packageName?: string | undefined;
|
|
200
209
|
};
|
|
201
|
-
/**
|
|
202
|
-
* Returned by {@linkcode ExtensionCommand.getExtensionFields }
|
|
203
|
-
*/
|
|
204
|
-
export type ExtensionFields<ExtType extends import("@appium/types").ExtensionType> = ExtMetadata<ExtType> & {
|
|
205
|
-
pkgName: string;
|
|
206
|
-
version: string;
|
|
207
|
-
appiumVersion: string;
|
|
208
|
-
} & import('appium/types').CommonExtMetadata;
|
|
209
210
|
export type KnownExtensions<ExtType extends import("@appium/types").ExtensionType> = ExtType extends DriverType ? typeof import('../constants').KNOWN_DRIVERS : ExtType extends PluginType ? typeof import('../constants').KNOWN_PLUGINS : never;
|
|
210
211
|
export type ListOptions = {
|
|
211
212
|
/**
|
|
@@ -217,6 +218,16 @@ export type ListOptions = {
|
|
|
217
218
|
*/
|
|
218
219
|
showUpdates: boolean;
|
|
219
220
|
};
|
|
221
|
+
/**
|
|
222
|
+
* Opts for {@linkcode ExtensionCommand.getInstallationReceipt }
|
|
223
|
+
*/
|
|
224
|
+
export type GetInstallationReceiptOpts<ExtType extends import("@appium/types").ExtensionType> = {
|
|
225
|
+
installPath: string;
|
|
226
|
+
installSpec: string;
|
|
227
|
+
pkg: ExtPackageJson<ExtType>;
|
|
228
|
+
installType: InstallType;
|
|
229
|
+
};
|
|
230
|
+
export type InstallType = import('appium/types').InstallType;
|
|
220
231
|
/**
|
|
221
232
|
* @template {ExtensionType} ExtType
|
|
222
233
|
*/
|
|
@@ -274,16 +285,17 @@ export class ExtensionCommand<ExtType extends import("@appium/types").ExtensionT
|
|
|
274
285
|
/**
|
|
275
286
|
* Install an extension
|
|
276
287
|
*
|
|
277
|
-
* @param {
|
|
288
|
+
* @param {InstallOpts} opts
|
|
278
289
|
* @return {Promise<ExtRecord<ExtType>>} map of all installed extension names to extension data
|
|
279
290
|
*/
|
|
280
|
-
_install({ installSpec, installType, packageName }:
|
|
291
|
+
_install({ installSpec, installType, packageName }: InstallOpts): Promise<ExtRecord<ExtType>>;
|
|
281
292
|
/**
|
|
282
293
|
* Install an extension via NPM
|
|
283
294
|
*
|
|
284
295
|
* @param {InstallViaNpmArgs} args
|
|
296
|
+
* @returns {Promise<ExtInstallReceipt<ExtType>>}
|
|
285
297
|
*/
|
|
286
|
-
installViaNpm({ installSpec, pkgName, pkgVer }: InstallViaNpmArgs): Promise<
|
|
298
|
+
installViaNpm({ installSpec, pkgName, pkgVer, installType }: InstallViaNpmArgs): Promise<ExtInstallReceipt<ExtType>>;
|
|
287
299
|
/**
|
|
288
300
|
* Get the text which should be displayed to the user after an extension has been installed. This
|
|
289
301
|
* is designed to be overridden by drivers/plugins with their own particular text.
|
|
@@ -293,15 +305,12 @@ export class ExtensionCommand<ExtType extends import("@appium/types").ExtensionT
|
|
|
293
305
|
*/
|
|
294
306
|
getPostInstallText(args: ExtensionArgs): string;
|
|
295
307
|
/**
|
|
296
|
-
*
|
|
297
|
-
* 'appium' field in the JSON data. We need this information to e.g. determine which class to
|
|
298
|
-
* load as the main driver class, or to be able to detect incompatibilities between driver and
|
|
299
|
-
* appium versions.
|
|
308
|
+
* Once a package is installed on-disk, this gathers some necessary metadata for validation.
|
|
300
309
|
*
|
|
301
|
-
* @param {
|
|
302
|
-
* @returns {
|
|
310
|
+
* @param {GetInstallationReceiptOpts<ExtType>} opts
|
|
311
|
+
* @returns {ExtInstallReceipt<ExtType>}
|
|
303
312
|
*/
|
|
304
|
-
|
|
313
|
+
getInstallationReceipt({ pkg, installPath, installType, installSpec }: GetInstallationReceiptOpts<ExtType>): ExtInstallReceipt<ExtType>;
|
|
305
314
|
/**
|
|
306
315
|
* Validates the _required_ root fields of an extension's `package.json` file.
|
|
307
316
|
*
|
|
@@ -309,12 +318,12 @@ export class ExtensionCommand<ExtType extends import("@appium/types").ExtensionT
|
|
|
309
318
|
* - `name`
|
|
310
319
|
* - `version`
|
|
311
320
|
* - `appium`
|
|
312
|
-
* @param {import('type-fest').PackageJson}
|
|
321
|
+
* @param {import('type-fest').PackageJson} pkg - `package.json` of extension
|
|
313
322
|
* @param {string} installSpec - Extension name/spec
|
|
314
323
|
* @throws {ReferenceError} If `package.json` has a missing or invalid field
|
|
315
|
-
* @returns {
|
|
324
|
+
* @returns {pkg is ExtPackageJson<ExtType>}
|
|
316
325
|
*/
|
|
317
|
-
validatePackageJson(
|
|
326
|
+
validatePackageJson(pkg: import('type-fest').PackageJson, installSpec: string): pkg is ExtPackageJson<ExtType>;
|
|
318
327
|
/**
|
|
319
328
|
* For any `package.json` fields which a particular type of extension requires, validate the
|
|
320
329
|
* presence and form of those fields on the `package.json` data, throwing an error if anything is
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-command.d.ts","sourceRoot":"","sources":["../../../lib/cli/extension-command.js"],"names":[],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"extension-command.d.ts","sourceRoot":"","sources":["../../../lib/cli/extension-command.js"],"names":[],"mappings":"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"}
|