appium 2.0.0-beta.26 → 2.0.0-beta.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/build/lib/appium.d.ts +215 -0
  2. package/build/lib/appium.d.ts.map +1 -0
  3. package/build/lib/appium.js +62 -54
  4. package/build/lib/cli/args.d.ts +20 -0
  5. package/build/lib/cli/args.d.ts.map +1 -0
  6. package/build/lib/cli/args.js +1 -1
  7. package/build/lib/cli/driver-command.d.ts +36 -0
  8. package/build/lib/cli/driver-command.d.ts.map +1 -0
  9. package/build/lib/cli/driver-command.js +8 -7
  10. package/build/lib/cli/extension-command.d.ts +345 -0
  11. package/build/lib/cli/extension-command.d.ts.map +1 -0
  12. package/build/lib/cli/extension-command.js +52 -38
  13. package/build/lib/cli/extension.d.ts +14 -0
  14. package/build/lib/cli/extension.d.ts.map +1 -0
  15. package/build/lib/cli/extension.js +7 -2
  16. package/build/lib/cli/parser.d.ts +79 -0
  17. package/build/lib/cli/parser.d.ts.map +1 -0
  18. package/build/lib/cli/parser.js +1 -1
  19. package/build/lib/cli/plugin-command.d.ts +39 -0
  20. package/build/lib/cli/plugin-command.d.ts.map +1 -0
  21. package/build/lib/cli/plugin-command.js +6 -7
  22. package/build/lib/cli/utils.d.ts +29 -0
  23. package/build/lib/cli/utils.d.ts.map +1 -0
  24. package/build/lib/cli/utils.js +1 -1
  25. package/build/lib/config-file.d.ts +100 -0
  26. package/build/lib/config-file.d.ts.map +1 -0
  27. package/build/lib/config-file.js +1 -1
  28. package/build/lib/config.d.ts +40 -0
  29. package/build/lib/config.d.ts.map +1 -0
  30. package/build/lib/config.js +2 -2
  31. package/build/lib/constants.d.ts +48 -0
  32. package/build/lib/constants.d.ts.map +1 -0
  33. package/build/lib/constants.js +1 -1
  34. package/build/lib/extension/driver-config.d.ts +84 -0
  35. package/build/lib/extension/driver-config.d.ts.map +1 -0
  36. package/build/lib/extension/driver-config.js +1 -1
  37. package/build/lib/extension/extension-config.d.ts +170 -0
  38. package/build/lib/extension/extension-config.d.ts.map +1 -0
  39. package/build/lib/extension/extension-config.js +2 -2
  40. package/build/lib/extension/index.d.ts +39 -0
  41. package/build/lib/extension/index.d.ts.map +1 -0
  42. package/build/lib/extension/index.js +1 -1
  43. package/build/lib/extension/manifest.d.ts +174 -0
  44. package/build/lib/extension/manifest.d.ts.map +1 -0
  45. package/build/lib/extension/manifest.js +1 -1
  46. package/build/lib/extension/package-changed.d.ts +11 -0
  47. package/build/lib/extension/package-changed.d.ts.map +1 -0
  48. package/build/lib/extension/package-changed.js +1 -1
  49. package/build/lib/extension/plugin-config.d.ts +62 -0
  50. package/build/lib/extension/plugin-config.d.ts.map +1 -0
  51. package/build/lib/extension/plugin-config.js +1 -1
  52. package/build/lib/grid-register.d.ts +10 -0
  53. package/build/lib/grid-register.d.ts.map +1 -0
  54. package/build/lib/logger.d.ts +3 -0
  55. package/build/lib/logger.d.ts.map +1 -0
  56. package/build/lib/logsink.d.ts +4 -0
  57. package/build/lib/logsink.d.ts.map +1 -0
  58. package/build/lib/logsink.js +1 -1
  59. package/build/lib/main.d.ts +51 -0
  60. package/build/lib/main.d.ts.map +1 -0
  61. package/build/lib/main.js +1 -1
  62. package/build/lib/schema/arg-spec.d.ts +143 -0
  63. package/build/lib/schema/arg-spec.d.ts.map +1 -0
  64. package/build/lib/schema/arg-spec.js +1 -1
  65. package/build/lib/schema/cli-args.d.ts +19 -0
  66. package/build/lib/schema/cli-args.d.ts.map +1 -0
  67. package/build/lib/schema/cli-args.js +1 -1
  68. package/build/lib/schema/cli-transformers.d.ts +5 -0
  69. package/build/lib/schema/cli-transformers.d.ts.map +1 -0
  70. package/build/lib/schema/cli-transformers.js +1 -1
  71. package/build/lib/schema/index.d.ts +3 -0
  72. package/build/lib/schema/index.d.ts.map +1 -0
  73. package/build/lib/schema/keywords.d.ts +24 -0
  74. package/build/lib/schema/keywords.d.ts.map +1 -0
  75. package/build/lib/schema/keywords.js +1 -1
  76. package/build/lib/schema/schema.d.ts +259 -0
  77. package/build/lib/schema/schema.d.ts.map +1 -0
  78. package/build/lib/schema/schema.js +3 -3
  79. package/build/lib/utils.d.ts +66 -0
  80. package/build/lib/utils.d.ts.map +1 -0
  81. package/build/lib/utils.js +6 -4
  82. package/build/tsconfig.tsbuildinfo +1 -0
  83. package/lib/appium.js +163 -81
  84. package/lib/cli/args.js +1 -2
  85. package/lib/cli/driver-command.js +11 -8
  86. package/lib/cli/extension-command.js +129 -80
  87. package/lib/cli/extension.js +13 -3
  88. package/lib/cli/parser.js +1 -2
  89. package/lib/cli/plugin-command.js +16 -6
  90. package/lib/cli/utils.js +1 -1
  91. package/lib/config-file.js +3 -4
  92. package/lib/config.js +12 -8
  93. package/lib/constants.js +0 -1
  94. package/lib/extension/driver-config.js +31 -12
  95. package/lib/extension/extension-config.js +21 -22
  96. package/lib/extension/index.js +1 -2
  97. package/lib/extension/manifest.js +23 -127
  98. package/lib/extension/package-changed.js +0 -1
  99. package/lib/extension/plugin-config.js +9 -7
  100. package/lib/logsink.js +4 -0
  101. package/lib/main.js +9 -10
  102. package/lib/schema/arg-spec.js +10 -6
  103. package/lib/schema/cli-args.js +0 -1
  104. package/lib/schema/cli-transformers.js +0 -1
  105. package/lib/schema/keywords.js +0 -1
  106. package/lib/schema/schema.js +2 -3
  107. package/lib/utils.js +49 -16
  108. package/package.json +12 -14
  109. package/types/appium-manifest.d.ts +61 -0
  110. package/types/cli.d.ts +134 -0
  111. package/types/extension.d.ts +56 -0
  112. package/types/external-manifest.d.ts +58 -0
  113. package/types/index.d.ts +7 -0
  114. package/build/lib/appium-config.schema.json +0 -278
  115. package/build/lib/schema/appium-config-schema.js +0 -251
  116. package/lib/schema/appium-config-schema.js +0 -287
  117. package/types/appium-config.d.ts +0 -197
  118. package/types/types.d.ts +0 -245
@@ -0,0 +1,215 @@
1
+ /**
2
+ * Thrown when Appium tried to proxy a command using a driver's `proxyCommand` method but the
3
+ * method did not exist
4
+ */
5
+ export class NoDriverProxyCommandError extends Error {
6
+ constructor();
7
+ /**
8
+ * @type {Readonly<string>}
9
+ */
10
+ code: Readonly<string>;
11
+ }
12
+ export type ExternalDriver = import('@appium/types').ExternalDriver;
13
+ export type W3CCapabilities = import('@appium/types').W3CCapabilities;
14
+ export type DriverData = import('@appium/types').DriverData;
15
+ export type DriverOpts = import('@appium/types').DriverOpts;
16
+ export type Constraints = import('@appium/types').Constraints;
17
+ export type AppiumServer = import('@appium/types').AppiumServer;
18
+ export type ExtensionType = import('../types').ExtensionType;
19
+ export type PluginClass = import('../types/extension').PluginClass;
20
+ export type DriverConfig = import('./extension/driver-config').DriverConfig;
21
+ /**
22
+ * Used by {@linkcode AppiumDriver.createSession } and {@linkcode AppiumDriver.deleteSession } to describe
23
+ * result.
24
+ */
25
+ export type SessionHandlerResult<V> = {
26
+ value?: V | undefined;
27
+ error?: Error | undefined;
28
+ protocol?: string | undefined;
29
+ };
30
+ export type SessionHandler = import('@appium/types').SessionHandler<SessionHandlerResult<any[]>, SessionHandlerResult<void>>;
31
+ /**
32
+ * @implements {SessionHandler}
33
+ */
34
+ export class AppiumDriver extends DriverCore implements SessionHandler {
35
+ /**
36
+ * @param {DriverOpts} opts
37
+ */
38
+ constructor(opts: DriverOpts);
39
+ /**
40
+ * Access to sessions list must be guarded with a Semaphore, because
41
+ * it might be changed by other async calls at any time
42
+ * It is not recommended to access this property directly from the outside
43
+ * @type {Record<string,ExternalDriver>}
44
+ */
45
+ sessions: Record<string, ExternalDriver>;
46
+ /**
47
+ * Access to pending drivers list must be guarded with a Semaphore, because
48
+ * it might be changed by other async calls at any time
49
+ * It is not recommended to access this property directly from the outside
50
+ * @type {Record<string,ExternalDriver[]>}
51
+ */
52
+ pendingDrivers: Record<string, ExternalDriver[]>;
53
+ /**
54
+ * List of active plugins
55
+ * @type {PluginClass[]}
56
+ */
57
+ pluginClasses: PluginClass[];
58
+ /**
59
+ * map of sessions to actual plugin instances per session
60
+ * @type {Record<string,InstanceType<PluginClass>[]>}
61
+ */
62
+ sessionPlugins: Record<string, InstanceType<PluginClass>[]>;
63
+ /**
64
+ * some commands are sessionless, so we need a set of plugins for them
65
+ * @type {InstanceType<PluginClass>[]}
66
+ */
67
+ sessionlessPlugins: InstanceType<PluginClass>[];
68
+ /** @type {DriverConfig} */
69
+ driverConfig: DriverConfig;
70
+ /** @type {AppiumServer} */
71
+ server: AppiumServer;
72
+ desiredCapConstraints: Readonly<import("@appium/types").Constraints>;
73
+ args: {
74
+ address: string;
75
+ allowCors: boolean;
76
+ allowInsecure: import("@appium/types").AllowInsecureConfig;
77
+ basePath: string;
78
+ callbackAddress: string | undefined;
79
+ callbackPort: number;
80
+ debugLogSpacing: boolean;
81
+ defaultCapabilities: import("@appium/types").DefaultCapabilitiesConfig | undefined;
82
+ denyInsecure: import("@appium/types").DenyInsecureConfig;
83
+ driver: import("@appium/types").DriverConfig | undefined;
84
+ keepAliveTimeout: number;
85
+ localTimezone: boolean;
86
+ logFile: string | undefined;
87
+ logFilters: import("@appium/types").LogFiltersConfig | undefined;
88
+ loglevel: import("@appium/types").LogLevelConfig;
89
+ logNoColors: boolean;
90
+ logTimestamp: boolean;
91
+ longStacktrace: boolean;
92
+ noPermsCheck: boolean;
93
+ nodeconfig: import("@appium/types").NodeconfigConfig | undefined;
94
+ plugin: import("@appium/types").PluginConfig | undefined;
95
+ port: number;
96
+ relaxedSecurityEnabled: boolean;
97
+ sessionOverride: boolean;
98
+ strictCaps: boolean;
99
+ tmpDir: string | undefined;
100
+ traceDir: string | undefined;
101
+ useDrivers: import("@appium/types").UseDriversConfig;
102
+ usePlugins: import("@appium/types").UsePluginsConfig;
103
+ webhook: string | undefined;
104
+ };
105
+ sessionExists(sessionId: any): boolean;
106
+ driverForSession(sessionId: any): import("@appium/types").ExternalDriver;
107
+ getStatus(): Promise<{
108
+ build: import("../types").BuildInfo;
109
+ }>;
110
+ getSessions(): Promise<{
111
+ id: string;
112
+ capabilities: Partial<import("@wdio/types/build/Capabilities").Capabilities & import("@wdio/types/build/Capabilities").AppiumCapabilities & {
113
+ [x: string]: any;
114
+ }> | undefined;
115
+ }[]>;
116
+ printNewSessionAnnouncement(driverName: any, driverVersion: any, driverBaseVersion: any): void;
117
+ /**
118
+ * Validate and assign CLI args for a driver or plugin
119
+ *
120
+ * If the extension has provided a schema, validation has already happened.
121
+ *
122
+ * Any arg which is equal to its default value will not be assigned to the extension.
123
+ * @param {ExtensionType} extType 'driver' or 'plugin'
124
+ * @param {string} extName the name of the extension
125
+ * @param {Object} extInstance the driver or plugin instance
126
+ */
127
+ assignCliArgsToExtension(extType: ExtensionType, extName: string, extInstance: any): void;
128
+ /**
129
+ * Create a new session
130
+ * @param {W3CCapabilities} jsonwpCaps JSONWP formatted desired capabilities
131
+ * @param {W3CCapabilities} reqCaps Required capabilities (JSONWP standard)
132
+ * @param {W3CCapabilities} w3cCapabilities W3C capabilities
133
+ * @param {import('@appium/types').DriverData[]} [driverData]
134
+ */
135
+ createSession(jsonwpCaps: W3CCapabilities, reqCaps: W3CCapabilities, w3cCapabilities: W3CCapabilities, driverData?: import("@appium/types").DriverData[] | undefined): Promise<{
136
+ protocol: any;
137
+ error: any;
138
+ value?: undefined;
139
+ } | {
140
+ protocol: any;
141
+ value: any[];
142
+ error?: undefined;
143
+ }>;
144
+ attachUnexpectedShutdownHandler(driver: any, innerSessionId: any): void;
145
+ /**
146
+ *
147
+ * @param {import('../types/extension').DriverClass} InnerDriver
148
+ * @returns {Promise<DriverData[]>}}
149
+ */
150
+ curSessionDataForDriver(InnerDriver: BaseDriverBase<import("@appium/types").ExternalDriver, import("../types").ExternalDriverStatic>): Promise<DriverData[]>;
151
+ /**
152
+ * @param {string} sessionId
153
+ */
154
+ deleteSession(sessionId: string): Promise<{
155
+ protocol: undefined;
156
+ value: void;
157
+ error?: undefined;
158
+ } | {
159
+ protocol: undefined;
160
+ error: any;
161
+ value?: undefined;
162
+ }>;
163
+ deleteAllSessions(opts?: {}): Promise<void>;
164
+ /**
165
+ * Get the appropriate plugins for a session (or sessionless plugins)
166
+ *
167
+ * @param {?string} sessionId - the sessionId (or null) to use to find plugins
168
+ * @returns {Array} - array of plugin instances
169
+ */
170
+ pluginsForSession(sessionId?: string | null): any[];
171
+ /**
172
+ * To get plugins for a command, we either get the plugin instances associated with the
173
+ * particular command's session, or in the case of sessionless plugins, pull from the set of
174
+ * plugin instances reserved for sessionless commands (and we lazily create plugin instances on
175
+ * first use)
176
+ *
177
+ * @param {string} cmd - the name of the command to find a plugin to handle
178
+ * @param {?string} sessionId - the particular session for which to find a plugin, or null if
179
+ * sessionless
180
+ */
181
+ pluginsToHandleCmd(cmd: string, sessionId?: string | null): any[];
182
+ createPluginInstances(): import("../types").PluginProto[];
183
+ /**
184
+ *
185
+ * @param {string} cmd
186
+ * @param {...any} args
187
+ * @returns {Promise<{value: any, error?: Error, protocol: string} | import('type-fest').AsyncReturnType<import('@appium/types').Driver['executeCommand']>>}
188
+ */
189
+ executeCommand(cmd: string, ...args: any[]): Promise<any>;
190
+ wrapCommandWithPlugins({ driver, cmd, args, next, cmdHandledBy, plugins }: {
191
+ driver: any;
192
+ cmd: any;
193
+ args: any;
194
+ next: any;
195
+ cmdHandledBy: any;
196
+ plugins: any;
197
+ }): any;
198
+ logPluginHandlerReport(plugins: any, { cmd, cmdHandledBy }: {
199
+ cmd: any;
200
+ cmdHandledBy: any;
201
+ }): void;
202
+ executeWrappedCommand({ wrappedCmd, protocol }: {
203
+ wrappedCmd: any;
204
+ protocol: any;
205
+ }): Promise<{
206
+ value: any;
207
+ error: any;
208
+ protocol: any;
209
+ }>;
210
+ proxyActive(sessionId: any): boolean;
211
+ getProxyAvoidList(sessionId: any): [string, RegExp][];
212
+ canProxy(sessionId: any): boolean;
213
+ }
214
+ import { DriverCore } from "@appium/base-driver";
215
+ //# sourceMappingURL=appium.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appium.d.ts","sourceRoot":"","sources":["../../lib/appium.js"],"names":[],"mappings":"AA2sBA;;;GAGG;AACH;IAME,cAKC;IAVD;;OAEG;IACH,MAFU,SAAS,MAAM,CAAC,CAEgB;CAQ3C;6BAKY,OAAO,eAAe,EAAE,cAAc;8BACtC,OAAO,eAAe,EAAE,eAAe;yBACvC,OAAO,eAAe,EAAE,UAAU;yBAClC,OAAO,eAAe,EAAE,UAAU;0BAClC,OAAO,eAAe,EAAE,WAAW;2BACnC,OAAO,eAAe,EAAE,YAAY;4BACpC,OAAO,UAAU,EAAE,aAAa;0BAChC,OAAO,oBAAoB,EAAE,WAAW;2BACxC,OAAO,2BAA2B,EAAE,YAAY;;;;;;;;;;6BAchD,OAAO,eAAe,EAAE,cAAc,CAAC,qBAAqB,GAAG,EAAE,CAAC,EAAC,qBAAqB,IAAI,CAAC,CAAC;AAztB3G;;GAEG;AACH;IAgDE;;OAEG;IACH,kBAFW,UAAU,EAuBpB;IAvED;;;;;OAKG;IACH,UAFU,OAAO,MAAM,EAAC,cAAc,CAAC,CAEzB;IAEd;;;;;OAKG;IACH,gBAFU,OAAO,MAAM,EAAC,cAAc,EAAE,CAAC,CAErB;IASpB;;;OAGG;IACH,eAFU,WAAW,EAAE,CAEJ;IAEnB;;;OAGG;IACH,gBAFU,OAAO,MAAM,EAAC,aAAa,WAAW,CAAC,EAAE,CAAC,CAEhC;IAEpB;;;OAGG;IACH,oBAFU,aAAa,WAAW,CAAC,EAAE,CAEb;IAExB,2BAA2B;IAC3B,cADW,YAAY,CACV;IAEb,2BAA2B;IAC3B,QADW,YAAY,CAChB;IAgBL,qEAAyD;IAEzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAqB;IA4BvB,uCAGC;IAED,yEAEC;IAED;;OAIC;IAED;;;;;SAGC;IAED,+FAcC;IAED;;;;;;;;;OASG;IACH,kCAJW,aAAa,WACb,MAAM,0BAchB;IAED;;;;;;OAMG;IACH,0BALW,eAAe,WACf,eAAe,mBACf,eAAe;;;;;;;;OAqJzB;IAED,wEA8BC;IAED;;;;OAIG;IACH,uIAFa,QAAQ,UAAU,EAAE,CAAC,CAajC;IAED;;OAEG;IACH,yBAFW,MAAM;;;;;;;;OAwChB;IAED,4CAsBC;IAED;;;;;OAKG;IACH,8BAHY,MAAM,gBAejB;IAED;;;;;;;;;OASG;IACH,wBAJW,MAAM,cACL,MAAM,gBAQjB;IAED,0DAOC;IAED;;;;;OAKG;IACH,oBAJW,MAAM,WACF,GAAG,kBAsHjB;IAED;;;;;;;YAuBC;IAED;;;aAkBC;IAED;;;;;;;OAsBC;IAED,qCAGC;IAED,sDAGC;IAED,kCAGC;CACF"}