appium 2.3.0 → 2.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/README.md +129 -158
  2. package/build/lib/appium.d.ts +72 -0
  3. package/build/lib/appium.d.ts.map +1 -1
  4. package/build/lib/appium.js +326 -0
  5. package/build/lib/appium.js.map +1 -1
  6. package/build/lib/cli/args.d.ts.map +1 -1
  7. package/build/lib/cli/args.js +24 -2
  8. package/build/lib/cli/args.js.map +1 -1
  9. package/build/lib/cli/driver-command.d.ts +16 -0
  10. package/build/lib/cli/driver-command.d.ts.map +1 -1
  11. package/build/lib/cli/driver-command.js +16 -0
  12. package/build/lib/cli/driver-command.js.map +1 -1
  13. package/build/lib/cli/extension-command.d.ts +26 -2
  14. package/build/lib/cli/extension-command.d.ts.map +1 -1
  15. package/build/lib/cli/extension-command.js +127 -1
  16. package/build/lib/cli/extension-command.js.map +1 -1
  17. package/build/lib/cli/parser.d.ts.map +1 -1
  18. package/build/lib/cli/parser.js +11 -7
  19. package/build/lib/cli/parser.js.map +1 -1
  20. package/build/lib/cli/plugin-command.d.ts +16 -0
  21. package/build/lib/cli/plugin-command.d.ts.map +1 -1
  22. package/build/lib/cli/plugin-command.js +16 -0
  23. package/build/lib/cli/plugin-command.js.map +1 -1
  24. package/build/lib/cli/utils.d.ts.map +1 -1
  25. package/build/lib/cli/utils.js +3 -4
  26. package/build/lib/cli/utils.js.map +1 -1
  27. package/build/lib/config.d.ts +1 -1
  28. package/build/lib/config.d.ts.map +1 -1
  29. package/build/lib/config.js +25 -29
  30. package/build/lib/config.js.map +1 -1
  31. package/build/lib/constants.d.ts +10 -0
  32. package/build/lib/constants.d.ts.map +1 -1
  33. package/build/lib/constants.js +11 -1
  34. package/build/lib/constants.js.map +1 -1
  35. package/build/lib/doctor/doctor.d.ts +55 -0
  36. package/build/lib/doctor/doctor.d.ts.map +1 -0
  37. package/build/lib/doctor/doctor.js +201 -0
  38. package/build/lib/doctor/doctor.js.map +1 -0
  39. package/build/lib/extension/index.d.ts.map +1 -1
  40. package/build/lib/extension/index.js +10 -4
  41. package/build/lib/extension/index.js.map +1 -1
  42. package/build/lib/grid-register.d.ts.map +1 -1
  43. package/build/lib/grid-register.js +1 -2
  44. package/build/lib/grid-register.js.map +1 -1
  45. package/build/lib/main.d.ts.map +1 -1
  46. package/build/lib/main.js +6 -0
  47. package/build/lib/main.js.map +1 -1
  48. package/build/lib/utils.d.ts +1 -0
  49. package/build/lib/utils.d.ts.map +1 -1
  50. package/build/lib/utils.js +2 -1
  51. package/build/lib/utils.js.map +1 -1
  52. package/build/types/cli.d.ts +1 -1
  53. package/build/types/cli.d.ts.map +1 -1
  54. package/lib/appium.js +387 -1
  55. package/lib/cli/args.js +27 -2
  56. package/lib/cli/driver-command.js +18 -0
  57. package/lib/cli/extension-command.js +152 -2
  58. package/lib/cli/parser.js +22 -8
  59. package/lib/cli/plugin-command.js +18 -0
  60. package/lib/cli/utils.js +5 -7
  61. package/lib/config.js +18 -24
  62. package/lib/constants.js +12 -0
  63. package/lib/doctor/doctor.js +209 -0
  64. package/lib/extension/index.js +10 -4
  65. package/lib/grid-register.js +1 -2
  66. package/lib/main.js +6 -0
  67. package/lib/utils.js +2 -1
  68. package/package.json +13 -13
  69. package/types/cli.ts +1 -1
@@ -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
@@ -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) {
@@ -1 +1 @@
1
- {"version":3,"file":"appium.js","sourceRoot":"","sources":["../../lib/appium.js"],"names":[],"mappings":"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"}
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":"4BAmSa,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;AAzMD;;GAEG;AACH,sLAcG;cAxDW,QAAQ"}
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"}
@@ -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: 'Name of the driver to uninstall, for example: ' + type === constants_1.DRIVER_TYPE
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":"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"}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../lib/cli/args.js"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AACvB,4CASsB;AACtB,oEAA4D;AAC5D,iDAAgD;AAChD,MAAM,cAAc,GAAG,UAAU,CAAC;AAClC,MAAM,cAAc,GAAG,eAAe,CAAC;AAEvC;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,GAAG,gCAAa,CAAC,CAAC;AAE/C,iCAAiC;AACjC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,uBAAW,EAAE,uBAAW,CAAC,CAAC,CAAC;AAE5D,qEAAqE;AACrE,kCAAkC;AAClC,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC;QACE,CAAC,QAAQ,CAAC;QACV;YACE,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,4BAA4B;YAClC,IAAI,EAAE,MAAM;SACb;KACF;CACF,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,gBAAgB,GAAG,gBAAC,CAAC,OAAO,CAAC,SAAS,gBAAgB;IAC1D,MAAM,aAAa,GAAG,EAAE,CAAC;IACzB,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE;QAClC,aAAa,CAAC,IAAI,CAAC,GAAG;YACpB,CAAC,+BAAmB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;YACzC,CAAC,kCAAsB,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC;YAC/C,CAAC,oCAAwB,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC;YACnD,CAAC,iCAAqB,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC;YAC7C,CAAC,8BAAkB,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC;YACvC,CAAC,iCAAqB,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC;SAC9C,CAAC;KACH;IACD,OAAO,+GAA+G,CAAC,CACrH,aAAa,CACd,CAAC;AACJ,CAAC,CAAC,CAAC;AA+PoB,4CAAgB;AA7PvC;;;;GAIG;AACH,SAAS,YAAY,CAAC,IAAI;IACxB,OAAO,IAAI,GAAG,CAAC;QACb,GAAG,mBAAmB;QACtB;YACE,CAAC,aAAa,CAAC;YACf;gBACE,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,YAAY;gBACpB,IAAI,EAAE,uBAAuB,IAAI,GAAG;gBACpC,IAAI,EAAE,eAAe;aACtB;SACF;QACD;YACE,CAAC,WAAW,CAAC;YACb;gBACE,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,YAAY;gBACpB,IAAI,EAAE,uCAAuC;gBAC7C,IAAI,EAAE,aAAa;aACpB;SACF;QACD;YACE,CAAC,WAAW,CAAC;YACb;gBACE,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,YAAY;gBACpB,IAAI,EAAE,4CAA4C;gBAClD,IAAI,EAAE,SAAS;aAChB;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,IAAI;IAC3B,OAAO,IAAI,GAAG,CAAC;QACb,GAAG,mBAAmB;QACtB;YACE,CAAC,IAAI,CAAC;YACN;gBACE,IAAI,EAAE,KAAK;gBACX,IAAI,EACF,eAAe,IAAI,4BAA4B,GAAG,IAAI,KAAK,uBAAW;oBACpE,CAAC,CAAC,cAAc;oBAChB,CAAC,CAAC,cAAc;aACrB;SACF;QACD;YACE,CAAC,UAAU,CAAC;YACZ;gBACE,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,mBAAmB;gBAC5B,IAAI,EACF,yBAAyB,IAAI,yCAAyC;oBACtE,GAAG,IAAI,uBAAuB,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAChE,IAAI,EAAE,aAAa;aACpB;SACF;QACD;YACE,CAAC,WAAW,CAAC;YACb;gBACE,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,KAAK;gBACX,IAAI,EACF,iFAAiF;oBACjF,iFAAiF;oBACjF,oEAAoE;gBACtE,IAAI,EAAE,aAAa;aACpB;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,IAAI;IAC7B,OAAO,IAAI,GAAG,CAAC;QACb,GAAG,mBAAmB;QACtB;YACE,CAAC,IAAI,CAAC;YACN;gBACE,IAAI,EAAE,KAAK;gBACX,IAAI,EACF,eAAe,IAAI,8BAA8B,GAAG,IAAI,KAAK,uBAAW;oBACtE,CAAC,CAAC,cAAc;oBAChB,CAAC,CAAC,cAAc;aACrB;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,IAAI;IAC1B,OAAO,IAAI,GAAG,CAAC;QACb,GAAG,mBAAmB;QACtB;YACE,CAAC,IAAI,CAAC;YACN;gBACE,IAAI,EAAE,KAAK;gBACX,IAAI,EACF,eAAe,IAAI,0CAA0C,GAAG,IAAI,KAAK,uBAAW;oBAClF,CAAC,CAAC,cAAc;oBAChB,CAAC,CAAC,cAAc;aACrB;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,IAAI;IAC1B,OAAO,IAAI,GAAG,CAAC;QACb,GAAG,mBAAmB;QACtB;YACE,CAAC,IAAI,CAAC;YACN;gBACE,IAAI,EAAE,KAAK;gBACX,IAAI,EACF,eAAe,IAAI,8DAA8D;oBAC/E,GAAG,IAAI,4CAA4C,IAAI,gCAAgC;oBACvF,eAAe;oBACf,IAAI;oBACN,uBAAW;oBACT,CAAC,CAAC,cAAc;oBAChB,CAAC,CAAC,cAAc;aACrB;SACF;QACD;YACE,CAAC,UAAU,CAAC;YACZ;gBACE,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,YAAY;gBACpB,IAAI,EACF,gFAAgF;oBAChF,kBAAkB;aACrB;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,IAAI;IACvB,OAAO,IAAI,GAAG,CAAC;QACb,GAAG,mBAAmB;QACtB;YACE,CAAC,IAAI,CAAC;YACN;gBACE,IAAI,EAAE,KAAK;gBACX,IAAI,EACF,eAAe,IAAI,sCAAsC,GAAG,IAAI,KAAK,uBAAW;oBAC9E,CAAC,CAAC,cAAc;oBAChB,CAAC,CAAC,cAAc;aACrB;SACF;QACD;YACE,CAAC,YAAY,CAAC;YACd;gBACE,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,GAAG;gBACV,IAAI,EAAE,KAAK;gBACX,IAAI,EACF,sCAAsC,IAAI,kCAAkC;oBAC5E,gDAAgD,IAAI,0BAA0B;oBAC9E,yEAAyE;aAC5E;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa;IACpB,OAAO,IAAI,GAAG,CAAC,CAAC,GAAG,IAAA,uBAAY,GAAE,EAAE,GAAG,4BAA4B,CAAC,CAAC,CAAC;AACvE,CAAC;AAgDO,sCAAa;AA9CrB;;;GAGG;AACH,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC;IAC3C;QACE,CAAC,SAAS,CAAC;QACX;YACE,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,aAAa;YACrB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,OAAO;SACd;KACF;IACD;QACE,CAAC,mBAAmB,CAAC;QACrB;YACE,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,aAAa;YACrB,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,2CAA2C;SAClD;KACF;IACD;QACE,CAAC,eAAe,CAAC;QACjB;YACE,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,aAAa;YACrB,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,gDAAgD;SACvD;KACF;IACD;QACE,CAAC,UAAU,CAAC;QACZ;YACE,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,KAAK;YACX,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,4CAA4C;SACnD;KACF;CACF,CAAC,CAAC;AAIH;;GAEG;AAEH;;;GAGG"}
@@ -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;;;;;;gCArJY,qBAAqB"}
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
@@ -1 +1 @@
1
- {"version":3,"file":"driver-command.js","sourceRoot":"","sources":["../../../lib/cli/driver-command.js"],"names":[],"mappings":";;;;;AAAA,oDAAuB;AACvB,4EAAsD;AACtD,4CAA2C;AAC3C,0BAAwB;AAExB,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC;AAEzF;;GAEG;AAEH,MAAqB,gBAAiB,SAAQ,2BAAmB;IAC/D;;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;;;;;OAKG;IACH,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;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,EAAC,MAAM,EAAC;QACtB,OAAO,MAAM,KAAK,CAAC,UAAU,CAAC,EAAC,WAAW,EAAE,MAAM,EAAC,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,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;;;;OAIG;IACH,KAAK,CAAC,GAAG,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC;QACvC,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC;YACtB,WAAW,EAAE,MAAM;YACnB,UAAU;YACV,SAAS;YACT,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,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;AA5FD,mCA4FC;AAED;;;GAGG;AAEH;;;GAGG;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;GAEG;AAEH;;;;GAIG;AAEH;;;;;GAKG;AAEH;;;;;;GAMG"}
1
+ {"version":3,"file":"driver-command.js","sourceRoot":"","sources":["../../../lib/cli/driver-command.js"],"names":[],"mappings":";;;;;AAAA,oDAAuB;AACvB,4EAAsD;AACtD,4CAA2C;AAC3C,0BAAwB;AAExB,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC;AAEzF;;GAEG;AAEH,MAAqB,gBAAiB,SAAQ,2BAAmB;IAC/D;;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;;;;;OAKG;IACH,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;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,EAAC,MAAM,EAAC;QACtB,OAAO,MAAM,KAAK,CAAC,UAAU,CAAC,EAAC,WAAW,EAAE,MAAM,EAAC,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,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;;;;OAIG;IACH,KAAK,CAAC,GAAG,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC;QACvC,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC;YACtB,WAAW,EAAE,MAAM;YACnB,UAAU;YACV,SAAS;YACT,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,EAAC,MAAM,EAAC;QACnB,OAAO,MAAM,KAAK,CAAC,OAAO,CAAC;YACzB,WAAW,EAAE,MAAM;SACpB,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,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;AAxGD,mCAwGC;AAED;;;GAGG;AAEH;;;GAGG;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;GAEG;AAEH;;;;GAIG;AAEH;;;;;GAKG;AAEH;;;;;;GAMG;AAEH;;;;GAIG"}