appium 2.2.3 → 2.4.0
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 +131 -158
- package/build/lib/appium.d.ts +76 -4
- package/build/lib/appium.d.ts.map +1 -1
- package/build/lib/appium.js +327 -1
- package/build/lib/appium.js.map +1 -1
- package/build/lib/cli/args.d.ts.map +1 -1
- package/build/lib/cli/args.js +24 -2
- package/build/lib/cli/args.js.map +1 -1
- package/build/lib/cli/driver-command.d.ts +16 -0
- package/build/lib/cli/driver-command.d.ts.map +1 -1
- package/build/lib/cli/driver-command.js +16 -0
- package/build/lib/cli/driver-command.js.map +1 -1
- package/build/lib/cli/extension-command.d.ts +26 -2
- package/build/lib/cli/extension-command.d.ts.map +1 -1
- package/build/lib/cli/extension-command.js +135 -4
- package/build/lib/cli/extension-command.js.map +1 -1
- package/build/lib/cli/parser.d.ts.map +1 -1
- package/build/lib/cli/parser.js +11 -7
- package/build/lib/cli/parser.js.map +1 -1
- package/build/lib/cli/plugin-command.d.ts +16 -0
- package/build/lib/cli/plugin-command.d.ts.map +1 -1
- package/build/lib/cli/plugin-command.js +16 -0
- package/build/lib/cli/plugin-command.js.map +1 -1
- package/build/lib/cli/utils.d.ts.map +1 -1
- package/build/lib/cli/utils.js +3 -4
- package/build/lib/cli/utils.js.map +1 -1
- package/build/lib/config-file.d.ts +1 -1
- package/build/lib/config.d.ts +8 -7
- package/build/lib/config.d.ts.map +1 -1
- package/build/lib/config.js +54 -64
- package/build/lib/config.js.map +1 -1
- package/build/lib/constants.d.ts +10 -0
- package/build/lib/constants.d.ts.map +1 -1
- package/build/lib/constants.js +11 -1
- package/build/lib/constants.js.map +1 -1
- package/build/lib/doctor/doctor.d.ts +55 -0
- package/build/lib/doctor/doctor.d.ts.map +1 -0
- package/build/lib/doctor/doctor.js +201 -0
- package/build/lib/doctor/doctor.js.map +1 -0
- package/build/lib/extension/driver-config.d.ts +2 -2
- package/build/lib/extension/driver-config.d.ts.map +1 -1
- package/build/lib/extension/driver-config.js +4 -4
- package/build/lib/extension/driver-config.js.map +1 -1
- package/build/lib/extension/extension-config.d.ts +10 -3
- package/build/lib/extension/extension-config.d.ts.map +1 -1
- package/build/lib/extension/extension-config.js +32 -14
- package/build/lib/extension/extension-config.js.map +1 -1
- package/build/lib/extension/index.d.ts +6 -4
- package/build/lib/extension/index.d.ts.map +1 -1
- package/build/lib/extension/index.js +74 -32
- package/build/lib/extension/index.js.map +1 -1
- package/build/lib/extension/manifest.js +1 -1
- package/build/lib/extension/manifest.js.map +1 -1
- package/build/lib/extension/plugin-config.js +1 -1
- package/build/lib/extension/plugin-config.js.map +1 -1
- package/build/lib/grid-register.d.ts.map +1 -1
- package/build/lib/grid-register.js +1 -2
- package/build/lib/grid-register.js.map +1 -1
- package/build/lib/main.d.ts +4 -0
- package/build/lib/main.d.ts.map +1 -1
- package/build/lib/main.js +31 -52
- package/build/lib/main.js.map +1 -1
- package/build/lib/schema/schema.d.ts +5 -0
- package/build/lib/schema/schema.d.ts.map +1 -1
- package/build/lib/schema/schema.js +7 -7
- package/build/lib/schema/schema.js.map +1 -1
- package/build/lib/utils.d.ts +3 -0
- package/build/lib/utils.d.ts.map +1 -1
- package/build/lib/utils.js +2 -1
- package/build/lib/utils.js.map +1 -1
- package/build/types/cli.d.ts +1 -1
- package/build/types/cli.d.ts.map +1 -1
- package/lib/appium.js +388 -2
- package/lib/cli/args.js +27 -2
- package/lib/cli/driver-command.js +18 -0
- package/lib/cli/extension-command.js +160 -9
- package/lib/cli/parser.js +22 -8
- package/lib/cli/plugin-command.js +18 -0
- package/lib/cli/utils.js +5 -7
- package/lib/config.js +46 -65
- package/lib/constants.js +12 -0
- package/lib/doctor/doctor.js +209 -0
- package/lib/extension/driver-config.js +3 -3
- package/lib/extension/extension-config.js +33 -15
- package/lib/extension/index.js +80 -43
- package/lib/grid-register.js +1 -2
- package/lib/main.js +42 -61
- package/lib/utils.js +2 -1
- package/package.json +15 -18
- package/types/cli.ts +1 -1
package/build/lib/appium.js
CHANGED
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.AppiumDriver = exports.NoDriverProxyCommandError = void 0;
|
|
7
7
|
/* eslint-disable no-unused-vars */
|
|
8
8
|
const lodash_1 = __importDefault(require("lodash"));
|
|
9
|
+
const bluebird_1 = __importDefault(require("bluebird"));
|
|
9
10
|
const config_1 = require("./config");
|
|
10
11
|
const base_driver_1 = require("@appium/base-driver");
|
|
11
12
|
const async_lock_1 = __importDefault(require("async-lock"));
|
|
@@ -13,6 +14,7 @@ const utils_1 = require("./utils");
|
|
|
13
14
|
const support_1 = require("@appium/support");
|
|
14
15
|
const schema_1 = require("./schema");
|
|
15
16
|
const constants_1 = require("./constants");
|
|
17
|
+
const ws_1 = __importDefault(require("ws"));
|
|
16
18
|
const desiredCapabilityConstraints = /** @type {const} */ ({
|
|
17
19
|
automationName: {
|
|
18
20
|
presence: true,
|
|
@@ -48,6 +50,8 @@ class AppiumDriver extends base_driver_1.DriverCore {
|
|
|
48
50
|
this.pluginClasses = new Map();
|
|
49
51
|
this.sessionPlugins = {};
|
|
50
52
|
this.sessionlessPlugins = [];
|
|
53
|
+
this.bidiSockets = {};
|
|
54
|
+
this.bidiProxyClients = {};
|
|
51
55
|
this.desiredCapConstraints = desiredCapabilityConstraints;
|
|
52
56
|
this._isShuttingDown = false;
|
|
53
57
|
// allow this to happen in the background, so no `await`
|
|
@@ -158,6 +162,286 @@ class AppiumDriver extends base_driver_1.DriverCore {
|
|
|
158
162
|
}
|
|
159
163
|
}
|
|
160
164
|
}
|
|
165
|
+
/**
|
|
166
|
+
* Initialize a new bidi connection and set up handlers
|
|
167
|
+
* @param {import('ws').WebSocket} ws The websocket connection object
|
|
168
|
+
* @param {import('http').IncomingMessage} req The connection pathname, which might include the session id
|
|
169
|
+
*/
|
|
170
|
+
onBidiConnection(ws, req) {
|
|
171
|
+
// TODO put bidi-related functionality into a mixin/helper class
|
|
172
|
+
// wrap all of the handler logic with exception handling so if something blows up we can log
|
|
173
|
+
// and close the websocket
|
|
174
|
+
try {
|
|
175
|
+
const { bidiHandlerDriver, proxyClient, send, sendToProxy, logSocketErr } = this.initBidiSocket(ws, req);
|
|
176
|
+
this.initBidiSocketHandlers(ws, proxyClient, send, sendToProxy, bidiHandlerDriver, logSocketErr);
|
|
177
|
+
this.initBidiProxyHandlers(proxyClient, ws, send);
|
|
178
|
+
this.initBidiEventListeners(ws, bidiHandlerDriver, send);
|
|
179
|
+
}
|
|
180
|
+
catch (err) {
|
|
181
|
+
this.log.error(err);
|
|
182
|
+
try {
|
|
183
|
+
ws.close();
|
|
184
|
+
}
|
|
185
|
+
catch (ign) { }
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Initialize a new bidi connection
|
|
190
|
+
* @param {import('ws').WebSocket} ws The websocket connection object
|
|
191
|
+
* @param {import('http').IncomingMessage} req The connection pathname, which might include the session id
|
|
192
|
+
*/
|
|
193
|
+
initBidiSocket(ws, req) {
|
|
194
|
+
let outOfBandErrorPrefix = '';
|
|
195
|
+
const pathname = req.url;
|
|
196
|
+
if (!pathname) {
|
|
197
|
+
throw new Error('Invalid connection request: pathname missing from request');
|
|
198
|
+
}
|
|
199
|
+
const bidiSessionRe = new RegExp(`${constants_1.BIDI_BASE_PATH}/([^/]+)$`);
|
|
200
|
+
const bidiNoSessionRe = new RegExp(`${constants_1.BIDI_BASE_PATH}/?$`);
|
|
201
|
+
const sessionMatch = bidiSessionRe.exec(pathname);
|
|
202
|
+
const noSessionMatch = bidiNoSessionRe.exec(pathname);
|
|
203
|
+
if (!sessionMatch && !noSessionMatch) {
|
|
204
|
+
throw new Error(`Got websocket connection for path ${pathname} but didn't know what to do with it. ` +
|
|
205
|
+
`Ignoring and will close the connection`);
|
|
206
|
+
}
|
|
207
|
+
// Let's figure out which driver is going to handle this socket connection. It's either going
|
|
208
|
+
// to be a driver matching a session id appended to the bidi base path, or this umbrella driver
|
|
209
|
+
// (if no session id is included in the bidi connection request)
|
|
210
|
+
/** @type {import('@appium/types').ExternalDriver | AppiumDriver} */
|
|
211
|
+
let bidiHandlerDriver;
|
|
212
|
+
/** @type {import('ws').WebSocket | null} */
|
|
213
|
+
let proxyClient = null;
|
|
214
|
+
if (sessionMatch) {
|
|
215
|
+
// If we found a session id, see if it matches an active session
|
|
216
|
+
const sessionId = sessionMatch[1];
|
|
217
|
+
bidiHandlerDriver = this.sessions[sessionId];
|
|
218
|
+
if (!bidiHandlerDriver) {
|
|
219
|
+
// The session ID sent in doesn't match an active session; just ignore this socket
|
|
220
|
+
// connection in that case
|
|
221
|
+
throw new Error(`Got bidi connection request for session with id ${sessionId} which is closed ` +
|
|
222
|
+
`or does not exist. Closing the socket connection.`);
|
|
223
|
+
}
|
|
224
|
+
const driverName = bidiHandlerDriver.constructor.name;
|
|
225
|
+
outOfBandErrorPrefix = `[session ${sessionId}] `;
|
|
226
|
+
this.log.info(`Bidi websocket connection made for session ${sessionId}`);
|
|
227
|
+
// store this socket connection for later removal on session deletion. theoretically there
|
|
228
|
+
// can be multiple sockets per session
|
|
229
|
+
if (!this.bidiSockets[sessionId]) {
|
|
230
|
+
this.bidiSockets[sessionId] = [];
|
|
231
|
+
}
|
|
232
|
+
this.bidiSockets[sessionId].push(ws);
|
|
233
|
+
const bidiProxyUrl = bidiHandlerDriver.bidiProxyUrl;
|
|
234
|
+
if (bidiProxyUrl) {
|
|
235
|
+
try {
|
|
236
|
+
new URL(bidiProxyUrl);
|
|
237
|
+
}
|
|
238
|
+
catch (ign) {
|
|
239
|
+
throw new Error(`Got request for ${driverName} to proxy bidi connections to upstream socket with ` +
|
|
240
|
+
`url ${bidiProxyUrl}, but this was not a valid url`);
|
|
241
|
+
}
|
|
242
|
+
this.log.info(`Bidi connection for ${driverName} will be proxied to ${bidiProxyUrl}`);
|
|
243
|
+
proxyClient = new ws_1.default(bidiProxyUrl);
|
|
244
|
+
this.bidiProxyClients[sessionId] = proxyClient;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
else {
|
|
248
|
+
this.log.info('Bidi websocket connection made to main server');
|
|
249
|
+
// no need to store the socket connection if it's to the main server since it will just
|
|
250
|
+
// stay open as long as the server itself is and will close when the server closes.
|
|
251
|
+
bidiHandlerDriver = this; // eslint-disable-line @typescript-eslint/no-this-alias
|
|
252
|
+
}
|
|
253
|
+
const logSocketErr = (/** @type {Error} */ err) => this.log.error(`${outOfBandErrorPrefix}${err}`);
|
|
254
|
+
// This is a function which wraps the 'send' method on a web socket for two reasons:
|
|
255
|
+
// 1. Make it async-await friendly
|
|
256
|
+
// 2. Do some logging if there's a send error
|
|
257
|
+
const sendFactory = (/** @type {import('ws').WebSocket} */ socket) => {
|
|
258
|
+
const socketSend = bluebird_1.default.promisify(socket.send, { context: socket });
|
|
259
|
+
return async (/** @type {string|Buffer} */ data) => {
|
|
260
|
+
try {
|
|
261
|
+
await socketSend(data);
|
|
262
|
+
}
|
|
263
|
+
catch (err) {
|
|
264
|
+
logSocketErr(err);
|
|
265
|
+
}
|
|
266
|
+
};
|
|
267
|
+
};
|
|
268
|
+
// Construct our send method for sending messages to the client
|
|
269
|
+
const send = sendFactory(ws);
|
|
270
|
+
// Construct a conditional send method for proxying messages from the client to an upstream
|
|
271
|
+
// bidi socket server (e.g. on a browser)
|
|
272
|
+
const sendToProxy = proxyClient ? sendFactory(proxyClient) : null;
|
|
273
|
+
return { bidiHandlerDriver, proxyClient, send, sendToProxy, logSocketErr };
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Set up handlers on upstream bidi socket we are proxying to/from
|
|
277
|
+
*
|
|
278
|
+
* @param {import('ws').WebSocket | null} proxyClient - the websocket connection to/from the
|
|
279
|
+
* upstream socket (the one we're proxying to/from)
|
|
280
|
+
* @param {import('ws').WebSocket} ws - the websocket connection to/from the client
|
|
281
|
+
* @param {(data: string | Buffer) => Promise<void>} send - a method used to send data to the
|
|
282
|
+
* client
|
|
283
|
+
*/
|
|
284
|
+
initBidiProxyHandlers(proxyClient, ws, send) {
|
|
285
|
+
// Set up handlers for events that might come from the upstream bidi socket connection if
|
|
286
|
+
// we're in proxy mode
|
|
287
|
+
if (proxyClient) {
|
|
288
|
+
// Here we're receiving a message from the upstream socket server. We want to pass it on to
|
|
289
|
+
// the client
|
|
290
|
+
proxyClient.on('message', async (/** @type {Buffer|string} */ data) => {
|
|
291
|
+
const logData = lodash_1.default.truncate(data.toString('utf8'), { length: base_driver_1.MAX_LOG_BODY_LENGTH });
|
|
292
|
+
this.log.debug(`<-- BIDI Received data from proxied bidi socket, sending to client. Data: ${logData}`);
|
|
293
|
+
await send(data);
|
|
294
|
+
});
|
|
295
|
+
// If the upstream socket server closes the connection, should close the connection to the
|
|
296
|
+
// client as well
|
|
297
|
+
proxyClient.on('close', (code, reason) => {
|
|
298
|
+
this.log.debug(`Upstream bidi socket closed connection (code ${code}, reason: '${reason}'). ` +
|
|
299
|
+
`Closing proxy connection to client`);
|
|
300
|
+
ws.close(code, reason);
|
|
301
|
+
});
|
|
302
|
+
proxyClient.on('error', (err) => {
|
|
303
|
+
this.log.error(`Got error on upstream bidi socket connection: ${err}`);
|
|
304
|
+
});
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Set up handlers on the bidi socket connection to the client
|
|
309
|
+
*
|
|
310
|
+
* @param {import('ws').WebSocket} ws - the websocket connection to/from the client
|
|
311
|
+
* @param {import('ws').WebSocket | null} proxyClient - the websocket connection to/from the
|
|
312
|
+
* upstream socket (the one we're proxying to/from, if we're proxying)
|
|
313
|
+
* @param {(data: string | Buffer) => Promise<void>} send - a method used to send data to the
|
|
314
|
+
* client
|
|
315
|
+
* @param {((data: string | Buffer) => Promise<void>) | null} sendToProxy - a method used to send data to the
|
|
316
|
+
* upstream socket
|
|
317
|
+
* @param {import('@appium/types').ExternalDriver | AppiumDriver} bidiHandlerDriver - the driver
|
|
318
|
+
* handling the bidi commands
|
|
319
|
+
* @param {(err: Error) => void} logSocketErr - a special prefixed logger
|
|
320
|
+
*/
|
|
321
|
+
initBidiSocketHandlers(ws, proxyClient, send, sendToProxy, bidiHandlerDriver, logSocketErr) {
|
|
322
|
+
ws.on('error', (err) => {
|
|
323
|
+
// Can't do much with random errors on the connection other than log them
|
|
324
|
+
logSocketErr(err);
|
|
325
|
+
});
|
|
326
|
+
ws.on('open', () => {
|
|
327
|
+
this.log.info('Bidi websocket connection is now open');
|
|
328
|
+
});
|
|
329
|
+
// Now set up handlers for the various events that might happen on the websocket connection
|
|
330
|
+
// coming from the client
|
|
331
|
+
// First is incoming messages from the client
|
|
332
|
+
ws.on('message', async (/** @type {Buffer} */ data) => {
|
|
333
|
+
if (proxyClient) {
|
|
334
|
+
const logData = lodash_1.default.truncate(data.toString('utf8'), { length: base_driver_1.MAX_LOG_BODY_LENGTH });
|
|
335
|
+
this.log.debug(`--> BIDI Received data from client, sending to upstream bidi socket. Data: ${logData}`);
|
|
336
|
+
// if we're meant to proxy to an upstream bidi socket, just do that
|
|
337
|
+
// @ts-ignore sendToProxy is never null if proxyClient is truthy, but ts doesn't know
|
|
338
|
+
// that
|
|
339
|
+
await sendToProxy(data.toString('utf8'));
|
|
340
|
+
}
|
|
341
|
+
else {
|
|
342
|
+
const res = await this.onBidiMessage(data, bidiHandlerDriver);
|
|
343
|
+
await send(JSON.stringify(res));
|
|
344
|
+
}
|
|
345
|
+
});
|
|
346
|
+
// Next consider if the client closes the socket connection on us
|
|
347
|
+
ws.on('close', (code, reason) => {
|
|
348
|
+
// Not sure if we need to do anything here if the client closes the websocket connection.
|
|
349
|
+
// Probably if a session was started via the socket, and the socket closes, we should end the
|
|
350
|
+
// associated session to free up resources. But otherwise, for sockets attached to existing
|
|
351
|
+
// sessions, doing nothing is probably right.
|
|
352
|
+
this.log.debug(`Bidi socket connection closed (code ${code}, reason: '${reason}')`);
|
|
353
|
+
// If we're proxying, might as well close the upstream connection and clean it up
|
|
354
|
+
if (proxyClient) {
|
|
355
|
+
this.log.debug('Also closing bidi proxy socket connection');
|
|
356
|
+
proxyClient.close(code, reason);
|
|
357
|
+
}
|
|
358
|
+
});
|
|
359
|
+
}
|
|
360
|
+
/**
|
|
361
|
+
* Set up bidi event listeners
|
|
362
|
+
*
|
|
363
|
+
* @param {import('ws').WebSocket} ws - the websocket connection to/from the client
|
|
364
|
+
* @param {import('@appium/types').ExternalDriver | AppiumDriver} bidiHandlerDriver - the driver
|
|
365
|
+
* handling the bidi commands
|
|
366
|
+
* @param {(data: string | Buffer) => Promise<void>} send - a method used to send data to the
|
|
367
|
+
* client
|
|
368
|
+
*/
|
|
369
|
+
initBidiEventListeners(ws, bidiHandlerDriver, send) {
|
|
370
|
+
// If the driver emits a bidi event that should maybe get sent to the client, check to make
|
|
371
|
+
// sure the client is subscribed and then pass it on
|
|
372
|
+
let eventListener = async ({ context, method, params }) => {
|
|
373
|
+
// if the driver didn't specify a context, use the empty context
|
|
374
|
+
if (!context) {
|
|
375
|
+
context = '';
|
|
376
|
+
}
|
|
377
|
+
if (!method || !params) {
|
|
378
|
+
throw new Error(`Driver emitted a bidi event that was malformed. Require method and params keys ` +
|
|
379
|
+
`(with optional context). But instead received: ${JSON.stringify({
|
|
380
|
+
context,
|
|
381
|
+
method,
|
|
382
|
+
params,
|
|
383
|
+
})}`);
|
|
384
|
+
}
|
|
385
|
+
if (ws.readyState !== ws_1.default.OPEN) {
|
|
386
|
+
// if the websocket is not still 'open', then we can ignore sending these events
|
|
387
|
+
if (ws.readyState > ws_1.default.OPEN) {
|
|
388
|
+
// if the websocket is closed or closing, we can remove this listener as well to avoid
|
|
389
|
+
// leaks
|
|
390
|
+
bidiHandlerDriver.eventEmitter.removeListener(constants_1.BIDI_EVENT_NAME, eventListener);
|
|
391
|
+
}
|
|
392
|
+
return;
|
|
393
|
+
}
|
|
394
|
+
if (bidiHandlerDriver.bidiEventSubs[method]?.includes(context)) {
|
|
395
|
+
this.log.info(`<-- BIDI EVENT ${method} (context: '${context}', params: ${JSON.stringify(params)})`);
|
|
396
|
+
// now we can send the event onto the socket
|
|
397
|
+
const ev = { type: 'event', context, method, params };
|
|
398
|
+
await send(JSON.stringify(ev));
|
|
399
|
+
}
|
|
400
|
+
};
|
|
401
|
+
bidiHandlerDriver.eventEmitter.on(constants_1.BIDI_EVENT_NAME, eventListener);
|
|
402
|
+
}
|
|
403
|
+
/**
|
|
404
|
+
* @param {Buffer} data
|
|
405
|
+
* @param {ExternalDriver | AppiumDriver} driver
|
|
406
|
+
*/
|
|
407
|
+
async onBidiMessage(data, driver) {
|
|
408
|
+
let resMessage, id, method, params;
|
|
409
|
+
const dataTruncated = lodash_1.default.truncate(data.toString(), { length: 100 });
|
|
410
|
+
try {
|
|
411
|
+
try {
|
|
412
|
+
({ id, method, params } = JSON.parse(data.toString('utf8')));
|
|
413
|
+
}
|
|
414
|
+
catch (err) {
|
|
415
|
+
throw new base_driver_1.errors.InvalidArgumentError(`Could not parse Bidi command '${dataTruncated}': ${err.message}`);
|
|
416
|
+
}
|
|
417
|
+
driver.log.info(`--> BIDI message #${id}`);
|
|
418
|
+
if (!method) {
|
|
419
|
+
throw new base_driver_1.errors.InvalidArgumentError(`Missing method for BiDi operation in '${dataTruncated}'`);
|
|
420
|
+
}
|
|
421
|
+
if (!params) {
|
|
422
|
+
throw new base_driver_1.errors.InvalidArgumentError(`Missing params for BiDi operation in '${dataTruncated}`);
|
|
423
|
+
}
|
|
424
|
+
const result = await driver.executeBidiCommand(method, params);
|
|
425
|
+
// https://w3c.github.io/webdriver-bidi/#protocol-definition
|
|
426
|
+
resMessage = {
|
|
427
|
+
id,
|
|
428
|
+
type: 'success',
|
|
429
|
+
result,
|
|
430
|
+
};
|
|
431
|
+
}
|
|
432
|
+
catch (err) {
|
|
433
|
+
resMessage = err.bidiErrObject(id);
|
|
434
|
+
}
|
|
435
|
+
driver.log.info(`<-- BIDI message #${id}`);
|
|
436
|
+
return resMessage;
|
|
437
|
+
}
|
|
438
|
+
/**
|
|
439
|
+
* Log a bidi server error
|
|
440
|
+
* @param {Error} err
|
|
441
|
+
*/
|
|
442
|
+
onBidiServerError(err) {
|
|
443
|
+
this.log.error(`Error from bidi websocket server: ${err}`);
|
|
444
|
+
}
|
|
161
445
|
/**
|
|
162
446
|
* Create a new session
|
|
163
447
|
* @param {W3CAppiumDriverCaps} jsonwpCaps JSONWP formatted desired capabilities
|
|
@@ -200,7 +484,7 @@ class AppiumDriver extends base_driver_1.DriverCore {
|
|
|
200
484
|
if (error) {
|
|
201
485
|
throw error;
|
|
202
486
|
}
|
|
203
|
-
const { driver: InnerDriver, version: driverVersion, driverName, } = this.driverConfig.findMatchingDriver(desiredCaps);
|
|
487
|
+
const { driver: InnerDriver, version: driverVersion, driverName, } = await this.driverConfig.findMatchingDriver(desiredCaps);
|
|
204
488
|
this.printNewSessionAnnouncement(InnerDriver.name, driverVersion, InnerDriver.baseVersion);
|
|
205
489
|
if (this.args.sessionOverride) {
|
|
206
490
|
await this.deleteAllSessions();
|
|
@@ -284,6 +568,20 @@ class AppiumDriver extends base_driver_1.DriverCore {
|
|
|
284
568
|
JSON.stringify(jwpSettings));
|
|
285
569
|
await driverInstance.updateSettings(jwpSettings);
|
|
286
570
|
}
|
|
571
|
+
// if the user has asked for bidi support, and the driver says that it supports bidi,
|
|
572
|
+
// send our bidi url back to the user. The inner driver will need to have already saved any
|
|
573
|
+
// internal bidi urls it might want to proxy to, cause we are going to overwrite that
|
|
574
|
+
// information here!
|
|
575
|
+
if (dCaps.webSocketUrl && driverInstance.doesSupportBidi) {
|
|
576
|
+
const { address, port, basePath } = this.args;
|
|
577
|
+
const isUsingSsl = this.args.sslCertificatePath && this.args.sslKeyPath;
|
|
578
|
+
const scheme = isUsingSsl ? 'wss' : 'ws';
|
|
579
|
+
const bidiUrl = `${scheme}://${address}:${port}${basePath}${constants_1.BIDI_BASE_PATH}/${innerSessionId}`;
|
|
580
|
+
// @ts-ignore webSocketUrl gets sent by the client as a boolean, but then it is supposed
|
|
581
|
+
// to come back from the server as a string. TODO figure out how to express this in our
|
|
582
|
+
// capability constraint system
|
|
583
|
+
dCaps.webSocketUrl = bidiUrl;
|
|
584
|
+
}
|
|
287
585
|
}
|
|
288
586
|
catch (error) {
|
|
289
587
|
return {
|
|
@@ -374,6 +672,7 @@ class AppiumDriver extends base_driver_1.DriverCore {
|
|
|
374
672
|
// be in otherwise
|
|
375
673
|
delete this.sessions[sessionId];
|
|
376
674
|
delete this.sessionPlugins[sessionId];
|
|
675
|
+
this.cleanupBidiSockets(sessionId);
|
|
377
676
|
return dstSession;
|
|
378
677
|
});
|
|
379
678
|
// this may not be correct, but if `dstSession` was falsy, the call to `deleteSession()` would
|
|
@@ -394,6 +693,33 @@ class AppiumDriver extends base_driver_1.DriverCore {
|
|
|
394
693
|
};
|
|
395
694
|
}
|
|
396
695
|
}
|
|
696
|
+
/**
|
|
697
|
+
* @param {string} sessionId
|
|
698
|
+
*/
|
|
699
|
+
cleanupBidiSockets(sessionId) {
|
|
700
|
+
// clean up any bidi sockets associated with session
|
|
701
|
+
if (this.bidiSockets[sessionId]) {
|
|
702
|
+
try {
|
|
703
|
+
this.log.debug(`Closing bidi socket(s) associated with session ${sessionId}`);
|
|
704
|
+
for (const ws of this.bidiSockets[sessionId]) {
|
|
705
|
+
// 1001 means server is going away
|
|
706
|
+
ws.close(1001, 'Appium session is closing');
|
|
707
|
+
}
|
|
708
|
+
}
|
|
709
|
+
catch { }
|
|
710
|
+
delete this.bidiSockets[sessionId];
|
|
711
|
+
const proxyClient = this.bidiProxyClients[sessionId];
|
|
712
|
+
if (proxyClient) {
|
|
713
|
+
this.log.debug(`Also closing proxy connection to upstream bidi server`);
|
|
714
|
+
try {
|
|
715
|
+
// 1000 means normal closure, which seems correct when Appium is acting as the client
|
|
716
|
+
proxyClient.close(1000);
|
|
717
|
+
}
|
|
718
|
+
catch { }
|
|
719
|
+
delete this.bidiProxyClients[sessionId];
|
|
720
|
+
}
|
|
721
|
+
}
|
|
722
|
+
}
|
|
397
723
|
async deleteAllSessions(opts = {}) {
|
|
398
724
|
const sessionsCount = lodash_1.default.size(this.sessions);
|
|
399
725
|
if (0 === sessionsCount) {
|
package/build/lib/appium.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appium.js","sourceRoot":"","sources":["../../lib/appium.js"],"names":[],"mappings":";;;;;;AAAA,mCAAmC;AACnC,oDAAuB;AACvB,qCAAmE;AACnE,qDAU6B;AAC7B,4DAAmC;AACnC,mCAAmF;AACnF,6CAAmD;AACnD,qCAAiD;AACjD,2CAAwC;AAExC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC,CAAC;IACzD,cAAc,EAAE;QACd,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;KACf;IACD,YAAY,EAAE;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;KACf;CACF,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,IAAI,oBAAS,EAAE,CAAC;AAC1C,MAAM,mBAAmB,GAAG,IAAI,oBAAS,EAAE,CAAC;AAE5C;;GAEG;AACH,MAAM,YAAa,SAAQ,wBAAU;IAyDnC;;OAEG;IACH,YAAY,IAAI;QACd,gEAAgE;QAChE,+EAA+E;QAC/E,yDAAyD;QACzD,oEAAoE;QACpE,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;SAC1C;QAED,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,CAAC,IAAI,GAAG,EAAC,GAAG,IAAI,EAAC,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,qBAAqB,GAAG,4BAA4B,CAAC;QAC1D,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAE7B,wDAAwD;QACxD,CAAC,KAAK,IAAI,EAAE;YACV,IAAI;gBACF,MAAM,IAAA,wBAAe,GAAE,CAAC;aACzB;YAAC,OAAO,CAAC,EAAE;gBACV,uEAAuE;gBACvE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;aAChE;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAED;;OAEG;IACH,IAAI,GAAG;QACL,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,MAAM,YAAY,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,cAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC1F,IAAI,CAAC,IAAI,GAAG,gBAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;SAC5C;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,IAAI,sBAAsB;QACxB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,aAAa,CAAC,SAAS;QACrB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC5C,OAAO,UAAU,IAAI,UAAU,CAAC,SAAS,KAAK,IAAI,CAAC;IACrD,CAAC;IAED,gBAAgB,CAAC,SAAS;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED,yCAAyC;IACzC,KAAK,CAAC,SAAS;QACb,8CAA8C;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe;YACpC,CAAC,CAAC;gBACE,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,6BAA6B;aACvC;YACH,CAAC,CAAC;gBACE,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE,+CAA+C;aACzD,CAAC;QACN,OAAO;YACL,GAAG,SAAS;YACZ,KAAK,EAAE,gBAAC,CAAC,KAAK,CAAC,IAAA,qBAAY,GAAE,CAAC;SAC/B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI;QAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,MAAM,IAAI,CAAC,iBAAiB,CAAC;YAC3B,KAAK,EAAE,IAAI;YACX,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW;QACf,OAAO,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;YACrD,EAAE;YACF,YAAY,EAAE,sDAAsD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;SACnF,CAAC,CAAC,CAAC;IACN,CAAC;IAED,2BAA2B,CAAC,UAAU,EAAE,aAAa,EAAE,iBAAiB;QACtE,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,aAAa;YACX,CAAC,CAAC,WAAW,mBAAU,iBAAiB,UAAU,MAAM,aAAa,WAAW;YAChF,CAAC,CAAC,WAAW,mBAAU,iBAAiB,UAAU,UAAU,CAC/D,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,+CAA+C,UAAU,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,YAAY,CAAC,WAAW;YACtB,CAAC,CAAC,kCAAkC,YAAY,CAAC,WAAW,EAAE;YAC9D,CAAC,CAAC,iDAAiD,CACtD,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,iBAAiB;YACf,CAAC,CAAC,GAAG,UAAU,4BAA4B,iBAAiB,EAAE;YAC9D,CAAC,CAAC,uBAAuB,UAAU,uBAAuB,CAC7D,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,mBAAmB,CAAC,OAAO;QACzB,OAAO,2BAA2B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;;;;;;;OAQG;IACH,mBAAmB,CAAC,OAAO;QACzB,MAAM,gBAAgB,GAAG,qCAAqC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QAE7F,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;YAChC,MAAM,QAAQ,GAAG,IAAA,gCAAuB,EAAC,uBAAW,EAAE,OAAO,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,gBAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACjC,CAAC,CAAC,gBAAgB;gBAClB,CAAC,CAAC,gBAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,gBAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;YAChF,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;gBACvB,OAAO,OAAO,CAAC;aAChB;SACF;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,eAAe;QACtD,MAAM,mBAAmB,GAAG,gBAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACvE,MAAM,eAAe,GAAG,IAAA,oBAAY,EAAC,mBAAmB,CAAC,CAAC;QAC1D,UAAU,GAAG,gBAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,EAAC,GAAG,eAAe,EAAE,GAAG,IAAA,oBAAY,EAAC,UAAU,CAAC,EAAC,CAAC;QACtE,eAAe,GAAG,gBAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC/C,IACE,CAAC,gBAAC,CAAC,aAAa,CAAC,eAAe,CAAC;YACjC,CAAC,CAAC,gBAAC,CAAC,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,IAAI,gBAAC,CAAC,aAAa,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC,EAC1F;YACA,MAAM,IAAA,2BAAmB,GAAE,CAAC;SAC7B;QACD,2EAA2E;QAC3E,gEAAgE;QAChE,iFAAiF;QACjF,0BAA0B;QAC1B,MAAM,WAAW,GAAG;YAClB,GAAG,WAAW;YACd,GAAG,IAAA,oBAAY,EAAC,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC;SAC3D,CAAC;QACF,KAAK,MAAM,eAAe,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,UAAU,IAAI,EAAE,EAAE;YACtE,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,IAAA,oBAAY,EAAC,eAAe,CAAC,CAAC,CAAC;SAC3D;QAED,+BAA+B;QAC/B,IAAI,QAAQ,CAAC;QACb,IAAI,cAAc,EAAE,KAAK,CAAC;QAC1B,IAAI;YACF,gEAAgE;YAChE,MAAM,UAAU,GAAG,IAAA,+BAAuB,EACxC,UAAU,EACV,IAAA,kCAAoB,EAAC,kCAAkC,CAAC,CAAC,eAAe,CAAC,CAAC,EAC1E,IAAI,CAAC,qBAAqB,EAC1B,mBAAmB,CAAC,CAAC,CAAC,IAAA,2CAA6B,EAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,SAAS,CACrF,CAAC;YAEF,MAAM,EAAC,WAAW,EAAE,2BAA2B,EAAE,wBAAwB,EAAC;YACxE,0EAA0E,CAAC,CAAC,UAAU,CAAC,CAAC;YAC1F,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;YAC/B,MAAM,KAAK,GAAG,qEAAqE,CAAC,CAClF,UAAU,CACX,CAAC,KAAK,CAAC;YACR,iEAAiE;YACjE,IAAI,KAAK,EAAE;gBACT,MAAM,KAAK,CAAC;aACb;YAED,MAAM,EACJ,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,aAAa,EACtB,UAAU,GACX,GAAG,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YACtD,IAAI,CAAC,2BAA2B,CAAC,WAAW,CAAC,IAAI,EAAE,aAAa,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;YAE3F,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;gBAC7B,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;aAChC;YAED;;eAEG;YACH,IAAI,kBAAkB,GAAG,EAAE,CAAC;YAC5B;;eAEG;YACH,IAAI,uBAAuB,GAAG,EAAE,CAAC;YAEjC,MAAM,cAAc,GAAG,6BAA6B,CAAC,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YAExF,uEAAuE;YACvE,wEAAwE;YACxE,uEAAuE;YACvE,kEAAkE;YAClE,IAAI,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE;gBACpC,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,iCAAiC,WAAW,CAAC,IAAI,WAAW;oBAC1D,8DAA8D;oBAC9D,uDAAuD,CAC1D,CAAC;gBACF,cAAc,CAAC,sBAAsB,GAAG,IAAI,CAAC;aAC9C;YAED,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;gBACtC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;gBACjE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC7D,cAAc,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;aACtD;YAED,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;gBACvC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;gBAC/D,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC9D,cAAc,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;aACxD;YAED,4FAA4F;YAC5F,yFAAyF;YACzF,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;YACrD,IAAI,CAAC,gBAAC,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE;gBAC3B,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;aAClC;YAED,sFAAsF;YACtF,gEAAgE;YAEhE,4CAA4C;YAC5C,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YACpC,cAAc,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAC9C,cAAc,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAC3C,cAAc,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;YAE/C,IAAI;gBACF,kBAAkB,GAAG,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC;aAC9E;YAAC,OAAO,CAAC,EAAE;gBACV,MAAM,IAAI,oBAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;aACpD;YACD,MAAM,mBAAmB,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE;gBACxD,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACpF,uBAAuB,GAAG,gBAAC,CAAC,OAAO,CACjC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CACnE,CAAC;gBACF,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;YAEH,IAAI;gBACF,CAAC,cAAc,EAAE,KAAK,CAAC,GAAG,MAAM,cAAc,CAAC,aAAa,CAC1D,2BAA2B,EAC3B,OAAO,EACP,wBAAwB,EACxB,CAAC,GAAG,kBAAkB,EAAE,GAAG,uBAAuB,CAAC,CACpD,CAAC;gBACF,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;gBACnC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,cAAc,CAAC;aAChD;oBAAS;gBACR,MAAM,mBAAmB,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE;oBACxD,gBAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,CAAC;gBAChE,CAAC,CAAC,CAAC;aACJ;YAED,IAAI,CAAC,+BAA+B,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;YAErE,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,OAAO,WAAW,CAAC,IAAI,yCAAyC;gBAC9D,GAAG,cAAc,+BAA+B,CACnD,CAAC;YAEF,mDAAmD;YACnD,cAAc,CAAC,sBAAsB,EAAE,CAAC;YAExC,wDAAwD;YACxD,IAAI,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;gBAC7D,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,uEAAuE;oBACrE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAC9B,CAAC;gBACF,MAAM,cAAc,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;aAClD;iBAAM,IAAI,cAAc,CAAC,iBAAiB,EAAE,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;gBACxE,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,2EAA2E;oBACzE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAC9B,CAAC;gBACF,MAAM,cAAc,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;aAClD;SACF;QAAC,OAAO,KAAK,EAAE;YACd,OAAO;gBACL,QAAQ;gBACR,KAAK;aACN,CAAC;SACH;QAED,OAAO;YACL,QAAQ;YACR,KAAK,EAAE,CAAC,cAAc,EAAE,KAAK,EAAE,QAAQ,CAAC;SACzC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,+BAA+B,CAAC,MAAM,EAAE,cAAc;QACpD,MAAM,UAAU,GAAG,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,eAAe,CAAC,EAAE,EAAE;YACxD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,8BAA8B,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;YAE9D,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE;gBACvC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE;oBACxD,IAAI,gBAAC,CAAC,UAAU,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE;wBAC7C,IAAI,CAAC,GAAG,CAAC,KAAK,CACZ,UAAU,MAAM,CAAC,IAAI,yDAAyD,CAC/E,CAAC;wBACF,IAAI;4BACF,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;yBAC5C;wBAAC,OAAO,CAAC,EAAE;4BACV,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,oCAAoC,MAAM,CAAC,IAAI,sBAAsB,CAAC,EAAE,CACzE,CAAC;yBACH;qBACF;yBAAM;wBACL,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,iDAAiD,CAAC,CAAC;qBACxF;iBACF;aACF;YAED,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,cAAc,gCAAgC,CAAC,CAAC;YACnF,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;YACrC,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF,IAAI,gBAAC,CAAC,UAAU,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE;YAC7C,MAAM,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;SACzC;aAAM;YACL,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,qDAAqD;gBACnD,mDAAmD,MAAM,CAAC,WAAW,CAAC,IAAI,IAAI,CACjF,CAAC;SACH;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,uBAAuB,CAAC,WAAW;QACvC,MAAM,IAAI,GAAG,gBAAC,CAAC,OAAO,CACpB,gBAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC;aACtD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAC5B,CAAC;QACF,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE;YACxB,IAAI,CAAC,KAAK,EAAE;gBACV,MAAM,IAAI,KAAK,CACb,+CAA+C;oBAC7C,GAAG,WAAW,CAAC,IAAI,uCAAuC,CAC7D,CAAC;aACH;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,SAAS;QAC3B,IAAI,QAAQ,CAAC;QACb,IAAI;YACF,IAAI,iBAAiB,CAAC;YACtB,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE;gBACzE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;oBAC7B,OAAO;iBACR;gBACD,MAAM,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;gBACrE,iBAAiB,GAAG,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;qBACzC,MAAM,CACL,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,kBAAkB,IAAI,GAAG,KAAK,SAAS,CACrF;qBACA,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBACxC,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAC5C,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;gBAC/B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,SAAS,+BAA+B,CAAC,CAAC;gBAC5E,wEAAwE;gBACxE,sEAAsE;gBACtE,kBAAkB;gBAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAChC,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;gBACtC,OAAO,UAAU,CAAC;YACpB,CAAC,CAAC,CAAC;YACH,8FAA8F;YAC9F,gBAAgB;YAChB,IAAI,CAAC,UAAU,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;aACtC;YACD,OAAO;gBACL,QAAQ;gBACR,KAAK,EAAE,MAAM,UAAU,CAAC,aAAa,CAAC,SAAS,EAAE,iBAAiB,CAAC;aACpE,CAAC;SACH;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,8BAA8B,SAAS,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACxE,OAAO;gBACL,QAAQ;gBACR,KAAK,EAAE,CAAC;aACT,CAAC;SACH;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,IAAI,GAAG,EAAE;QAC/B,MAAM,aAAa,GAAG,gBAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,aAAa,EAAE;YACvB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC3D,OAAO;SACR;QAED,MAAM,EAAC,KAAK,GAAG,KAAK,EAAE,MAAM,EAAC,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,cAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QACvF,MAAM,eAAe,GAAG,KAAK;YAC3B,CAAC,CAAC,gBAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAClC,GAAG,CAAC,uBAAuB,CAAC,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CACzD;YACH,CAAC,CAAC,gBAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9D,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE;YAC5C,IAAI;gBACF,MAAM,cAAc,CAAC;aACtB;YAAC,OAAO,CAAC,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACnB;SACF;IACH,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,SAAS,GAAG,IAAI;QAChC,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE;gBACnC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;aAC/D;YACD,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;SACvC;QAED,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;YACtC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;SACxD;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED;;;;;;;;;OASG;IACH,kBAAkB,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI;QACtC,uFAAuF;QACvF,mEAAmE;QACnE,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,gBAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CACtD,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,qBAAqB;QACnB,uBAAuB;QACvB,MAAM,eAAe,GAAG,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE;YAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC9C,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAC9B;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,IAAI;QAC/B,4DAA4D;QAC5D,8FAA8F;QAC9F,iFAAiF;QACjF,6FAA6F;QAC7F,wEAAwE;QACxE,qCAAqC;QACrC,2FAA2F;QAC3F,8BAA8B;QAE9B,MAAM,WAAW,GAAG,GAAG,KAAK,gCAAkB,CAAC;QAC/C,MAAM,aAAa,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,YAAY,GAAG,IAAA,8BAAgB,EAAC,GAAG,CAAC,CAAC;QAE3C,6FAA6F;QAC7F,8FAA8F;QAC9F,uCAAuC;QACvC,MAAM,WAAW,GAAG,gBAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC;QAC9C,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;QAED,2FAA2F;QAC3F,6FAA6F;QAC7F,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,oCAAoC;QACpC,4DAA4D;QAC5D,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,IAAI,YAAY,EAAE;YAChB,SAAS,GAAG,gBAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACtC,IAAI,CAAC,UAAU,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,wBAAwB,SAAS,kBAAkB,CAAC,CAAC;aACtE;YACD,uFAAuF;YACvF,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,aAAa,EAAE;gBAClB,MAAM,GAAG,UAAU,CAAC;aACrB;SACF;QAED,gEAAgE;QAChE,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAExD,uFAAuF;QACvF,yFAAyF;QACzF,+DAA+D;QAC/D,IAAI,OAAO,CAAC,MAAM,IAAI,UAAU,EAAE;YAChC,IAAI,CAAC,GAAG,CAAC,KAAK,CACZ,qFAAqF,CACtF,CAAC;YACF,MAAM,UAAU,CAAC,sBAAsB,EAAE,CAAC;SAC3C;QAED,iGAAiG;QACjG,4FAA4F;QAC5F,6FAA6F;QAC7F,6FAA6F;QAC7F,6FAA6F;QAC7F,wEAAwE;QACxE,MAAM,YAAY,GAAG,EAAC,OAAO,EAAE,KAAK,EAAC,CAAC;QAEtC,4FAA4F;QAC5F,6FAA6F;QAC7F,+FAA+F;QAC/F,sBAAsB;QACtB,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;YACjC,wFAAwF;YACxF,4FAA4F;YAC5F,yBAAyB;YACzB,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,oDAAoD,GAAG,GAAG,CAAC,CAAC;YAE5F,mEAAmE;YACnE,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC;YAE5B,IAAI,WAAW,EAAE;gBACf,0FAA0F;gBAC1F,0FAA0F;gBAC1F,8EAA8E;gBAC9E,6CAA6C;gBAC7C,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE;oBAC5B,MAAM,IAAI,yBAAyB,EAAE,CAAC;iBACvC;gBACD,OAAO,MAAM,UAAU,CAAC,YAAY,CAClC,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,MAAM,EAClB,WAAW,CAAC,IAAI,CACjB,CAAC;aACH;YAED,IAAI,WAAW,EAAE;gBACf,OAAO,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;aAC/B;YAED,IAAI,aAAa,EAAE;gBACjB,sFAAsF;gBACtF,0BAA0B;gBAC1B,OAAO,MAAM,wBAAU,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;aAC3E;YAED,wFAAwF;YACxF,OAAO,MAAM,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QACvD,CAAC,CAAC;QAEF,yFAAyF;QACzF,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,CAAC;YAC7C,MAAM;YACN,GAAG;YACH,IAAI;YACJ,OAAO;YACP,YAAY;YACZ,IAAI,EAAE,eAAe;SACtB,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,EAAC,UAAU,EAAE,QAAQ,EAAC,CAAC,CAAC;QAErE,0FAA0F;QAC1F,wCAAwC;QACxC,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,EAAC,GAAG,EAAE,YAAY,EAAC,CAAC,CAAC;QAE1D,6FAA6F;QAC7F,yFAAyF;QACzF,yEAAyE;QACzE,IACE,UAAU;YACV,CAAC,YAAY,CAAC,OAAO;YACrB,UAAU,CAAC,sBAAsB;YACjC,GAAG,KAAK,oCAAsB,EAC9B;YACA,IAAI,CAAC,GAAG,CAAC,KAAK,CACZ,0EAA0E;gBACxE,kCAAkC,CACrC,CAAC;YACF,MAAM,UAAU,CAAC,sBAAsB,EAAE,CAAC;SAC3C;QAED,2FAA2F;QAC3F,2FAA2F;QAC3F,wDAAwD;QACxD,IAAI,GAAG,KAAK,oCAAsB,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;YAClF,MAAM,SAAS,GAAG,gBAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,aAAa,IAAI,CAAC,kBAAkB,CAAC,MAAM,sCAAsC;gBAC/E,iBAAiB,SAAS,EAAE,CAC/B,CAAC;YACF,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC;YACzD,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;SAC9B;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED,sBAAsB,CAAC,EAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAC;QACrE,OAAO,CAAC,MAAM;YACZ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iCAAiC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAExF,8FAA8F;QAC9F,gDAAgD;QAChD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,2FAA2F;YAC3F,oFAAoF;YACpF,2FAA2F;YAC3F,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,8DAA8D;YACjG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE;gBAC5B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,IAAI,yBAAyB,GAAG,GAAG,CAAC,CAAC;gBACpE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,8DAA8D;gBAChG,mFAAmF;gBACnF,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE;oBACf,OAAO,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;iBAClD;gBACD,8CAA8C;gBAC9C,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAC1D,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SACV;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sBAAsB,CAAC,OAAO,EAAE,EAAC,GAAG,EAAE,YAAY,EAAC;QACjD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACnB,OAAO;SACR;QAED,uFAAuF;QACvF,uFAAuF;QACvF,uFAAuF;QACvF,yFAAyF;QACzF,uFAAuF;QACvF,YAAY;QACZ,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,YAAY,GAAG,mEAAmE;gBAChF,6CAA6C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ;gBAChF,mCAAmC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAClE,CAAC;SACH;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,EAAC,UAAU,EAAE,QAAQ,EAAC;QAChD,IAAI,MAAM,EACR,MAAM,EACN,GAAG,GAAG,EAAE,CAAC;QACX,IAAI;YACF,0FAA0F;YAC1F,2FAA2F;YAC3F,QAAQ;YACR,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;SAC7B;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,GAAG,CAAC,CAAC;SACZ;QAED,8FAA8F;QAC9F,6FAA6F;QAC7F,oEAAoE;QACpE,IAAI,gBAAC,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,gBAAC,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;YACxD,GAAG,GAAG,MAAM,CAAC;SACd;aAAM;YACL,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC;YACnB,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC;YACnB,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;SACzB;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,WAAW,CAAC,SAAS;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC5C,OAAO,UAAU,IAAI,gBAAC,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACjG,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,SAAS;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC5C,OAAO,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,CAAC;IAED,QAAQ,CAAC,SAAS;QAChB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC5C,OAAO,UAAU,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACtD,CAAC;CACF;AA4BO,oCAAY;AA1BpB,wEAAwE;AACxE,iDAAiD;AACjD,SAAS,qBAAqB,CAAC,GAAG;IAChC,OAAO,CAAC,IAAA,8BAAgB,EAAC,GAAG,CAAC,IAAI,GAAG,KAAK,oCAAsB,CAAC;AAClE,CAAC;AAED;;;GAGG;AACH,MAAa,yBAA0B,SAAQ,KAAK;IAMlD;QACE,KAAK,CACH,qEAAqE;YACnE,mEAAmE;YACnE,yEAAyE;YACzE,6DAA6D,CAChE,CAAC;QAXJ;;WAEG;QACH,SAAI,GAAG,kCAAkC,CAAC;IAS1C,CAAC;CACF;AAdD,8DAcC;AAID;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;GAEG;AAEH;;;;;;;;GAQG;AAEH;;;GAGG"}
|
|
1
|
+
{"version":3,"file":"appium.js","sourceRoot":"","sources":["../../lib/appium.js"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../lib/cli/args.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../lib/cli/args.js"],"names":[],"mappings":"4BA4Ta,OAAO,eAAe,EAAE,aAAa;;;;kCAKrC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,GAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAAC,OAAO,UAAU,EAAE,eAAe,CAAC;AA/DjG;;;;GAIG;AACH,qDAEC;AAjOD;;GAEG;AACH,sLAeG;cA1DW,QAAQ"}
|
package/build/lib/cli/args.js
CHANGED
|
@@ -43,6 +43,7 @@ const getExtensionArgs = lodash_1.default.memoize(function getExtensionArgs() {
|
|
|
43
43
|
[constants_1.EXT_SUBCOMMAND_UNINSTALL]: makeUninstallArgs(type),
|
|
44
44
|
[constants_1.EXT_SUBCOMMAND_UPDATE]: makeUpdateArgs(type),
|
|
45
45
|
[constants_1.EXT_SUBCOMMAND_RUN]: makeRunArgs(type),
|
|
46
|
+
[constants_1.EXT_SUBCOMMAND_DOCTOR]: makeDoctorArgs(type),
|
|
46
47
|
};
|
|
47
48
|
}
|
|
48
49
|
return /** @type {Record<ExtensionType, Record<import('appium/types').CliExtensionSubcommand,ArgumentDefinitions>>} */ (extensionArgs);
|
|
@@ -142,7 +143,26 @@ function makeUninstallArgs(type) {
|
|
|
142
143
|
[type],
|
|
143
144
|
{
|
|
144
145
|
type: 'str',
|
|
145
|
-
help:
|
|
146
|
+
help: `Name of the ${type} to uninstall, for example: ` + type === constants_1.DRIVER_TYPE
|
|
147
|
+
? DRIVER_EXAMPLE
|
|
148
|
+
: PLUGIN_EXAMPLE,
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
]);
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Makes the opts for the `doctor` subcommand for each extension type
|
|
155
|
+
* @param {ExtensionType} type
|
|
156
|
+
* @returns {ArgumentDefinitions}
|
|
157
|
+
*/
|
|
158
|
+
function makeDoctorArgs(type) {
|
|
159
|
+
return new Map([
|
|
160
|
+
...globalExtensionArgs,
|
|
161
|
+
[
|
|
162
|
+
[type],
|
|
163
|
+
{
|
|
164
|
+
type: 'str',
|
|
165
|
+
help: `Name of the ${type} to run doctor checks for, for example: ` + type === constants_1.DRIVER_TYPE
|
|
146
166
|
? DRIVER_EXAMPLE
|
|
147
167
|
: PLUGIN_EXAMPLE,
|
|
148
168
|
},
|
|
@@ -203,9 +223,11 @@ function makeRunArgs(type) {
|
|
|
203
223
|
['scriptName'],
|
|
204
224
|
{
|
|
205
225
|
default: null,
|
|
226
|
+
nargs: '?',
|
|
206
227
|
type: 'str',
|
|
207
228
|
help: `Name of the script to run from the ${type}. The script name must be a key ` +
|
|
208
|
-
`inside the "appium.scripts" field inside the ${type}'s "package.json" file
|
|
229
|
+
`inside the "appium.scripts" field inside the ${type}'s "package.json" file. ` +
|
|
230
|
+
`If not provided then all available script names are going to be listed.`,
|
|
209
231
|
},
|
|
210
232
|
],
|
|
211
233
|
]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../../lib/cli/args.js"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AACvB,
|
|
1
|
+
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../../lib/cli/args.js"],"names":[],"mappings":"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"}
|
|
@@ -33,6 +33,13 @@ export default class DriverCliCommand extends ExtensionCliCommand<"driver"> {
|
|
|
33
33
|
* @return {Promise<import('./extension-command').RunOutput>}
|
|
34
34
|
*/
|
|
35
35
|
run({ driver, scriptName, extraArgs }: DriverRunOptions): Promise<import('./extension-command').RunOutput>;
|
|
36
|
+
/**
|
|
37
|
+
* Runs doctor checks for the given driver
|
|
38
|
+
*
|
|
39
|
+
* @param {DriverDoctorOptions} opts
|
|
40
|
+
* @returns {Promise<import('@appium/types').IDoctorCheck[]>}
|
|
41
|
+
*/
|
|
42
|
+
doctor({ driver }: DriverDoctorOptions): Promise<import('@appium/types').IDoctorCheck[]>;
|
|
36
43
|
}
|
|
37
44
|
export type ExtensionType = import('@appium/types').ExtensionType;
|
|
38
45
|
export type DriverType = import('@appium/types').DriverType;
|
|
@@ -98,5 +105,14 @@ export type DriverRunOptions = {
|
|
|
98
105
|
*/
|
|
99
106
|
extraArgs?: string[] | undefined;
|
|
100
107
|
};
|
|
108
|
+
/**
|
|
109
|
+
* Options for {@linkcode DriverCliCommand.doctor }.
|
|
110
|
+
*/
|
|
111
|
+
export type DriverDoctorOptions = {
|
|
112
|
+
/**
|
|
113
|
+
* - name of the driver to run doctor checks for
|
|
114
|
+
*/
|
|
115
|
+
driver: string;
|
|
116
|
+
};
|
|
101
117
|
import ExtensionCliCommand from './extension-command';
|
|
102
118
|
//# sourceMappingURL=driver-command.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver-command.d.ts","sourceRoot":"","sources":["../../../lib/cli/driver-command.js"],"names":[],"mappings":"AAOA;;GAEG;AAEH;IACE;;OAEG;IACH,8BAFW,OAAO,qBAAqB,EAAE,uBAAuB,CAAC,UAAU,CAAC,EAK3E;IAED;;;;;OAKG;IACH,8CAHW,iBAAiB,GAChB,QAAQ,UAAU,UAAU,CAAC,CAAC,CAQzC;IAED;;;;;OAKG;IACH,sBAHW,mBAAmB,GAClB,QAAQ,UAAU,UAAU,CAAC,CAAC,CAIzC;IAED;;;;;OAKG;IACH,2BAHW,gBAAgB,GACf,QAAQ,OAAO,qBAAqB,EAAE,qBAAqB,CAAC,CAIvE;IAED;;;;OAIG;IACH,uCAHW,gBAAgB,GACf,QAAQ,OAAO,qBAAqB,EAAE,SAAS,CAAC,CAS3D;CAqCF;4BAGY,OAAO,eAAe,EAAE,aAAa;yBACrC,OAAO,eAAe,EAAE,UAAU;+EAKlC,OAAO,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC;;YAKxC,OAAO,+BAA+B,EAAE,eAAe,CAAC,UAAU,CAAC;UACnE,OAAO;;;;;;;;;YAMP,MAAM;;;;iBACN,WAAW;;;;;;0BAKZ,OAAO,cAAc,EAAE,WAAW;;;;;;;;YAMjC,MAAM;;;;;;;;;YAMN,MAAM;;;;YACN,OAAO;;;;;;;;;YAMP,MAAM;;;;gBACN,MAAM
|
|
1
|
+
{"version":3,"file":"driver-command.d.ts","sourceRoot":"","sources":["../../../lib/cli/driver-command.js"],"names":[],"mappings":"AAOA;;GAEG;AAEH;IACE;;OAEG;IACH,8BAFW,OAAO,qBAAqB,EAAE,uBAAuB,CAAC,UAAU,CAAC,EAK3E;IAED;;;;;OAKG;IACH,8CAHW,iBAAiB,GAChB,QAAQ,UAAU,UAAU,CAAC,CAAC,CAQzC;IAED;;;;;OAKG;IACH,sBAHW,mBAAmB,GAClB,QAAQ,UAAU,UAAU,CAAC,CAAC,CAIzC;IAED;;;;;OAKG;IACH,2BAHW,gBAAgB,GACf,QAAQ,OAAO,qBAAqB,EAAE,qBAAqB,CAAC,CAIvE;IAED;;;;OAIG;IACH,uCAHW,gBAAgB,GACf,QAAQ,OAAO,qBAAqB,EAAE,SAAS,CAAC,CAS3D;IAED;;;;;OAKG;IACH,mBAHW,mBAAmB,GACjB,QAAQ,OAAO,eAAe,EAAE,YAAY,EAAE,CAAC,CAM3D;CAqCF;4BAGY,OAAO,eAAe,EAAE,aAAa;yBACrC,OAAO,eAAe,EAAE,UAAU;+EAKlC,OAAO,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC;;YAKxC,OAAO,+BAA+B,EAAE,eAAe,CAAC,UAAU,CAAC;UACnE,OAAO;;;;;;;;;YAMP,MAAM;;;;iBACN,WAAW;;;;;;0BAKZ,OAAO,cAAc,EAAE,WAAW;;;;;;;;YAMjC,MAAM;;;;;;;;;YAMN,MAAM;;;;YACN,OAAO;;;;;;;;;YAMP,MAAM;;;;gBACN,MAAM;;;;;;;;;;;;;YAON,MAAM;;gCAxKY,qBAAqB"}
|
|
@@ -63,6 +63,17 @@ class DriverCliCommand extends extension_command_1.default {
|
|
|
63
63
|
bufferOutput: this.isJsonOutput,
|
|
64
64
|
});
|
|
65
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Runs doctor checks for the given driver
|
|
68
|
+
*
|
|
69
|
+
* @param {DriverDoctorOptions} opts
|
|
70
|
+
* @returns {Promise<import('@appium/types').IDoctorCheck[]>}
|
|
71
|
+
*/
|
|
72
|
+
async doctor({ driver }) {
|
|
73
|
+
return await super._doctor({
|
|
74
|
+
installSpec: driver,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
66
77
|
/**
|
|
67
78
|
*
|
|
68
79
|
* @param {import('./extension-command').ExtensionArgs} opts
|
|
@@ -132,4 +143,9 @@ exports.default = DriverCliCommand;
|
|
|
132
143
|
* @property {string} scriptName - name of the script to run
|
|
133
144
|
* @property {string[]} [extraArgs] - arguments to pass to the script
|
|
134
145
|
*/
|
|
146
|
+
/**
|
|
147
|
+
* Options for {@linkcode DriverCliCommand.doctor}.
|
|
148
|
+
* @typedef DriverDoctorOptions
|
|
149
|
+
* @property {string} driver - name of the driver to run doctor checks for
|
|
150
|
+
*/
|
|
135
151
|
//# sourceMappingURL=driver-command.js.map
|