@axe-core/watcher 1.3.0 → 1.4.0-next.46f8e2c3

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 CHANGED
@@ -2,4 +2,4 @@
2
2
 
3
3
  Using this module requires an account on the [axe Developer Hub](https://axe.deque.com/axe-watcher/projects). In order to get a trial account, please [contact Deque](https://www.deque.com/company/contact/). For information on how to use this module, please follow the instructions on the [axe Developer Hub](https://axe.deque.com/axe-watcher/projects) projects page.
4
4
 
5
- [For support on axe-core, axe Watcher and accessibility. Join the axe Communiity Slack](https://accessibility.deque.com/axe-community)
5
+ For support on axe-core, axe Watcher, and accessibility, please join the [axe community Slack](https://accessibility.deque.com/axe-community).
@@ -1,8 +1,12 @@
1
+ interface AnalyzeParams {
2
+ __UserRequestedAnalyze?: boolean;
3
+ }
1
4
  declare abstract class Controller {
2
- protected abstract executeScript(fn: string | (() => Promise<void>)): Promise<void>;
5
+ protected abstract executeScript(fn: string | ((...args: unknown[]) => Promise<void>), ...args: unknown[]): Promise<void>;
6
+ protected isStopped: boolean;
3
7
  start(): Promise<void>;
4
8
  stop(): Promise<void>;
5
- analyze(): Promise<void>;
9
+ analyze({ __UserRequestedAnalyze }?: AnalyzeParams): Promise<void>;
6
10
  /** Flush all axe-core results by sending them to the server. */
7
11
  flush(): Promise<void>;
8
12
  }
@@ -49,6 +49,7 @@ var updateAutoAnalyze = function (val) {
49
49
  };
50
50
  var Controller = /** @class */ (function () {
51
51
  function Controller() {
52
+ this.isStopped = false;
52
53
  }
53
54
  Controller.prototype.start = function () {
54
55
  return __awaiter(this, void 0, void 0, function () {
@@ -56,6 +57,7 @@ var Controller = /** @class */ (function () {
56
57
  switch (_a.label) {
57
58
  case 0:
58
59
  updateAutoAnalyze(true);
60
+ this.isStopped = false;
59
61
  return [4 /*yield*/, this.executeScript(function () {
60
62
  return new Promise(function (resolve) {
61
63
  var event = new CustomEvent('axe:start-auto-mode');
@@ -80,6 +82,7 @@ var Controller = /** @class */ (function () {
80
82
  switch (_a.label) {
81
83
  case 0:
82
84
  updateAutoAnalyze(false);
85
+ this.isStopped = true;
83
86
  return [4 /*yield*/, this.executeScript(function () {
84
87
  return new Promise(function (resolve) {
85
88
  var event = new CustomEvent('axe:stop-auto-mode');
@@ -98,25 +101,31 @@ var Controller = /** @class */ (function () {
98
101
  });
99
102
  });
100
103
  };
101
- Controller.prototype.analyze = function () {
104
+ Controller.prototype.analyze = function (_a) {
105
+ var _b = _a === void 0 ? {} : _a, _c = _b.__UserRequestedAnalyze, __UserRequestedAnalyze = _c === void 0 ? true : _c;
102
106
  return __awaiter(this, void 0, void 0, function () {
103
- return __generator(this, function (_a) {
104
- switch (_a.label) {
105
- case 0: return [4 /*yield*/, this.executeScript(function () {
106
- return new Promise(function (resolve) {
107
- var event = new CustomEvent('axe:manual-mode-analyze', {
108
- detail: { userRequestedAnalyze: true }
107
+ return __generator(this, function (_d) {
108
+ switch (_d.label) {
109
+ case 0:
110
+ // If the user didn't request an analyze, and we're in manual mode, don't do anything.
111
+ if (this.isStopped && !__UserRequestedAnalyze) {
112
+ return [2 /*return*/];
113
+ }
114
+ return [4 /*yield*/, this.executeScript(function (userRequestedAnalyze) {
115
+ return new Promise(function (resolve) {
116
+ var event = new CustomEvent('axe:manual-mode-analyze', {
117
+ detail: { userRequestedAnalyze: userRequestedAnalyze }
118
+ });
119
+ var fn = function () {
120
+ window.removeEventListener('axe:manual-mode-analyze-done', fn);
121
+ resolve();
122
+ };
123
+ window.addEventListener('axe:manual-mode-analyze-done', fn);
124
+ window.dispatchEvent(event);
109
125
  });
110
- var fn = function () {
111
- window.removeEventListener('axe:manual-mode-analyze-done', fn);
112
- resolve();
113
- };
114
- window.addEventListener('axe:manual-mode-analyze-done', fn);
115
- window.dispatchEvent(event);
116
- });
117
- })];
126
+ }, __UserRequestedAnalyze)];
118
127
  case 1:
119
- _a.sent();
128
+ _d.sent();
120
129
  return [2 /*return*/];
121
130
  }
122
131
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Controller.js","sourceRoot":"","sources":["../src/Controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAmB;AACnB,+BAAoD;AAEpD,IAAM,iBAAiB,GAAG,UAAC,GAAY;IACrC,IAAM,YAAY,GAAG,YAAE,CAAC,YAAY,CAAC,kCAA2B,EAAE,OAAO,CAAC,CAAA;IAC1E,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAC1C,SAAS,CAAC,YAAY,GAAG,GAAG,CAAA;IAC5B,YAAE,CAAC,aAAa,CAAC,kCAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAA;AAC1E,CAAC,CAAA;AAED;IAAA;IAiEA,CAAC;IA5Dc,0BAAK,GAAlB;;;;;wBACE,iBAAiB,CAAC,IAAI,CAAC,CAAA;wBACvB,qBAAM,IAAI,CAAC,aAAa,CAAC;gCACvB,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO;oCACxB,IAAM,KAAK,GAAG,IAAI,WAAW,CAAC,qBAAqB,CAAC,CAAA;oCACpD,IAAM,EAAE,GAAG;wCACT,MAAM,CAAC,mBAAmB,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAA;wCAC1D,OAAO,EAAE,CAAA;oCACX,CAAC,CAAA;oCACD,MAAM,CAAC,gBAAgB,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAA;oCACvD,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;gCAC7B,CAAC,CAAC,CAAA;4BACJ,CAAC,CAAC,EAAA;;wBAVF,SAUE,CAAA;;;;;KACH;IAEY,yBAAI,GAAjB;;;;;wBACE,iBAAiB,CAAC,KAAK,CAAC,CAAA;wBACxB,qBAAM,IAAI,CAAC,aAAa,CAAC;gCACvB,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO;oCACxB,IAAM,KAAK,GAAG,IAAI,WAAW,CAAC,oBAAoB,CAAC,CAAA;oCACnD,IAAM,EAAE,GAAG;wCACT,MAAM,CAAC,mBAAmB,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;wCACzD,OAAO,EAAE,CAAA;oCACX,CAAC,CAAA;oCACD,MAAM,CAAC,gBAAgB,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;oCACtD,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;gCAC7B,CAAC,CAAC,CAAA;4BACJ,CAAC,CAAC,EAAA;;wBAVF,SAUE,CAAA;;;;;KACH;IAEY,4BAAO,GAApB;;;;4BACE,qBAAM,IAAI,CAAC,aAAa,CAAC;4BACvB,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO;gCACxB,IAAM,KAAK,GAAG,IAAI,WAAW,CAAC,yBAAyB,EAAE;oCACvD,MAAM,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE;iCACvC,CAAC,CAAA;gCACF,IAAM,EAAE,GAAG;oCACT,MAAM,CAAC,mBAAmB,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAA;oCAC9D,OAAO,EAAE,CAAA;gCACX,CAAC,CAAA;gCACD,MAAM,CAAC,gBAAgB,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAA;gCAC3D,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;4BAC7B,CAAC,CAAC,CAAA;wBACJ,CAAC,CAAC,EAAA;;wBAZF,SAYE,CAAA;;;;;KACH;IAED,gEAAgE;IACnD,0BAAK,GAAlB;;;;4BACE,qBAAM,IAAI,CAAC,aAAa,CAAC;4BACvB,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO;gCACxB,IAAM,EAAE,GAAG;oCACT,MAAM,CAAC,mBAAmB,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;oCAC/C,OAAO,EAAE,CAAA;gCACX,CAAC,CAAA;gCACD,MAAM,CAAC,gBAAgB,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;gCAC5C,IAAM,KAAK,GAAG,IAAI,WAAW,CAAC,iBAAiB,CAAC,CAAA;gCAChD,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;4BAC7B,CAAC,CAAC,CAAA;wBACJ,CAAC,CAAC,EAAA;;wBAVF,SAUE,CAAA;;;;;KACH;IACH,iBAAC;AAAD,CAAC,AAjED,IAiEC;AAED,kBAAe,UAAU,CAAA"}
1
+ {"version":3,"file":"Controller.js","sourceRoot":"","sources":["../src/Controller.ts"],"names":[],"mappings":"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"}
package/dist/cypress.js CHANGED
@@ -21,6 +21,15 @@ var __rest = (this && this.__rest) || function (s, e) {
21
21
  }
22
22
  return t;
23
23
  };
24
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
25
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
26
+ if (ar || !(i in from)) {
27
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
28
+ ar[i] = from[i];
29
+ }
30
+ }
31
+ return to.concat(ar || Array.prototype.slice.call(from));
32
+ };
24
33
  Object.defineProperty(exports, "__esModule", { value: true });
25
34
  exports.wrapCy = exports.WRAPPED_METHODS = exports.cypressConfig = void 0;
26
35
  var uuid_1 = require("uuid");
@@ -48,6 +57,12 @@ var cypressConfig = function (config) {
48
57
  ]
49
58
  });
50
59
  return __assign(__assign({}, userConfig), { e2e: __assign(__assign({}, userConfig.e2e), { setupNodeEvents: function (on) {
60
+ var _a, _b;
61
+ var args = [];
62
+ for (var _i = 1; _i < arguments.length; _i++) {
63
+ args[_i - 1] = arguments[_i];
64
+ }
65
+ (_b = (_a = userConfig.e2e) === null || _a === void 0 ? void 0 : _a.setupNodeEvents) === null || _b === void 0 ? void 0 : _b.call.apply(_b, __spreadArray([_a, on], args, false));
51
66
  on('before:browser:launch', function (browser, launchOptions) {
52
67
  var _a;
53
68
  // We only support Chrome.
@@ -92,12 +107,14 @@ var wrapCy = function (cy) {
92
107
  var _loop_1 = function (method) {
93
108
  var old = proto[method];
94
109
  proto[method] = function () {
110
+ var _this = this;
95
111
  var params = [];
96
112
  for (var _i = 0; _i < arguments.length; _i++) {
97
113
  params[_i] = arguments[_i];
98
114
  }
99
- var c = old.apply(this, params);
100
- return c.axeAnalyze({ __UserRequestedAnalyze: false });
115
+ return old.apply(this, params).then(function ($element) {
116
+ return _this.axeAnalyze({ __UserRequestedAnalyze: false }).then(function () { return $element; });
117
+ });
101
118
  };
102
119
  };
103
120
  for (var _i = 0, WRAPPED_METHODS_1 = exports.WRAPPED_METHODS; _i < WRAPPED_METHODS_1.length; _i++) {
@@ -1 +1 @@
1
- {"version":3,"file":"cypress.js","sourceRoot":"","sources":["../src/cypress.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,6BAAiC;AACjC,+BAMe;AAEf;;;;GAIG;AAEI,IAAM,aAAa,GAAG,UAC3B,MAA6C;IAErC,IAAA,GAAG,GAAoB,MAAM,IAA1B,EAAK,UAAU,UAAK,MAAM,EAA/B,OAAsB,CAAF,CAAW;IAErC,IAAA,qBAAc,wBACT,GAAG;QACN,+CAA+C;QAC/C,kFAAkF;QAClF,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,IAAA,SAAI,GAAE;QAClC,sDAAsD;QACtD,OAAO,EAAE,IAAI,IACb,CAAA;IACF,IAAA,oBAAa,EAAC;QACZ,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE;YACb,0BAA0B;YAC1B,4BAA4B;YAC5B,4BAA4B;YAC5B,uBAAuB;SACxB;KACF,CAAC,CAAA;IAEF,6BACK,UAAU,KACb,GAAG,wBACE,UAAU,CAAC,GAAG,KACjB,eAAe,YAAC,EAAE;gBAChB,EAAE,CAAC,uBAAuB,EAAE,UAAC,OAAO,EAAE,aAAa;;oBACjD,0BAA0B;oBAC1B,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE;wBAC7B,IAAI,OAAO,CAAC,UAAU,EAAE;4BACtB,MAAM,IAAI,gCAAyB,EAAE,CAAA;yBACtC;wBAED,sBAAsB;wBACtB,CAAA,KAAA,aAAa,CAAC,IAAI,CAAA,CAAC,IAAI,WAAI,oBAAa,EAAC;qBAC1C;oBAED,OAAO,aAAa,CAAA;gBACtB,CAAC,CAAC,CAAA;YACJ,CAAC,OAEJ;AACH,CAAC,CAAA;AA5CY,QAAA,aAAa,iBA4CzB;AAED,qDAAqD;AACxC,QAAA,eAAe,GAAoC;IAC9D,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,UAAU;IACV,OAAO;IACP,IAAI;IACJ,QAAQ;IACR,QAAQ;IACR,gBAAgB;IAChB,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,MAAM;IACN,SAAS;IACT,OAAO;IACP,MAAM;CACP,CAAA;AAED,gGAAgG;AACzF,IAAM,MAAM,GAAG,UAAC,EAAc;IACnC,4EAA4E;IAC5E,gGAAgG;IAChG,IAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;4BAErC,MAAM;QACf,IAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;QACzB,KAAK,CAAC,MAAM,CAAC,GAAG;YAAU,gBAAoB;iBAApB,UAAoB,EAApB,qBAAoB,EAApB,IAAoB;gBAApB,2BAAoB;;YAC5C,IAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YACjC,OAAO,CAAC,CAAC,UAAU,CAAC,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAA;QACxD,CAAC,CAAA;;IALH,KAAqB,UAAe,EAAf,oBAAA,uBAAe,EAAf,6BAAe,EAAf,IAAe;QAA/B,IAAM,MAAM,wBAAA;gBAAN,MAAM;KAMhB;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAdY,QAAA,MAAM,UAclB"}
1
+ {"version":3,"file":"cypress.js","sourceRoot":"","sources":["../src/cypress.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6BAAiC;AACjC,+BAMe;AAEf;;;;GAIG;AAEI,IAAM,aAAa,GAAG,UAC3B,MAA6C;IAErC,IAAA,GAAG,GAAoB,MAAM,IAA1B,EAAK,UAAU,UAAK,MAAM,EAA/B,OAAsB,CAAF,CAAW;IAErC,IAAA,qBAAc,wBACT,GAAG;QACN,+CAA+C;QAC/C,kFAAkF;QAClF,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,IAAA,SAAI,GAAE;QAClC,sDAAsD;QACtD,OAAO,EAAE,IAAI,IACb,CAAA;IACF,IAAA,oBAAa,EAAC;QACZ,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE;YACb,0BAA0B;YAC1B,4BAA4B;YAC5B,4BAA4B;YAC5B,uBAAuB;SACxB;KACF,CAAC,CAAA;IAEF,6BACK,UAAU,KACb,GAAG,wBACE,UAAU,CAAC,GAAG,KACjB,eAAe,YAAC,EAAE;;gBAAE,cAAO;qBAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;oBAAP,6BAAO;;gBACzB,MAAA,MAAA,UAAU,CAAC,GAAG,0CAAE,eAAe,4EAAG,EAAE,GAAK,IAAI,SAAC,CAAA;gBAE9C,EAAE,CAAC,uBAAuB,EAAE,UAAC,OAAO,EAAE,aAAa;;oBACjD,0BAA0B;oBAC1B,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE;wBAC7B,IAAI,OAAO,CAAC,UAAU,EAAE;4BACtB,MAAM,IAAI,gCAAyB,EAAE,CAAA;yBACtC;wBAED,sBAAsB;wBACtB,CAAA,KAAA,aAAa,CAAC,IAAI,CAAA,CAAC,IAAI,WAAI,oBAAa,EAAC;qBAC1C;oBAED,OAAO,aAAa,CAAA;gBACtB,CAAC,CAAC,CAAA;YACJ,CAAC,OAEJ;AACH,CAAC,CAAA;AA9CY,QAAA,aAAa,iBA8CzB;AAED,qDAAqD;AACxC,QAAA,eAAe,GAAoC;IAC9D,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,UAAU;IACV,OAAO;IACP,IAAI;IACJ,QAAQ;IACR,QAAQ;IACR,gBAAgB;IAChB,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,MAAM;IACN,SAAS;IACT,OAAO;IACP,MAAM;CACP,CAAA;AAED,gGAAgG;AACzF,IAAM,MAAM,GAAG,UAAC,EAAc;IACnC,4EAA4E;IAC5E,gGAAgG;IAChG,IAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;4BAErC,MAAM;QACf,IAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;QACzB,KAAK,CAAC,MAAM,CAAC,GAAG;YAAA,iBAMf;YANyB,gBAAoB;iBAApB,UAAoB,EAApB,qBAAoB,EAApB,IAAoB;gBAApB,2BAAoB;;YAC5C,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,UAAC,QAAiB;gBACpD,OAAO,KAAI,CAAC,UAAU,CAAC,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAC5D,cAAM,OAAA,QAAQ,EAAR,CAAQ,CACf,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;;IARH,KAAqB,UAAe,EAAf,oBAAA,uBAAe,EAAf,6BAAe,EAAf,IAAe;QAA/B,IAAM,MAAM,wBAAA;gBAAN,MAAM;KAShB;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAjBY,QAAA,MAAM,UAiBlB"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /*! Copyright Deque 2021-2022 All Rights Reserved */
2
2
  export { puppeteerConfig, PuppeteerController } from './puppeteer';
3
- export { wdioConfig, wdioTestRunner, WdioController } from './wdio';
3
+ export { wdioConfig, wdioTestRunner, WdioController, wrapWdio } from './wdio';
4
4
  export { webdriverConfig, WebdriverController } from './webdriver';
5
5
  export { playwrightConfig, PlaywrightController } from './playwright';
6
6
  export { cypressConfig, wrapCy } from './cypress';
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*! Copyright Deque 2021-2022 All Rights Reserved */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.wrapCy = exports.cypressConfig = exports.PlaywrightController = exports.playwrightConfig = exports.WebdriverController = exports.webdriverConfig = exports.WdioController = exports.wdioTestRunner = exports.wdioConfig = exports.PuppeteerController = exports.puppeteerConfig = void 0;
4
+ exports.wrapCy = exports.cypressConfig = exports.PlaywrightController = exports.playwrightConfig = exports.WebdriverController = exports.webdriverConfig = exports.wrapWdio = exports.WdioController = exports.wdioTestRunner = exports.wdioConfig = exports.PuppeteerController = exports.puppeteerConfig = void 0;
5
5
  var puppeteer_1 = require("./puppeteer");
6
6
  Object.defineProperty(exports, "puppeteerConfig", { enumerable: true, get: function () { return puppeteer_1.puppeteerConfig; } });
7
7
  Object.defineProperty(exports, "PuppeteerController", { enumerable: true, get: function () { return puppeteer_1.PuppeteerController; } });
@@ -9,6 +9,7 @@ var wdio_1 = require("./wdio");
9
9
  Object.defineProperty(exports, "wdioConfig", { enumerable: true, get: function () { return wdio_1.wdioConfig; } });
10
10
  Object.defineProperty(exports, "wdioTestRunner", { enumerable: true, get: function () { return wdio_1.wdioTestRunner; } });
11
11
  Object.defineProperty(exports, "WdioController", { enumerable: true, get: function () { return wdio_1.WdioController; } });
12
+ Object.defineProperty(exports, "wrapWdio", { enumerable: true, get: function () { return wdio_1.wrapWdio; } });
12
13
  var webdriver_1 = require("./webdriver");
13
14
  Object.defineProperty(exports, "webdriverConfig", { enumerable: true, get: function () { return webdriver_1.webdriverConfig; } });
14
15
  Object.defineProperty(exports, "WebdriverController", { enumerable: true, get: function () { return webdriver_1.WebdriverController; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,yCAAkE;AAAzD,4GAAA,eAAe,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAC7C,+BAAmE;AAA1D,kGAAA,UAAU,OAAA;AAAE,sGAAA,cAAc,OAAA;AAAE,sGAAA,cAAc,OAAA;AACnD,yCAAkE;AAAzD,4GAAA,eAAe,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAC7C,2CAAqE;AAA5D,8GAAA,gBAAgB,OAAA;AAAE,kHAAA,oBAAoB,OAAA;AAC/C,qCAAiD;AAAxC,wGAAA,aAAa,OAAA;AAAE,iGAAA,MAAM,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,yCAAkE;AAAzD,4GAAA,eAAe,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAC7C,+BAA6E;AAApE,kGAAA,UAAU,OAAA;AAAE,sGAAA,cAAc,OAAA;AAAE,sGAAA,cAAc,OAAA;AAAE,gGAAA,QAAQ,OAAA;AAC7D,yCAAkE;AAAzD,4GAAA,eAAe,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAC7C,2CAAqE;AAA5D,8GAAA,gBAAgB,OAAA;AAAE,kHAAA,oBAAoB,OAAA;AAC/C,qCAAiD;AAAxC,wGAAA,aAAa,OAAA;AAAE,iGAAA,MAAM,OAAA"}
@@ -10,5 +10,5 @@ export declare function playwrightConfig(opts: Configuration & LaunchOptions): L
10
10
  export declare class PlaywrightController extends Controller {
11
11
  private driver;
12
12
  constructor(driver: Page);
13
- protected executeScript(fn: string | (() => Promise<void>)): Promise<void>;
13
+ protected executeScript(fn: string | (() => Promise<void>), ...args: unknown[]): Promise<void>;
14
14
  }
@@ -103,10 +103,14 @@ var PlaywrightController = /** @class */ (function (_super) {
103
103
  return _this;
104
104
  }
105
105
  PlaywrightController.prototype.executeScript = function (fn) {
106
+ var args = [];
107
+ for (var _i = 1; _i < arguments.length; _i++) {
108
+ args[_i - 1] = arguments[_i];
109
+ }
106
110
  return __awaiter(this, void 0, void 0, function () {
107
111
  return __generator(this, function (_a) {
108
112
  switch (_a.label) {
109
- case 0: return [4 /*yield*/, this.driver.evaluate(fn)];
113
+ case 0: return [4 /*yield*/, this.driver.evaluate(fn, args)];
110
114
  case 1:
111
115
  _a.sent();
112
116
  return [2 /*return*/];
@@ -1 +1 @@
1
- {"version":3,"file":"playwright.js","sourceRoot":"","sources":["../src/playwright.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+BAKe;AACf,4DAAqC;AAErC;;;;GAIG;AAEH,SAAgB,gBAAgB,CAC9B,IAAmC;IAE3B,IAAA,GAAG,GAAgB,IAAI,IAApB,EAAK,MAAM,UAAK,IAAI,EAAzB,OAAkB,CAAF,CAAS;IACzB,IAAA,KAAc,MAAM,KAAX,EAAT,IAAI,mBAAG,EAAE,KAAA,CAAW;IAC1B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAa,CAAC,CAAA;IAEjC,6BACK,MAAM,KACT,QAAQ,EAAE,KAAK,EACf,IAAI,MAAA,IACL;AACH,CAAC;AAlBD,4CAkBC;AAED;IAA0C,wCAAU;IAGlD,8BAAY,MAAY;QAAxB,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,4CAAa,GAA7B,UACE,EAAkC;;;;4BAElC,qBAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAA;;wBAA9B,SAA8B,CAAA;;;;;KAC/B;IACH,2BAAC;AAAD,CAAC,AAbD,CAA0C,oBAAU,GAanD;AAbY,oDAAoB"}
1
+ {"version":3,"file":"playwright.js","sourceRoot":"","sources":["../src/playwright.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+BAKe;AACf,4DAAqC;AAErC;;;;GAIG;AAEH,SAAgB,gBAAgB,CAC9B,IAAmC;IAE3B,IAAA,GAAG,GAAgB,IAAI,IAApB,EAAK,MAAM,UAAK,IAAI,EAAzB,OAAkB,CAAF,CAAS;IACzB,IAAA,KAAc,MAAM,KAAX,EAAT,IAAI,mBAAG,EAAE,KAAA,CAAW;IAC1B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAa,CAAC,CAAA;IAEjC,6BACK,MAAM,KACT,QAAQ,EAAE,KAAK,EACf,IAAI,MAAA,IACL;AACH,CAAC;AAlBD,4CAkBC;AAED;IAA0C,wCAAU;IAGlD,8BAAY,MAAY;QAAxB,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,4CAAa,GAA7B,UACE,EAAkC;QAClC,cAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,6BAAkB;;;;;4BAElB,qBAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,EAAA;;wBAApC,SAAoC,CAAA;;;;;KACrC;IACH,2BAAC;AAAD,CAAC,AAdD,CAA0C,oBAAU,GAcnD;AAdY,oDAAoB"}
@@ -11,6 +11,6 @@ export declare function puppeteerConfig(opts: Configuration & Options): Options;
11
11
  export declare class PuppeteerController extends Controller {
12
12
  private driver;
13
13
  constructor(driver: Page);
14
- protected executeScript(fn: string | (() => Promise<void>)): Promise<void>;
14
+ protected executeScript(fn: string | (() => Promise<void>), ...args: unknown[]): Promise<void>;
15
15
  }
16
16
  export {};
package/dist/puppeteer.js CHANGED
@@ -72,6 +72,15 @@ var __rest = (this && this.__rest) || function (s, e) {
72
72
  }
73
73
  return t;
74
74
  };
75
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
76
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
77
+ if (ar || !(i in from)) {
78
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
79
+ ar[i] = from[i];
80
+ }
81
+ }
82
+ return to.concat(ar || Array.prototype.slice.call(from));
83
+ };
75
84
  var __importDefault = (this && this.__importDefault) || function (mod) {
76
85
  return (mod && mod.__esModule) ? mod : { "default": mod };
77
86
  };
@@ -103,12 +112,17 @@ var PuppeteerController = /** @class */ (function (_super) {
103
112
  return _this;
104
113
  }
105
114
  PuppeteerController.prototype.executeScript = function (fn) {
115
+ var args = [];
116
+ for (var _i = 1; _i < arguments.length; _i++) {
117
+ args[_i - 1] = arguments[_i];
118
+ }
106
119
  return __awaiter(this, void 0, void 0, function () {
107
- return __generator(this, function (_a) {
108
- switch (_a.label) {
109
- case 0: return [4 /*yield*/, this.driver.evaluate(fn)];
120
+ var _a;
121
+ return __generator(this, function (_b) {
122
+ switch (_b.label) {
123
+ case 0: return [4 /*yield*/, (_a = this.driver).evaluate.apply(_a, __spreadArray([fn], args, false))];
110
124
  case 1:
111
- _a.sent();
125
+ _b.sent();
112
126
  return [2 /*return*/];
113
127
  }
114
128
  });
@@ -1 +1 @@
1
- {"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,+BAKe;AACf,4DAAqC;AAMrC;;;;GAIG;AAEH,SAAgB,eAAe,CAAC,IAA6B;IACnD,IAAA,GAAG,GAAgB,IAAI,IAApB,EAAK,MAAM,UAAK,IAAI,EAAzB,OAAkB,CAAF,CAAS;IACzB,IAAA,KAAc,MAAM,KAAX,EAAT,IAAI,mBAAG,EAAE,KAAA,CAAW;IAC1B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAa,CAAC,CAAA;IAEjC,6BACK,MAAM,KACT,QAAQ,EAAE,KAAK,EACf,IAAI,MAAA,IACL;AACH,CAAC;AAhBD,0CAgBC;AAED;IAAyC,uCAAU;IAGjD,6BAAY,MAAY;QAAxB,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,2CAAa,GAA7B,UACE,EAAkC;;;;4BAElC,qBAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAA;;wBAA9B,SAA8B,CAAA;;;;;KAC/B;IACH,0BAAC;AAAD,CAAC,AAbD,CAAyC,oBAAU,GAalD;AAbY,kDAAmB"}
1
+ {"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,+BAKe;AACf,4DAAqC;AAMrC;;;;GAIG;AAEH,SAAgB,eAAe,CAAC,IAA6B;IACnD,IAAA,GAAG,GAAgB,IAAI,IAApB,EAAK,MAAM,UAAK,IAAI,EAAzB,OAAkB,CAAF,CAAS;IACzB,IAAA,KAAc,MAAM,KAAX,EAAT,IAAI,mBAAG,EAAE,KAAA,CAAW;IAC1B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAa,CAAC,CAAA;IAEjC,6BACK,MAAM,KACT,QAAQ,EAAE,KAAK,EACf,IAAI,MAAA,IACL;AACH,CAAC;AAhBD,0CAgBC;AAED;IAAyC,uCAAU;IAGjD,6BAAY,MAAY;QAAxB,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,2CAAa,GAA7B,UACE,EAAkC;QAClC,cAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,6BAAkB;;;;;;4BAElB,qBAAM,CAAA,KAAA,IAAI,CAAC,MAAM,CAAA,CAAC,QAAQ,0BAAC,EAAE,GAAK,IAAI,WAAC;;wBAAvC,SAAuC,CAAA;;;;;KACxC;IACH,0BAAC;AAAD,CAAC,AAdD,CAAyC,oBAAU,GAclD;AAdY,kDAAmB"}
package/dist/wdio.d.ts CHANGED
@@ -1,9 +1,8 @@
1
1
  import type { Options } from '@wdio/types';
2
+ import { Browser, BrowserCommandsType, ElementCommandsType } from 'webdriverio';
2
3
  import { Configuration } from './util';
3
4
  import Controller from './Controller';
4
- interface Browser {
5
- executeAsyncScript(script: string, args: object[]): void;
6
- }
5
+ declare type WdioBrowser = Browser<'async'> | Browser<'sync'>;
7
6
  interface WdioArg extends Configuration {
8
7
  options?: Options.WebDriver;
9
8
  }
@@ -16,7 +15,13 @@ export declare function wdioConfig(arg: WdioArg): Options.WebDriver;
16
15
  export declare function wdioTestRunner(axe: Configuration['axe'], config: Options.Testrunner): Options.Testrunner;
17
16
  export declare class WdioController extends Controller {
18
17
  private driver;
19
- constructor(driver: Browser);
20
- protected executeScript(fn: string | (() => Promise<void>)): Promise<void>;
18
+ constructor(driver: WdioBrowser);
19
+ protected executeScript(fn: string | (() => Promise<void>), ...args: unknown[]): Promise<void>;
21
20
  }
21
+ /** Webdriver `browser` methods. */
22
+ export declare const WRAPPED_BROWSER_METHODS: ReadonlyArray<keyof BrowserCommandsType>;
23
+ /** Wrapped `element` methods. */
24
+ export declare const WRAPPED_ELEMENT_METHODS: ReadonlyArray<keyof ElementCommandsType>;
25
+ /** Wrap the given WDIO `browser` object, ensuring axe-core analysis is run after each command. */
26
+ export declare const wrapWdio: (browser: WdioBrowser, controller: WdioController) => WdioBrowser;
22
27
  export {};
package/dist/wdio.js CHANGED
@@ -65,7 +65,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
65
65
  return (mod && mod.__esModule) ? mod : { "default": mod };
66
66
  };
67
67
  Object.defineProperty(exports, "__esModule", { value: true });
68
- exports.WdioController = exports.wdioTestRunner = exports.wdioConfig = void 0;
68
+ exports.wrapWdio = exports.WRAPPED_ELEMENT_METHODS = exports.WRAPPED_BROWSER_METHODS = exports.WdioController = exports.wdioTestRunner = exports.wdioConfig = void 0;
69
69
  var uuid_1 = require("uuid");
70
70
  var fs_1 = __importDefault(require("fs"));
71
71
  var util_1 = require("./util");
@@ -152,13 +152,17 @@ var WdioController = /** @class */ (function (_super) {
152
152
  return _this;
153
153
  }
154
154
  WdioController.prototype.executeScript = function (fn) {
155
+ var args = [];
156
+ for (var _i = 1; _i < arguments.length; _i++) {
157
+ args[_i - 1] = arguments[_i];
158
+ }
155
159
  return __awaiter(this, void 0, void 0, function () {
156
160
  var script;
157
161
  return __generator(this, function (_a) {
158
162
  switch (_a.label) {
159
163
  case 0:
160
- script = "\n const callback = arguments[arguments.length - 1];\n Promise.resolve()\n .then(".concat(fn, ")\n .then(callback);\n ");
161
- return [4 /*yield*/, this.driver.executeAsyncScript(script, [])];
164
+ script = "\n const callback = arguments[arguments.length - 1];\n Promise.resolve(...arguments)\n .then(".concat(fn, ")\n .then(callback);\n ");
165
+ return [4 /*yield*/, this.driver.executeAsync(script, args)];
162
166
  case 1:
163
167
  _a.sent();
164
168
  return [2 /*return*/];
@@ -169,4 +173,65 @@ var WdioController = /** @class */ (function (_super) {
169
173
  return WdioController;
170
174
  }(Controller_1.default));
171
175
  exports.WdioController = WdioController;
176
+ /** Webdriver `browser` methods. */
177
+ exports.WRAPPED_BROWSER_METHODS = [
178
+ 'reloadSession',
179
+ 'setWindowSize',
180
+ 'switchWindow',
181
+ 'touchAction',
182
+ 'newWindow',
183
+ 'pause',
184
+ 'url',
185
+ 'waitUntil'
186
+ ];
187
+ /** Wrapped `element` methods. */
188
+ exports.WRAPPED_ELEMENT_METHODS = [
189
+ 'addValue',
190
+ 'clearValue',
191
+ 'click',
192
+ 'doubleClick',
193
+ 'dragAndDrop',
194
+ 'moveTo',
195
+ 'scrollIntoView',
196
+ 'setValue',
197
+ 'touchAction',
198
+ 'waitForClickable',
199
+ 'waitForDisplayed',
200
+ 'waitForEnabled',
201
+ 'waitForExist',
202
+ 'waitUntil'
203
+ ];
204
+ /** Wrap the given WDIO `browser` object, ensuring axe-core analysis is run after each command. */
205
+ var wrapWdio = function (browser, controller) {
206
+ var wrapper = function (fn) {
207
+ var args = [];
208
+ for (var _i = 1; _i < arguments.length; _i++) {
209
+ args[_i - 1] = arguments[_i];
210
+ }
211
+ return __awaiter(void 0, void 0, void 0, function () {
212
+ var res;
213
+ return __generator(this, function (_a) {
214
+ switch (_a.label) {
215
+ case 0: return [4 /*yield*/, fn.apply(void 0, args)];
216
+ case 1:
217
+ res = _a.sent();
218
+ return [4 /*yield*/, controller.analyze({ __UserRequestedAnalyze: false })];
219
+ case 2:
220
+ _a.sent();
221
+ return [2 /*return*/, res];
222
+ }
223
+ });
224
+ });
225
+ };
226
+ for (var _i = 0, WRAPPED_BROWSER_METHODS_1 = exports.WRAPPED_BROWSER_METHODS; _i < WRAPPED_BROWSER_METHODS_1.length; _i++) {
227
+ var method = WRAPPED_BROWSER_METHODS_1[_i];
228
+ browser.overwriteCommand(method, wrapper);
229
+ }
230
+ for (var _a = 0, WRAPPED_ELEMENT_METHODS_1 = exports.WRAPPED_ELEMENT_METHODS; _a < WRAPPED_ELEMENT_METHODS_1.length; _a++) {
231
+ var method = WRAPPED_ELEMENT_METHODS_1[_a];
232
+ browser.overwriteCommand(method, wrapper, true);
233
+ }
234
+ return browser;
235
+ };
236
+ exports.wrapWdio = wrapWdio;
172
237
  //# sourceMappingURL=wdio.js.map
package/dist/wdio.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"wdio.js","sourceRoot":"","sources":["../src/wdio.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6BAAiC;AACjC,0CAAmB;AACnB,+BAMe;AACf,4DAAqC;AAErC,IAAM,IAAI,GAAG;IACX,WAAW;AACb,CAAC,CAAA;AAUD;;;;GAIG;AAEH,SAAgB,UAAU,CAAC,GAAY;;IACrC,IAAA,qBAAc,EAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAEvB,iFAAiF;IACjF,uDAAuD;IACvD,IAAM,UAAU,GACd,CAAA,MAAC,MAAA,GAAG,CAAC,OAAO,0CAAE,YAAoB,0CAAG,oBAAoB,CAAC,KAAI,EAAE,CAAA;IAClE,IAAM,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,EAAE,CAAA;IAElC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;QAC/B,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,6BACK,GAAG,CAAC,OAAO,KACd,YAAY,wBACP,MAAA,GAAG,CAAC,OAAO,0CAAE,YAAY,KAC5B,WAAW,EAAE,QAAQ,EACrB,oBAAoB,EAAE;gBACpB,IAAI,EAAE,oBAAa,CAAC,MAAM,CAAC,IAAI,CAAC;aACjC,OAEJ;AACH,CAAC;AAvBD,gCAuBC;AAED,sFAAsF;AACtF,SAAgB,cAAc,CAC5B,GAAyB,EACzB,MAA0B;IAE1B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IACnB,IAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI;QAC1C;YACE,oBAAoB,EAAE;gBACpB,IAAI,EAAE,EAAE;aACT;SACF;KACF,CAAA;IACD,6CAA6C;IAC7C,IAAM,eAAe,GAAI,YAAoB,CAAC,CAAC,CAAC,CAAA;IAChD,eAAe,CAAC,oBAAoB,CAAC;QACnC,eAAe,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAA;IAC7C,IAAM,UAAU,GAAG,eAAe,CAAC,oBAAoB,CAAC,CAAA;IACxD,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,EAAE,CAAA;IACvC,IAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAA;IAE5B,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;QAC/B,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,UAAU,CAAC,IAAI,GAAG,oBAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAEpC,IAAA,KAAwC,MAAM,UAA9B,EAAhB,SAAS,mBAAG,IAAI,KAAA,EAAE,KAAsB,MAAM,WAAX,EAAjB,UAAU,mBAAG,IAAI,KAAA,CAAW;IAEtD,6BACK,MAAM,KACT,YAAY,cAAA;QACZ,0FAA0F;QAC1F,SAAS;YAAC,gBAAS;iBAAT,UAAS,EAAT,qBAAS,EAAT,IAAS;gBAAT,2BAAS;;YACjB,IAAM,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,IAAA,SAAI,GAAE,CAAA;YACzC,YAAE,CAAC,aAAa,CAAC,2BAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;YACzE,4DAA4D;YAC5D,OAAO,SAAS,eAAI,MAAM,EAAC;QAC7B,CAAC;QACD,kEAAkE;QAClE,UAAU;YAAC,gBAAS;iBAAT,UAAS,EAAT,qBAAS,EAAT,IAAS;gBAAT,2BAAS;;YAClB,IAAI;gBACF,YAAE,CAAC,UAAU,CAAC,2BAAoB,CAAC,CAAA;aACpC;YAAC,WAAM;gBACN,WAAW;aACZ;YACD,4DAA4D;YAC5D,OAAO,UAAU,eAAI,MAAM,EAAC;QAC9B,CAAC,IACF;AACH,CAAC;AAjDD,wCAiDC;AAED;IAAoC,kCAAU;IAG5C,wBAAY,MAAe;QAA3B,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,sCAAa,GAA7B,UACE,EAAkC;;;;;;wBAE5B,MAAM,GAAG,4GAGH,EAAE,sCAEb,CAAA;wBACD,qBAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,EAAA;;wBAAhD,SAAgD,CAAA;;;;;KACjD;IACH,qBAAC;AAAD,CAAC,AAnBD,CAAoC,oBAAU,GAmB7C;AAnBY,wCAAc"}
1
+ {"version":3,"file":"wdio.js","sourceRoot":"","sources":["../src/wdio.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,6 @@ export declare function webdriverConfig(arg: WebDriverArgs): Options;
14
14
  export declare class WebdriverController extends Controller {
15
15
  private driver;
16
16
  constructor(driver: WebDriver);
17
- protected executeScript(fn: string | (() => Promise<void>)): Promise<void>;
17
+ protected executeScript(fn: string | (() => Promise<void>), ...args: unknown[]): Promise<void>;
18
18
  }
19
19
  export {};
package/dist/webdriver.js CHANGED
@@ -50,6 +50,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
50
50
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
51
  }
52
52
  };
53
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
54
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
55
+ if (ar || !(i in from)) {
56
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
57
+ ar[i] = from[i];
58
+ }
59
+ }
60
+ return to.concat(ar || Array.prototype.slice.call(from));
61
+ };
53
62
  var __importDefault = (this && this.__importDefault) || function (mod) {
54
63
  return (mod && mod.__esModule) ? mod : { "default": mod };
55
64
  };
@@ -87,15 +96,20 @@ var WebdriverController = /** @class */ (function (_super) {
87
96
  return _this;
88
97
  }
89
98
  WebdriverController.prototype.executeScript = function (fn) {
99
+ var args = [];
100
+ for (var _i = 1; _i < arguments.length; _i++) {
101
+ args[_i - 1] = arguments[_i];
102
+ }
90
103
  return __awaiter(this, void 0, void 0, function () {
91
104
  var script;
92
- return __generator(this, function (_a) {
93
- switch (_a.label) {
105
+ var _a;
106
+ return __generator(this, function (_b) {
107
+ switch (_b.label) {
94
108
  case 0:
95
- script = "\n const callback = arguments[arguments.length - 1];\n Promise.resolve()\n .then(".concat(fn, ")\n .then(callback);\n ");
96
- return [4 /*yield*/, this.driver.executeAsyncScript(script)];
109
+ script = "\n const callback = arguments[arguments.length - 1];\n Promise.resolve(...arguments)\n .then(".concat(fn, ")\n .then(callback);\n ");
110
+ return [4 /*yield*/, (_a = this.driver).executeAsyncScript.apply(_a, __spreadArray([script], args, false))];
97
111
  case 1:
98
- _a.sent();
112
+ _b.sent();
99
113
  return [2 /*return*/];
100
114
  }
101
115
  });
@@ -1 +1 @@
1
- {"version":3,"file":"webdriver.js","sourceRoot":"","sources":["../src/webdriver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,+BAKe;AACf,4DAAqC;AAMrC;;;;GAIG;AAEH,SAAgB,eAAe,CAAC,GAAkB;;IAChD,gHAAgH;IAChH,8DAA8D;IAC9D,IAAM,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAA;IAE3C,IAAA,GAAG,GAAc,GAAG,IAAjB,EAAE,OAAO,GAAK,GAAG,QAAR,CAAQ;IAC5B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAM,IAAI,GAAY,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAA;IAC9D,IAAI,CAAC,YAAY,OAAjB,IAAI,EAAiB,oBAAa,EAAC;IAEnC,wEAAwE;IACxE,8DAA8D;IAC9D,IAAI,MAAA,MAAC,IAAY,aAAZ,IAAI,uBAAJ,IAAI,CAAU,QAAQ,0CAAE,IAAI,0CAAE,QAAQ,CAAC,UAAU,CAAC,EAAE;QACvD,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAlBD,0CAkBC;AAED;IAAyC,uCAAU;IAGjD,6BAAY,MAAiB;QAA7B,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,2CAAa,GAA7B,UACE,EAAkC;;;;;;wBAE5B,MAAM,GAAG,4GAGH,EAAE,sCAEb,CAAA;wBACD,qBAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAA;;wBAA5C,SAA4C,CAAA;;;;;KAC7C;IACH,0BAAC;AAAD,CAAC,AAnBD,CAAyC,oBAAU,GAmBlD;AAnBY,kDAAmB"}
1
+ {"version":3,"file":"webdriver.js","sourceRoot":"","sources":["../src/webdriver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,+BAKe;AACf,4DAAqC;AAMrC;;;;GAIG;AAEH,SAAgB,eAAe,CAAC,GAAkB;;IAChD,gHAAgH;IAChH,8DAA8D;IAC9D,IAAM,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAA;IAE3C,IAAA,GAAG,GAAc,GAAG,IAAjB,EAAE,OAAO,GAAK,GAAG,QAAR,CAAQ;IAC5B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAM,IAAI,GAAY,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAA;IAC9D,IAAI,CAAC,YAAY,OAAjB,IAAI,EAAiB,oBAAa,EAAC;IAEnC,wEAAwE;IACxE,8DAA8D;IAC9D,IAAI,MAAA,MAAC,IAAY,aAAZ,IAAI,uBAAJ,IAAI,CAAU,QAAQ,0CAAE,IAAI,0CAAE,QAAQ,CAAC,UAAU,CAAC,EAAE;QACvD,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAlBD,0CAkBC;AAED;IAAyC,uCAAU;IAGjD,6BAAY,MAAiB;QAA7B,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,2CAAa,GAA7B,UACE,EAAkC;QAClC,cAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,6BAAkB;;;;;;;;wBAEZ,MAAM,GAAG,wHAGH,EAAE,sCAEb,CAAA;wBACD,qBAAM,CAAA,KAAA,IAAI,CAAC,MAAM,CAAA,CAAC,kBAAkB,0BAAC,MAAM,GAAK,IAAI,WAAC;;wBAArD,SAAqD,CAAA;;;;;KACtD;IACH,0BAAC;AAAD,CAAC,AApBD,CAAyC,oBAAU,GAoBlD;AApBY,kDAAmB"}