@appium/base-driver 9.12.2 → 9.13.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.
@@ -115,7 +115,7 @@ export declare class DriverCore<const C extends Constraints, Settings extends St
115
115
  * not
116
116
  *
117
117
  * @param name - name of feature/command
118
- * @deprecated
118
+ * @deprecated Use {@link assertFeatureEnabled} instead
119
119
  */
120
120
  ensureFeatureEnabled(name: string): void;
121
121
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../lib/basedriver/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../lib/basedriver/core.ts"],"names":[],"mappings":"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"}
@@ -51,6 +51,8 @@ const helpers_1 = __importStar(require("./helpers"));
51
51
  const bidi_commands_1 = require("../protocol/bidi-commands");
52
52
  const NEW_COMMAND_TIMEOUT_MS = 60 * 1000;
53
53
  const ON_UNEXPECTED_SHUTDOWN_EVENT = 'onUnexpectedShutdown';
54
+ const ALL_DRIVERS_MATCH = '*';
55
+ const FEATURE_NAME_SEPARATOR = ':';
54
56
  class DriverCore {
55
57
  constructor(opts = {}, shouldValidateCaps = true) {
56
58
  this._log = support_1.logger.getLogger(helpers_1.default.generateDriverLogPrefix(this));
@@ -187,12 +189,29 @@ class DriverCore {
187
189
  * @param name - name of feature/command
188
190
  */
189
191
  isFeatureEnabled(name) {
192
+ // automationName comparison is case-insensitive,
193
+ // while feature name is case-sensitive
194
+ const currentAutomationName = lodash_1.default.toLower(this.opts.automationName);
195
+ const parseFullName = (fullName) => {
196
+ const separatorPos = fullName.indexOf(FEATURE_NAME_SEPARATOR);
197
+ if (separatorPos < 0) {
198
+ // This should not happen as we preprocess corresponding server arguments in advance
199
+ throw new Error(`The full feature name must include both the driver name/wildcard and the feature ` +
200
+ `name split by a colon, got '${fullName}' instead`);
201
+ }
202
+ return [
203
+ lodash_1.default.toLower(fullName.substring(0, separatorPos)),
204
+ fullName.substring(separatorPos + 1)
205
+ ];
206
+ };
207
+ const parseFullNames = (fullNames) => fullNames.map(parseFullName);
208
+ const matches = ([automationName, featureName]) => [currentAutomationName, ALL_DRIVERS_MATCH].includes(automationName) && featureName === name;
190
209
  // if we have explicitly denied this feature, return false immediately
191
- if (this.denyInsecure && lodash_1.default.includes(this.denyInsecure, name)) {
210
+ if (!lodash_1.default.isEmpty(this.denyInsecure) && parseFullNames(this.denyInsecure).some(matches)) {
192
211
  return false;
193
212
  }
194
213
  // if we specifically have allowed the feature, return true
195
- if (this.allowInsecure && lodash_1.default.includes(this.allowInsecure, name)) {
214
+ if (!lodash_1.default.isEmpty(this.allowInsecure) && parseFullNames(this.allowInsecure).some(matches)) {
196
215
  return true;
197
216
  }
198
217
  // otherwise, if we've globally allowed insecure features and not denied
@@ -208,7 +227,7 @@ class DriverCore {
208
227
  * not
209
228
  *
210
229
  * @param name - name of feature/command
211
- * @deprecated
230
+ * @deprecated Use {@link assertFeatureEnabled} instead
212
231
  */
213
232
  ensureFeatureEnabled(name) {
214
233
  this.assertFeatureEnabled(name);
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../lib/basedriver/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../lib/basedriver/core.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,9 @@
1
- declare const MAX_LOG_BODY_LENGTH = 1024;
2
- declare const MJSONWP_ELEMENT_KEY = "ELEMENT";
3
- declare const W3C_ELEMENT_KEY: "element-6066-11e4-a52e-4f735466cecf";
4
- declare const PROTOCOLS: {
1
+ export declare const MAX_LOG_BODY_LENGTH = 1024;
2
+ export declare const MJSONWP_ELEMENT_KEY = "ELEMENT";
3
+ export declare const W3C_ELEMENT_KEY: "element-6066-11e4-a52e-4f735466cecf";
4
+ export declare const PROTOCOLS: {
5
5
  readonly W3C: "W3C";
6
6
  readonly MJSONWP: "MJSONWP";
7
7
  };
8
- declare const DEFAULT_BASE_PATH = "";
9
- export { MAX_LOG_BODY_LENGTH, MJSONWP_ELEMENT_KEY, W3C_ELEMENT_KEY, PROTOCOLS, DEFAULT_BASE_PATH };
8
+ export declare const DEFAULT_BASE_PATH = "";
10
9
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":"AASA,QAAA,MAAM,mBAAmB,OAAO,CAAC;AACjC,QAAA,MAAM,mBAAmB,YAAY,CAAC;AACtC,QAAA,MAAM,eAAe,uCAAkC,CAAC;AACxD,QAAA,MAAM,SAAS;;;CAGgC,CAAC;AAGhD,QAAA,MAAM,iBAAiB,KAAK,CAAC;AAE7B,OAAO,EAAC,mBAAmB,EAAE,mBAAmB,EAAE,eAAe,EAAE,SAAS,EAAE,iBAAiB,EAAC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAC7C,eAAO,MAAM,eAAe,uCAAkC,CAAC;AAC/D,eAAO,MAAM,SAAS;;;CAGyB,CAAC;AAGhD,eAAO,MAAM,iBAAiB,KAAK,CAAC"}
@@ -8,18 +8,13 @@ const support_1 = require("@appium/support");
8
8
  // server feature. Example rule:
9
9
  // {"pattern": "(.{1,150}).*", "flags": "s", "replacer": "$1"}
10
10
  // ^ cuts all log records to maximum 150 chars
11
- const MAX_LOG_BODY_LENGTH = 1024;
12
- exports.MAX_LOG_BODY_LENGTH = MAX_LOG_BODY_LENGTH;
13
- const MJSONWP_ELEMENT_KEY = 'ELEMENT';
14
- exports.MJSONWP_ELEMENT_KEY = MJSONWP_ELEMENT_KEY;
15
- const W3C_ELEMENT_KEY = support_1.util.W3C_WEB_ELEMENT_IDENTIFIER;
16
- exports.W3C_ELEMENT_KEY = W3C_ELEMENT_KEY;
17
- const PROTOCOLS = {
11
+ exports.MAX_LOG_BODY_LENGTH = 1024;
12
+ exports.MJSONWP_ELEMENT_KEY = 'ELEMENT';
13
+ exports.W3C_ELEMENT_KEY = support_1.util.W3C_WEB_ELEMENT_IDENTIFIER;
14
+ exports.PROTOCOLS = {
18
15
  W3C: 'W3C',
19
16
  MJSONWP: 'MJSONWP',
20
17
  };
21
- exports.PROTOCOLS = PROTOCOLS;
22
18
  // Before Appium 2.0, this default value was '/wd/hub' by historical reasons.
23
- const DEFAULT_BASE_PATH = '';
24
- exports.DEFAULT_BASE_PATH = DEFAULT_BASE_PATH;
19
+ exports.DEFAULT_BASE_PATH = '';
25
20
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":";;;AAAA,6CAAqC;AAGrC,oDAAoD;AACpD,wCAAwC;AACxC,kEAAkE;AAClE,gCAAgC;AAChC,+DAA+D;AAC/D,8CAA8C;AAC9C,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAWzB,kDAAmB;AAV3B,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAUT,kDAAmB;AAThD,MAAM,eAAe,GAAG,cAAI,CAAC,0BAA0B,CAAC;AASN,0CAAe;AARjE,MAAM,SAAS,GAAG;IAChB,GAAG,EAAE,KAAK;IACV,OAAO,EAAE,SAAS;CAC2B,CAAC;AAKmB,8BAAS;AAH5E,6EAA6E;AAC7E,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAEiD,8CAAiB"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":";;;AAAA,6CAAqC;AAGrC,oDAAoD;AACpD,wCAAwC;AACxC,kEAAkE;AAClE,gCAAgC;AAChC,+DAA+D;AAC/D,8CAA8C;AACjC,QAAA,mBAAmB,GAAG,IAAI,CAAC;AAC3B,QAAA,mBAAmB,GAAG,SAAS,CAAC;AAChC,QAAA,eAAe,GAAG,cAAI,CAAC,0BAA0B,CAAC;AAClD,QAAA,SAAS,GAAG;IACvB,GAAG,EAAE,KAAK;IACV,OAAO,EAAE,SAAS;CAC2B,CAAC;AAEhD,6EAA6E;AAChE,QAAA,iBAAiB,GAAG,EAAE,CAAC"}
@@ -20,7 +20,11 @@ import AsyncLock from 'async-lock';
20
20
  import _ from 'lodash';
21
21
  import {EventEmitter} from 'node:events';
22
22
  import os from 'node:os';
23
- import {DEFAULT_BASE_PATH, PROTOCOLS, MAX_LOG_BODY_LENGTH} from '../constants';
23
+ import {
24
+ DEFAULT_BASE_PATH,
25
+ PROTOCOLS,
26
+ MAX_LOG_BODY_LENGTH,
27
+ } from '../constants';
24
28
  import {errors} from '../protocol';
25
29
  import DeviceSettings from './device-settings';
26
30
  import helpers, {BASEDRIVER_VER} from './helpers';
@@ -30,6 +34,9 @@ const NEW_COMMAND_TIMEOUT_MS = 60 * 1000;
30
34
 
31
35
  const ON_UNEXPECTED_SHUTDOWN_EVENT = 'onUnexpectedShutdown';
32
36
 
37
+ const ALL_DRIVERS_MATCH = '*';
38
+ const FEATURE_NAME_SEPARATOR = ':';
39
+
33
40
  export class DriverCore<const C extends Constraints, Settings extends StringRecord = StringRecord>
34
41
  implements Core<C, Settings>
35
42
  {
@@ -258,13 +265,35 @@ export class DriverCore<const C extends Constraints, Settings extends StringReco
258
265
  * @param name - name of feature/command
259
266
  */
260
267
  isFeatureEnabled(name: string): boolean {
268
+ // automationName comparison is case-insensitive,
269
+ // while feature name is case-sensitive
270
+ const currentAutomationName = _.toLower(this.opts.automationName);
271
+
272
+ const parseFullName = (fullName: string) => {
273
+ const separatorPos = fullName.indexOf(FEATURE_NAME_SEPARATOR);
274
+ if (separatorPos < 0) {
275
+ // This should not happen as we preprocess corresponding server arguments in advance
276
+ throw new Error(
277
+ `The full feature name must include both the driver name/wildcard and the feature ` +
278
+ `name split by a colon, got '${fullName}' instead`
279
+ );
280
+ }
281
+ return [
282
+ _.toLower(fullName.substring(0, separatorPos)),
283
+ fullName.substring(separatorPos + 1)
284
+ ];
285
+ };
286
+ const parseFullNames = (fullNames: string[]) => fullNames.map(parseFullName);
287
+ const matches = ([automationName, featureName]: [string, string]) =>
288
+ [currentAutomationName, ALL_DRIVERS_MATCH].includes(automationName) && featureName === name;
289
+
261
290
  // if we have explicitly denied this feature, return false immediately
262
- if (this.denyInsecure && _.includes(this.denyInsecure, name)) {
291
+ if (!_.isEmpty(this.denyInsecure) && parseFullNames(this.denyInsecure).some(matches)) {
263
292
  return false;
264
293
  }
265
294
 
266
295
  // if we specifically have allowed the feature, return true
267
- if (this.allowInsecure && _.includes(this.allowInsecure, name)) {
296
+ if (!_.isEmpty(this.allowInsecure) && parseFullNames(this.allowInsecure).some(matches)) {
268
297
  return true;
269
298
  }
270
299
 
@@ -283,7 +312,7 @@ export class DriverCore<const C extends Constraints, Settings extends StringReco
283
312
  * not
284
313
  *
285
314
  * @param name - name of feature/command
286
- * @deprecated
315
+ * @deprecated Use {@link assertFeatureEnabled} instead
287
316
  */
288
317
  ensureFeatureEnabled(name: string) {
289
318
  this.assertFeatureEnabled(name);
package/lib/constants.ts CHANGED
@@ -7,15 +7,13 @@ import {Protocol} from '@appium/types';
7
7
  // server feature. Example rule:
8
8
  // {"pattern": "(.{1,150}).*", "flags": "s", "replacer": "$1"}
9
9
  // ^ cuts all log records to maximum 150 chars
10
- const MAX_LOG_BODY_LENGTH = 1024;
11
- const MJSONWP_ELEMENT_KEY = 'ELEMENT';
12
- const W3C_ELEMENT_KEY = util.W3C_WEB_ELEMENT_IDENTIFIER;
13
- const PROTOCOLS = {
10
+ export const MAX_LOG_BODY_LENGTH = 1024;
11
+ export const MJSONWP_ELEMENT_KEY = 'ELEMENT';
12
+ export const W3C_ELEMENT_KEY = util.W3C_WEB_ELEMENT_IDENTIFIER;
13
+ export const PROTOCOLS = {
14
14
  W3C: 'W3C',
15
15
  MJSONWP: 'MJSONWP',
16
16
  } as const satisfies Record<Protocol, Protocol>;
17
17
 
18
18
  // Before Appium 2.0, this default value was '/wd/hub' by historical reasons.
19
- const DEFAULT_BASE_PATH = '';
20
-
21
- export {MAX_LOG_BODY_LENGTH, MJSONWP_ELEMENT_KEY, W3C_ELEMENT_KEY, PROTOCOLS, DEFAULT_BASE_PATH};
19
+ export const DEFAULT_BASE_PATH = '';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@appium/base-driver",
3
- "version": "9.12.2",
3
+ "version": "9.13.0",
4
4
  "description": "Base driver class for Appium drivers",
5
5
  "keywords": [
6
6
  "automation",
@@ -44,8 +44,8 @@
44
44
  "test:types": "tsd"
45
45
  },
46
46
  "dependencies": {
47
- "@appium/support": "^5.1.7",
48
- "@appium/types": "^0.22.1",
47
+ "@appium/support": "^5.1.8",
48
+ "@appium/types": "^0.22.2",
49
49
  "@colors/colors": "1.6.0",
50
50
  "@types/async-lock": "1.4.2",
51
51
  "@types/bluebird": "3.5.42",
@@ -67,7 +67,7 @@
67
67
  "path-to-regexp": "8.2.0",
68
68
  "serve-favicon": "2.5.0",
69
69
  "source-map-support": "0.5.21",
70
- "type-fest": "4.29.0",
70
+ "type-fest": "4.29.1",
71
71
  "validate.js": "0.13.1"
72
72
  },
73
73
  "optionalDependencies": {
@@ -80,7 +80,7 @@
80
80
  "publishConfig": {
81
81
  "access": "public"
82
82
  },
83
- "gitHead": "abc9ebb9e8011cc606a63f1caa126bc8c61fe2a5",
83
+ "gitHead": "8daf5e123ac14c8325acf504fb33eb28e1a3dd78",
84
84
  "tsd": {
85
85
  "directory": "test/types"
86
86
  }