appium-geckodriver 2.2.1 → 2.2.3

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/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## [2.2.3](https://github.com/appium/appium-geckodriver/compare/v2.2.2...v2.2.3) (2026-05-04)
2
+
3
+ ### Miscellaneous Chores
4
+
5
+ * remove lodash ([#160](https://github.com/appium/appium-geckodriver/issues/160)) ([6a4b9b6](https://github.com/appium/appium-geckodriver/commit/6a4b9b6051dcb4ed21361f6764e174645c8b9a0e))
6
+
7
+ ## [2.2.2](https://github.com/appium/appium-geckodriver/compare/v2.2.1...v2.2.2) (2026-05-01)
8
+
9
+ ### Bug Fixes
10
+
11
+ * lint ([#159](https://github.com/appium/appium-geckodriver/issues/159)) ([92b7a12](https://github.com/appium/appium-geckodriver/commit/92b7a127b3729cc45e034ce0a08025039e444219))
12
+
1
13
  ## [2.2.1](https://github.com/appium/appium-geckodriver/compare/v2.2.0...v2.2.1) (2026-04-10)
2
14
 
3
15
  ### Miscellaneous Chores
@@ -1,3 +1,13 @@
1
1
  import type { GeckoDriver } from '../driver';
2
+ /**
3
+ * Find element(s) by given strategy and selector. If context is provided, search will be performed within the context element.
4
+ * This is needed to make lookup by image working.
5
+ * @this GeckoDriver
6
+ * @param strategy - The strategy to use for finding the element(s) (e.g., 'css selector', 'xpath', etc.)
7
+ * @param selector - The selector to use for finding the element(s)
8
+ * @param mult - Whether to find multiple elements (true) or a single element (false)
9
+ * @param context - Optional context element ID to search within
10
+ * @returns A promise that resolves to the found element(s)
11
+ */
2
12
  export declare function findElOrEls(this: GeckoDriver, strategy: string, selector: string, mult: boolean, context?: string): Promise<any>;
3
13
  //# sourceMappingURL=find.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AAG3C,wBAAsB,WAAW,CAC/B,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,GAAG,CAAC,CAMd"}
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AAE3C;;;;;;;;;GASG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,GAAG,CAAC,CAMd"}
@@ -2,7 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.findElOrEls = findElOrEls;
4
4
  const support_1 = require("appium/support");
5
- // This is needed to make lookup by image working
5
+ /**
6
+ * Find element(s) by given strategy and selector. If context is provided, search will be performed within the context element.
7
+ * This is needed to make lookup by image working.
8
+ * @this GeckoDriver
9
+ * @param strategy - The strategy to use for finding the element(s) (e.g., 'css selector', 'xpath', etc.)
10
+ * @param selector - The selector to use for finding the element(s)
11
+ * @param mult - Whether to find multiple elements (true) or a single element (false)
12
+ * @param context - Optional context element ID to search within
13
+ * @returns A promise that resolves to the found element(s)
14
+ */
6
15
  async function findElOrEls(strategy, selector, mult, context) {
7
16
  const endpoint = `/element${context ? `/${support_1.util.unwrapElement(context)}/element` : ''}${mult ? 's' : ''}`;
8
17
  return await this.gecko.proxy.command(endpoint, 'POST', {
@@ -1 +1 @@
1
- {"version":3,"file":"find.js","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":";;AAIA,kCAYC;AAhBD,4CAAoC;AAGpC,iDAAiD;AAC1C,KAAK,UAAU,WAAW,CAE/B,QAAgB,EAChB,QAAgB,EAChB,IAAa,EACb,OAAgB;IAEhB,MAAM,QAAQ,GAAG,WAAW,OAAO,CAAC,CAAC,CAAC,IAAI,cAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACzG,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE;QACtD,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"find.js","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":";;AAaA,kCAYC;AAzBD,4CAAoC;AAGpC;;;;;;;;;GASG;AACI,KAAK,UAAU,WAAW,CAE/B,QAAgB,EAChB,QAAgB,EAChB,IAAa,EACb,OAAgB;IAEhB,MAAM,QAAQ,GAAG,WAAW,OAAO,CAAC,CAAC,CAAC,IAAI,cAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACzG,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE;QACtD,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;AACL,CAAC"}
@@ -5,22 +5,22 @@ import { desiredCapConstraints } from './desired-caps';
5
5
  import * as findCommands from './commands/find';
6
6
  export type GeckoConstraints = typeof desiredCapConstraints;
7
7
  export declare class GeckoDriver extends BaseDriver<GeckoConstraints, StringRecord> implements ExternalDriver<GeckoConstraints, string, StringRecord> {
8
+ proxyReqRes: (...args: any) => any;
9
+ findElOrEls: typeof findCommands.findElOrEls;
8
10
  private isProxyActive;
9
11
  private _gecko;
10
12
  private _bidiProxyUrl;
11
- proxyReqRes: (...args: any) => any;
12
13
  constructor(opts?: InitialOpts);
14
+ get gecko(): GeckoDriverServer;
15
+ get bidiProxyUrl(): string | null;
13
16
  proxyActive(sessionId?: string): boolean;
14
17
  getProxyAvoidList(): RouteMatcher[];
15
18
  canProxy(): boolean;
16
- get gecko(): GeckoDriverServer;
17
19
  validateDesiredCaps(caps: any): caps is any;
18
20
  createSession(w3cCaps1: W3CDriverCaps<GeckoConstraints>, w3cCaps2?: W3CDriverCaps<GeckoConstraints>, ...args: any[]): Promise<DefaultCreateSessionResult<GeckoConstraints>>;
19
- get bidiProxyUrl(): string | null;
20
21
  deleteSession(): Promise<void>;
21
22
  private resetState;
22
23
  private _extractWebSocketUrl;
23
- findElOrEls: typeof findCommands.findElOrEls;
24
24
  }
25
25
  export default GeckoDriver;
26
26
  //# sourceMappingURL=driver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,0BAA0B,EAC1B,WAAW,EACX,YAAY,EACZ,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,UAAU,EAAS,MAAM,eAAe,CAAC;AACjD,OAAO,EAAoB,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAC,qBAAqB,EAAC,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAUhD,MAAM,MAAM,gBAAgB,GAAG,OAAO,qBAAqB,CAAC;AAE5D,qBAAa,WACX,SAAQ,UAAU,CAAC,gBAAgB,EAAE,YAAY,CACjD,YAAW,cAAc,CAAC,gBAAgB,EAAE,MAAM,EAAE,YAAY,CAAC;IAEjE,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,aAAa,CAAuB;IACrC,WAAW,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;gBAE9B,IAAI,GAAE,WAA+B;IAiBxC,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO;IAIxC,iBAAiB,IAAI,YAAY,EAAE;IAInC,QAAQ,IAAI,OAAO;IAI5B,IAAI,KAAK,IAAI,iBAAiB,CAK7B;IAEQ,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,GAAG;IAmBrC,aAAa,CAC1B,QAAQ,EAAE,aAAa,CAAC,gBAAgB,CAAC,EACzC,QAAQ,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAC1C,GAAG,IAAI,EAAE,GAAG,EAAE,GACb,OAAO,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;IAqBxD,IAAa,YAAY,IAAI,MAAM,GAAG,IAAI,CAEzC;IAEc,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ7C,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,oBAAoB;IAgB5B,WAAW,kCAA4B;CACxC;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,0BAA0B,EAC1B,WAAW,EACX,YAAY,EACZ,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,UAAU,EAAS,MAAM,eAAe,CAAC;AACjD,OAAO,EAAoB,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAC,qBAAqB,EAAC,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAUhD,MAAM,MAAM,gBAAgB,GAAG,OAAO,qBAAqB,CAAC;AAE5D,qBAAa,WACX,SAAQ,UAAU,CAAC,gBAAgB,EAAE,YAAY,CACjD,YAAW,cAAc,CAAC,gBAAgB,EAAE,MAAM,EAAE,YAAY,CAAC;IAE1D,WAAW,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;IAE1C,WAAW,kCAA4B;IAEvC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,aAAa,CAAuB;gBAEhC,IAAI,GAAE,WAA+B;IAgBjD,IAAI,KAAK,IAAI,iBAAiB,CAK7B;IAED,IAAa,YAAY,IAAI,MAAM,GAAG,IAAI,CAEzC;IAGQ,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO;IAIxC,iBAAiB,IAAI,YAAY,EAAE;IAInC,QAAQ,IAAI,OAAO;IAInB,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,GAAG;IAmBrC,aAAa,CAC1B,QAAQ,EAAE,aAAa,CAAC,gBAAgB,CAAC,EACzC,QAAQ,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAC1C,GAAG,IAAI,EAAE,GAAG,EAAE,GACb,OAAO,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;IAqBzC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ7C,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,oBAAoB;CAe7B;AAED,eAAe,WAAW,CAAC"}
@@ -32,12 +32,8 @@ var __importStar = (this && this.__importStar) || (function () {
32
32
  return result;
33
33
  };
34
34
  })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
35
  Object.defineProperty(exports, "__esModule", { value: true });
39
36
  exports.GeckoDriver = void 0;
40
- const lodash_1 = __importDefault(require("lodash"));
41
37
  const driver_1 = require("appium/driver");
42
38
  const gecko_1 = require("./gecko");
43
39
  const desired_caps_1 = require("./desired-caps");
@@ -51,13 +47,14 @@ const NO_PROXY = [
51
47
  ['POST', new RegExp('^/session/[^/]+/elements?$')],
52
48
  ];
53
49
  class GeckoDriver extends driver_1.BaseDriver {
50
+ proxyReqRes;
51
+ findElOrEls = findCommands.findElOrEls;
54
52
  isProxyActive = false;
55
53
  _gecko = null;
56
54
  _bidiProxyUrl = null;
57
- proxyReqRes;
58
55
  constructor(opts = {}) {
59
56
  super(opts);
60
- this.desiredCapConstraints = lodash_1.default.cloneDeep(desired_caps_1.desiredCapConstraints);
57
+ this.desiredCapConstraints = structuredClone(desired_caps_1.desiredCapConstraints);
61
58
  this.locatorStrategies = [
62
59
  'xpath',
63
60
  'tag name',
@@ -70,6 +67,15 @@ class GeckoDriver extends driver_1.BaseDriver {
70
67
  ];
71
68
  this.resetState();
72
69
  }
70
+ get gecko() {
71
+ if (!this._gecko) {
72
+ throw new Error('Gecko driver is not initialized');
73
+ }
74
+ return this._gecko;
75
+ }
76
+ get bidiProxyUrl() {
77
+ return this._bidiProxyUrl;
78
+ }
73
79
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
74
80
  proxyActive(sessionId) {
75
81
  return this.isProxyActive;
@@ -80,12 +86,6 @@ class GeckoDriver extends driver_1.BaseDriver {
80
86
  canProxy() {
81
87
  return true;
82
88
  }
83
- get gecko() {
84
- if (!this._gecko) {
85
- throw new Error('Gecko driver is not initialized');
86
- }
87
- return this._gecko;
88
- }
89
89
  validateDesiredCaps(caps) {
90
90
  const isValid = super.validateDesiredCaps(caps);
91
91
  if (!isValid) {
@@ -120,9 +120,6 @@ class GeckoDriver extends driver_1.BaseDriver {
120
120
  this.isProxyActive = true;
121
121
  return [sessionId, processedCaps];
122
122
  }
123
- get bidiProxyUrl() {
124
- return this._bidiProxyUrl;
125
- }
126
123
  async deleteSession() {
127
124
  this.log.info('Ending Gecko Driver session');
128
125
  await this._gecko?.stop();
@@ -137,7 +134,7 @@ class GeckoDriver extends driver_1.BaseDriver {
137
134
  }
138
135
  _extractWebSocketUrl(response) {
139
136
  const webSocketUrl = response?.capabilities?.webSocketUrl;
140
- if (lodash_1.default.isEmpty(webSocketUrl) || !lodash_1.default.isString(webSocketUrl)) {
137
+ if (typeof webSocketUrl !== 'string' || webSocketUrl.length === 0) {
141
138
  return null;
142
139
  }
143
140
  try {
@@ -151,7 +148,6 @@ class GeckoDriver extends driver_1.BaseDriver {
151
148
  return null;
152
149
  }
153
150
  }
154
- findElOrEls = findCommands.findElOrEls;
155
151
  }
156
152
  exports.GeckoDriver = GeckoDriver;
157
153
  exports.default = GeckoDriver;
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"gecko.d.ts","sourceRoot":"","sources":["../../lib/gecko.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,OAAO,EAAS,MAAM,eAAe,CAAC;AAM9C,OAAO,KAAK,EAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAWpF,eAAO,MAAM,iBAAiB,cAAc,CAAC;AAE7C,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,UAAW,SAAQ,OAAO;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IAEV,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAE,QAAe;CASnF;AAyJD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAEvB,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY;IAMjD,IAAI,KAAK,IAAI,UAAU,CAKtB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAEK,KAAK,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAkEhF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAqB5B;AAED,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"gecko.d.ts","sourceRoot":"","sources":["../../lib/gecko.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,OAAO,EAAS,MAAM,eAAe,CAAC;AAM9C,OAAO,KAAK,EAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAWpF,eAAO,MAAM,iBAAiB,cAAc,CAAC;AAE7C,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAwID,qBAAa,UAAW,SAAQ,OAAO;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IAEV,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAE,QAAe;CASnF;AA2BD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAEvB,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY;IAMjD,IAAI,KAAK,IAAI,UAAU,CAKtB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAEK,KAAK,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAkEhF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAqB5B;AAED,eAAe,iBAAiB,CAAC"}
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.GeckoDriverServer = exports.GeckoProxy = exports.GECKO_SERVER_HOST = void 0;
7
- const lodash_1 = __importDefault(require("lodash"));
8
7
  const node_os_1 = __importDefault(require("node:os"));
9
8
  const node_path_1 = __importDefault(require("node:path"));
10
9
  const driver_1 = require("appium/driver");
@@ -20,17 +19,6 @@ const GECKO_PORT_RANGE = [5200, 5300];
20
19
  const GECKO_SERVER_GUARD = support_1.util.getLockFileGuard(node_path_1.default.resolve(node_os_1.default.tmpdir(), 'gecko_server_guard.lock'), { timeout: 5, tryRecovery: true });
21
20
  const DEFAULT_MARIONETTE_PORT = 2828;
22
21
  exports.GECKO_SERVER_HOST = '127.0.0.1';
23
- class GeckoProxy extends driver_1.JWProxy {
24
- didProcessExit;
25
- async proxyCommand(url, method, body = null) {
26
- if (this.didProcessExit) {
27
- throw new driver_1.errors.InvalidContextError(`'${method} ${url}' cannot be proxied to Gecko Driver server because ` +
28
- 'its process is not running (probably crashed). Check the Appium log for more details');
29
- }
30
- return await super.proxyCommand(url, method, body);
31
- }
32
- }
33
- exports.GeckoProxy = GeckoProxy;
34
22
  class GeckoDriverProcess {
35
23
  noReset;
36
24
  verbosity;
@@ -78,7 +66,7 @@ class GeckoDriverProcess {
78
66
  const driverBin = await this.resolveGeckodriverBinary();
79
67
  const args = [];
80
68
  /* #region Options */
81
- switch (lodash_1.default.toLower(this.verbosity)) {
69
+ switch (this.verbosity?.toLowerCase()) {
82
70
  case constants_1.VERBOSITY.DEBUG:
83
71
  args.push('-v');
84
72
  break;
@@ -89,13 +77,13 @@ class GeckoDriverProcess {
89
77
  if (this.noReset) {
90
78
  args.push('--connect-existing');
91
79
  // https://firefox-source-docs.mozilla.org/testing/geckodriver/Flags.html#code-connect-existing-code
92
- if (lodash_1.default.isNil(this.marionettePort)) {
80
+ if (this.marionettePort == null) {
93
81
  this.log.info(`'marionettePort' capability value is not provided while 'noReset' is enabled`);
94
82
  this.log.info(`Assigning 'marionettePort' to the default value (${DEFAULT_MARIONETTE_PORT})`);
95
83
  }
96
84
  args.push('--marionette-port', `${this.marionettePort ?? DEFAULT_MARIONETTE_PORT}`);
97
85
  }
98
- else if (!lodash_1.default.isNil(this.marionettePort)) {
86
+ else if (this.marionettePort != null) {
99
87
  args.push('--marionette-port', `${this.marionettePort}`);
100
88
  }
101
89
  /* #endregion */
@@ -105,7 +93,7 @@ class GeckoDriverProcess {
105
93
  }
106
94
  this._proc = new teen_process_1.SubProcess(driverBin, args);
107
95
  this._proc.on('output', (stdout, stderr) => {
108
- const line = lodash_1.default.trim(stdout || stderr);
96
+ const line = (stdout || stderr).trim();
109
97
  if (line) {
110
98
  this.log.debug(`[${GD_BINARY}] ${line}`);
111
99
  }
@@ -146,9 +134,27 @@ class GeckoDriverProcess {
146
134
  }
147
135
  }
148
136
  }
137
+ class GeckoProxy extends driver_1.JWProxy {
138
+ didProcessExit;
139
+ async proxyCommand(url, method, body = null) {
140
+ if (this.didProcessExit) {
141
+ throw new driver_1.errors.InvalidContextError(`'${method} ${url}' cannot be proxied to Gecko Driver server because ` +
142
+ 'its process is not running (probably crashed). Check the Appium log for more details');
143
+ }
144
+ return await super.proxyCommand(url, method, body);
145
+ }
146
+ }
147
+ exports.GeckoProxy = GeckoProxy;
149
148
  const RUNNING_PROCESS_IDS = [];
149
+ const removeRunningProcessId = (pid) => {
150
+ let idx = RUNNING_PROCESS_IDS.indexOf(pid);
151
+ while (idx >= 0) {
152
+ RUNNING_PROCESS_IDS.splice(idx, 1);
153
+ idx = RUNNING_PROCESS_IDS.indexOf(pid);
154
+ }
155
+ };
150
156
  process.once('exit', () => {
151
- if (lodash_1.default.isEmpty(RUNNING_PROCESS_IDS)) {
157
+ if (RUNNING_PROCESS_IDS.length === 0) {
152
158
  return;
153
159
  }
154
160
  const command = support_1.system.isWindows()
@@ -230,7 +236,7 @@ class GeckoDriverServer {
230
236
  const pid = this._process.proc?.pid;
231
237
  if (pid) {
232
238
  RUNNING_PROCESS_IDS.push(pid);
233
- this._process.proc?.on('exit', () => void lodash_1.default.pull(RUNNING_PROCESS_IDS, pid));
239
+ this._process.proc?.on('exit', () => removeRunningProcessId(pid));
234
240
  }
235
241
  return (await this._proxy.command('/session', 'POST', {
236
242
  capabilities: {
@@ -1 +1 @@
1
- {"version":3,"file":"gecko.js","sourceRoot":"","sources":["../../lib/gecko.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gecko.js","sourceRoot":"","sources":["../../lib/gecko.ts"],"names":[],"mappings":"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"}
@@ -14,9 +14,9 @@ export declare function mkdirp(p: string): Promise<void>;
14
14
  /**
15
15
  * Extract a specific file from a tar.gz archive
16
16
  */
17
- export declare function extractFileFromTarGz(srcAcrhive: string, fileToExtract: string, dstPath: string): Promise<void>;
17
+ export declare function extractFileFromTarGz(srcArchive: string, fileToExtract: string, dstPath: string): Promise<void>;
18
18
  /**
19
19
  * Extract a specific file from a zip archive
20
20
  */
21
- export declare function extractFileFromZip(srcAcrhive: string, fileToExtract: string, dstPath: string): Promise<void>;
21
+ export declare function extractFileFromZip(srcArchive: string, fileToExtract: string, dstPath: string): Promise<void>;
22
22
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAKhD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAkBpE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnF;AAED;;GAEG;AACH,wBAAsB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAErD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAqBf"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAKhD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAkBpE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnF;AAED;;GAEG;AACH,wBAAsB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAErD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAqBf"}
@@ -8,7 +8,6 @@ exports.downloadToFile = downloadToFile;
8
8
  exports.mkdirp = mkdirp;
9
9
  exports.extractFileFromTarGz = extractFileFromTarGz;
10
10
  exports.extractFileFromZip = extractFileFromZip;
11
- const lodash_1 = __importDefault(require("lodash"));
12
11
  const support_1 = require("appium/support");
13
12
  const tar_stream_1 = __importDefault(require("tar-stream"));
14
13
  const node_zlib_1 = __importDefault(require("node:zlib"));
@@ -21,7 +20,7 @@ const GECKO_CAP_PREFIXES = ['moz:'];
21
20
  */
22
21
  function formatCapsForServer(caps) {
23
22
  const result = {};
24
- for (const [name, value] of lodash_1.default.toPairs(caps)) {
23
+ for (const [name, value] of Object.entries(caps)) {
25
24
  if (GECKO_CAP_PREFIXES.some((prefix) => name.startsWith(prefix)) ||
26
25
  driver_1.STANDARD_CAPS.has(name)) {
27
26
  result[name] = value;
@@ -32,7 +31,7 @@ function formatCapsForServer(caps) {
32
31
  }
33
32
  if (result.platformName) {
34
33
  // Geckodriver only supports lowercase platform names
35
- result.platformName = lodash_1.default.toLower(result.platformName);
34
+ result.platformName = result.platformName.toLowerCase();
36
35
  }
37
36
  return result;
38
37
  }
@@ -51,7 +50,7 @@ async function mkdirp(p) {
51
50
  /**
52
51
  * Extract a specific file from a tar.gz archive
53
52
  */
54
- async function extractFileFromTarGz(srcAcrhive, fileToExtract, dstPath) {
53
+ async function extractFileFromTarGz(srcArchive, fileToExtract, dstPath) {
55
54
  const chunks = [];
56
55
  const extract = tar_stream_1.default.extract();
57
56
  const extractPromise = new bluebird_1.default((resolve, reject) => {
@@ -77,20 +76,20 @@ async function extractFileFromTarGz(srcAcrhive, fileToExtract, dstPath) {
77
76
  }
78
77
  }
79
78
  else {
80
- return reject(new Error(`The file '${fileToExtract}' could not be found in the '${srcAcrhive}' archive`));
79
+ return reject(new Error(`The file '${fileToExtract}' could not be found in the '${srcArchive}' archive`));
81
80
  }
82
81
  resolve();
83
82
  });
84
83
  });
85
- support_1.fs.createReadStream(srcAcrhive).pipe(node_zlib_1.default.createGunzip()).pipe(extract);
84
+ support_1.fs.createReadStream(srcArchive).pipe(node_zlib_1.default.createGunzip()).pipe(extract);
86
85
  await extractPromise;
87
86
  }
88
87
  /**
89
88
  * Extract a specific file from a zip archive
90
89
  */
91
- async function extractFileFromZip(srcAcrhive, fileToExtract, dstPath) {
90
+ async function extractFileFromZip(srcArchive, fileToExtract, dstPath) {
92
91
  let didFindEntry = false;
93
- await support_1.zip.readEntries(srcAcrhive, async ({ entry, extractEntryTo }) => {
92
+ await support_1.zip.readEntries(srcArchive, async ({ entry, extractEntryTo }) => {
94
93
  if (didFindEntry || entry.fileName !== fileToExtract) {
95
94
  return;
96
95
  }
@@ -105,7 +104,7 @@ async function extractFileFromZip(srcAcrhive, fileToExtract, dstPath) {
105
104
  }
106
105
  });
107
106
  if (!didFindEntry) {
108
- throw new Error(`The file '${fileToExtract}' could not be found in the '${srcAcrhive}' archive`);
107
+ throw new Error(`The file '${fileToExtract}' could not be found in the '${srcArchive}' archive`);
109
108
  }
110
109
  }
111
110
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,16 @@
1
1
  import {util} from 'appium/support';
2
2
  import type {GeckoDriver} from '../driver';
3
3
 
4
- // This is needed to make lookup by image working
4
+ /**
5
+ * Find element(s) by given strategy and selector. If context is provided, search will be performed within the context element.
6
+ * This is needed to make lookup by image working.
7
+ * @this GeckoDriver
8
+ * @param strategy - The strategy to use for finding the element(s) (e.g., 'css selector', 'xpath', etc.)
9
+ * @param selector - The selector to use for finding the element(s)
10
+ * @param mult - Whether to find multiple elements (true) or a single element (false)
11
+ * @param context - Optional context element ID to search within
12
+ * @returns A promise that resolves to the found element(s)
13
+ */
5
14
  export async function findElOrEls(
6
15
  this: GeckoDriver,
7
16
  strategy: string,
package/lib/driver.ts CHANGED
@@ -1,4 +1,3 @@
1
- import _ from 'lodash';
2
1
  import type {
3
2
  RouteMatcher,
4
3
  DefaultCreateSessionResult,
@@ -27,14 +26,17 @@ export class GeckoDriver
27
26
  extends BaseDriver<GeckoConstraints, StringRecord>
28
27
  implements ExternalDriver<GeckoConstraints, string, StringRecord>
29
28
  {
29
+ public proxyReqRes: (...args: any) => any;
30
+
31
+ findElOrEls = findCommands.findElOrEls;
32
+
30
33
  private isProxyActive: boolean = false;
31
34
  private _gecko: GeckoDriverServer | null = null;
32
35
  private _bidiProxyUrl: string | null = null;
33
- public proxyReqRes: (...args: any) => any;
34
36
 
35
37
  constructor(opts: InitialOpts = {} as InitialOpts) {
36
38
  super(opts);
37
- this.desiredCapConstraints = _.cloneDeep(desiredCapConstraints);
39
+ this.desiredCapConstraints = structuredClone(desiredCapConstraints);
38
40
  this.locatorStrategies = [
39
41
  'xpath',
40
42
  'tag name',
@@ -48,6 +50,17 @@ export class GeckoDriver
48
50
  this.resetState();
49
51
  }
50
52
 
53
+ get gecko(): GeckoDriverServer {
54
+ if (!this._gecko) {
55
+ throw new Error('Gecko driver is not initialized');
56
+ }
57
+ return this._gecko;
58
+ }
59
+
60
+ override get bidiProxyUrl(): string | null {
61
+ return this._bidiProxyUrl;
62
+ }
63
+
51
64
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
52
65
  override proxyActive(sessionId?: string): boolean {
53
66
  return this.isProxyActive;
@@ -61,13 +74,6 @@ export class GeckoDriver
61
74
  return true;
62
75
  }
63
76
 
64
- get gecko(): GeckoDriverServer {
65
- if (!this._gecko) {
66
- throw new Error('Gecko driver is not initialized');
67
- }
68
- return this._gecko;
69
- }
70
-
71
77
  override validateDesiredCaps(caps: any): caps is any {
72
78
  const isValid = super.validateDesiredCaps(caps);
73
79
  if (!isValid) {
@@ -112,10 +118,6 @@ export class GeckoDriver
112
118
  return [sessionId, processedCaps];
113
119
  }
114
120
 
115
- override get bidiProxyUrl(): string | null {
116
- return this._bidiProxyUrl;
117
- }
118
-
119
121
  override async deleteSession(): Promise<void> {
120
122
  this.log.info('Ending Gecko Driver session');
121
123
  await this._gecko?.stop();
@@ -133,7 +135,7 @@ export class GeckoDriver
133
135
 
134
136
  private _extractWebSocketUrl(response: StringRecord): string | null {
135
137
  const webSocketUrl = (response?.capabilities as any)?.webSocketUrl;
136
- if (_.isEmpty(webSocketUrl) || !_.isString(webSocketUrl)) {
138
+ if (typeof webSocketUrl !== 'string' || webSocketUrl.length === 0) {
137
139
  return null;
138
140
  }
139
141
  try {
@@ -146,8 +148,6 @@ export class GeckoDriver
146
148
  return null;
147
149
  }
148
150
  }
149
-
150
- findElOrEls = findCommands.findElOrEls;
151
151
  }
152
152
 
153
153
  export default GeckoDriver;