@axe-core/watcher 2.0.0-next.3e4ae779 → 2.0.0-next.7e99a295

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.
@@ -8,138 +8,46 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
11
  Object.defineProperty(exports, "__esModule", { value: true });
39
12
  exports.wrapJSHandle = exports.wrapFrame = exports.wrapDialog = exports.wrapTouchscreen = exports.wrapMouse = exports.wrapKeyboard = exports.wrapElementHandle = exports.wrapTarget = exports.wrapPage = exports.wrapBrowser = exports.wrapBrowserContext = void 0;
40
- var util_1 = require("./util");
41
- var wrappedCallWithSideEffects = function (target, prop, controller) {
42
- return function () {
43
- var args = [];
44
- for (var _i = 0; _i < arguments.length; _i++) {
45
- args[_i] = arguments[_i];
46
- }
47
- return __awaiter(void 0, void 0, void 0, function () {
48
- var result;
49
- return __generator(this, function (_a) {
50
- switch (_a.label) {
51
- case 0: return [4 /*yield*/, target[prop].apply(target, args)];
52
- case 1:
53
- result = _a.sent();
54
- return [4 /*yield*/, controller.analyze()];
55
- case 2:
56
- _a.sent();
57
- return [2 /*return*/, result];
58
- }
59
- });
60
- });
61
- };
62
- };
63
- var wrapBrowserContext = function (browserContext, controller) {
13
+ const util_1 = require("./util");
14
+ const wrappedCallWithSideEffects = (target, prop, controller) => (...args) => __awaiter(void 0, void 0, void 0, function* () {
15
+ // @ts-expect-error TypeScript is angry.
16
+ const result = yield target[prop](...args);
17
+ yield controller.analyze();
18
+ return result;
19
+ });
20
+ const wrapBrowserContext = (browserContext, controller) => {
64
21
  if ((0, util_1.isWrapped)(browserContext)) {
65
22
  return browserContext;
66
23
  }
67
- var proxy = new Proxy(browserContext, {
68
- get: function (host, prop, receiver) {
69
- var _this = this;
24
+ const proxy = new Proxy(browserContext, {
25
+ get(host, prop, receiver) {
70
26
  switch (prop) {
71
27
  case 'newPage':
72
- return function () {
73
- var args = [];
74
- for (var _i = 0; _i < arguments.length; _i++) {
75
- args[_i] = arguments[_i];
76
- }
77
- return __awaiter(_this, void 0, void 0, function () {
78
- var page;
79
- return __generator(this, function (_a) {
80
- switch (_a.label) {
81
- case 0: return [4 /*yield*/, host.newPage.apply(host, args)];
82
- case 1:
83
- page = _a.sent();
84
- return [2 /*return*/, (0, exports.wrapPage)(page, controller)];
85
- }
86
- });
87
- });
88
- };
28
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
29
+ const page = yield host.newPage(...args);
30
+ return (0, exports.wrapPage)(page, controller);
31
+ });
89
32
  case 'pages':
90
- return function () {
91
- var args = [];
92
- for (var _i = 0; _i < arguments.length; _i++) {
93
- args[_i] = arguments[_i];
94
- }
95
- return __awaiter(_this, void 0, void 0, function () {
96
- var pages;
97
- return __generator(this, function (_a) {
98
- switch (_a.label) {
99
- case 0: return [4 /*yield*/, host.pages.apply(host, args)];
100
- case 1:
101
- pages = _a.sent();
102
- return [2 /*return*/, pages.map(function (p) { return (0, exports.wrapPage)(p, controller); })];
103
- }
104
- });
105
- });
106
- };
33
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
34
+ const pages = yield host.pages(...args);
35
+ return pages.map(p => (0, exports.wrapPage)(p, controller));
36
+ });
107
37
  case 'targets':
108
- return function () { return host.targets().map(function (t) { return (0, exports.wrapTarget)(t, controller); }); };
38
+ return () => host.targets().map(t => (0, exports.wrapTarget)(t, controller));
109
39
  case 'browser':
110
- return function () { return (0, exports.wrapBrowser)(host.browser(), controller); };
40
+ return () => (0, exports.wrapBrowser)(host.browser(), controller);
111
41
  case 'waitForTarget':
112
- return function () {
113
- var args = [];
114
- for (var _i = 0; _i < arguments.length; _i++) {
115
- args[_i] = arguments[_i];
116
- }
117
- return __awaiter(_this, void 0, void 0, function () {
118
- var target;
119
- return __generator(this, function (_a) {
120
- switch (_a.label) {
121
- case 0: return [4 /*yield*/, host.waitForTarget.apply(host, args)];
122
- case 1:
123
- target = _a.sent();
124
- return [2 /*return*/, (0, exports.wrapTarget)(target, controller)];
125
- }
126
- });
127
- });
128
- };
42
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
43
+ const target = yield host.waitForTarget(...args);
44
+ return (0, exports.wrapTarget)(target, controller);
45
+ });
129
46
  case 'close':
130
- return function () { return __awaiter(_this, void 0, void 0, function () {
131
- return __generator(this, function (_a) {
132
- switch (_a.label) {
133
- case 0: return [4 /*yield*/, controller.flush()];
134
- case 1:
135
- _a.sent();
136
- return [4 /*yield*/, host.close()];
137
- case 2:
138
- _a.sent();
139
- return [2 /*return*/];
140
- }
141
- });
142
- }); };
47
+ return () => __awaiter(this, void 0, void 0, function* () {
48
+ yield controller.flush();
49
+ yield host.close();
50
+ });
143
51
  default:
144
52
  return Reflect.get(host, prop, receiver);
145
53
  }
@@ -149,106 +57,46 @@ var wrapBrowserContext = function (browserContext, controller) {
149
57
  return proxy;
150
58
  };
151
59
  exports.wrapBrowserContext = wrapBrowserContext;
152
- var wrapBrowser = function (browser, controller) {
60
+ const wrapBrowser = (browser, controller) => {
153
61
  if ((0, util_1.isWrapped)(browser)) {
154
62
  return browser;
155
63
  }
156
- var proxy = new Proxy(browser, {
157
- get: function (host, prop, receiver) {
158
- var _this = this;
64
+ const proxy = new Proxy(browser, {
65
+ get(host, prop, receiver) {
159
66
  switch (prop) {
160
67
  case 'newPage':
161
- return function () {
162
- var args = [];
163
- for (var _i = 0; _i < arguments.length; _i++) {
164
- args[_i] = arguments[_i];
165
- }
166
- return __awaiter(_this, void 0, void 0, function () {
167
- var page;
168
- return __generator(this, function (_a) {
169
- switch (_a.label) {
170
- case 0: return [4 /*yield*/, host.newPage.apply(host, args)];
171
- case 1:
172
- page = _a.sent();
173
- return [2 /*return*/, (0, exports.wrapPage)(page, controller)];
174
- }
175
- });
176
- });
177
- };
68
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
69
+ const page = yield host.newPage(...args);
70
+ return (0, exports.wrapPage)(page, controller);
71
+ });
178
72
  case 'createIncognitoBrowserContext':
179
- return function () {
180
- var args = [];
181
- for (var _i = 0; _i < arguments.length; _i++) {
182
- args[_i] = arguments[_i];
183
- }
184
- return __awaiter(_this, void 0, void 0, function () {
185
- var context;
186
- return __generator(this, function (_a) {
187
- switch (_a.label) {
188
- case 0: return [4 /*yield*/, host.createIncognitoBrowserContext.apply(host, args)];
189
- case 1:
190
- context = _a.sent();
191
- return [2 /*return*/, (0, exports.wrapBrowserContext)(context, controller)];
192
- }
193
- });
194
- });
195
- };
73
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
74
+ const context = yield host.createIncognitoBrowserContext(...args);
75
+ return (0, exports.wrapBrowserContext)(context, controller);
76
+ });
196
77
  case 'defaultBrowserContext':
197
- return function () {
198
- return (0, exports.wrapBrowserContext)(host.defaultBrowserContext(), controller);
199
- };
78
+ return () => (0, exports.wrapBrowserContext)(host.defaultBrowserContext(), controller);
200
79
  case 'pages':
201
- return function () { return __awaiter(_this, void 0, void 0, function () {
202
- var pages;
203
- return __generator(this, function (_a) {
204
- switch (_a.label) {
205
- case 0: return [4 /*yield*/, host.pages()];
206
- case 1:
207
- pages = _a.sent();
208
- return [2 /*return*/, pages.map(function (p) { return (0, exports.wrapPage)(p, controller); })];
209
- }
210
- });
211
- }); };
80
+ return () => __awaiter(this, void 0, void 0, function* () {
81
+ const pages = yield host.pages();
82
+ return pages.map(p => (0, exports.wrapPage)(p, controller));
83
+ });
212
84
  case 'target':
213
- return function () { return (0, exports.wrapTarget)(host.target(), controller); };
85
+ return () => (0, exports.wrapTarget)(host.target(), controller);
214
86
  case 'targets':
215
- return function () { return host.targets().map(function (t) { return (0, exports.wrapTarget)(t, controller); }); };
87
+ return () => host.targets().map(t => (0, exports.wrapTarget)(t, controller));
216
88
  case 'waitForTarget':
217
- return function () {
218
- var args = [];
219
- for (var _i = 0; _i < arguments.length; _i++) {
220
- args[_i] = arguments[_i];
221
- }
222
- return __awaiter(_this, void 0, void 0, function () {
223
- var target;
224
- return __generator(this, function (_a) {
225
- switch (_a.label) {
226
- case 0: return [4 /*yield*/, host.waitForTarget.apply(host, args)];
227
- case 1:
228
- target = _a.sent();
229
- return [2 /*return*/, (0, exports.wrapTarget)(target, controller)];
230
- }
231
- });
232
- });
233
- };
89
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
90
+ const target = yield host.waitForTarget(...args);
91
+ return (0, exports.wrapTarget)(target, controller);
92
+ });
234
93
  case 'browserContexts':
235
- return function () {
236
- return host.browserContexts().map(function (c) { return (0, exports.wrapBrowserContext)(c, controller); });
237
- };
94
+ return () => host.browserContexts().map(c => (0, exports.wrapBrowserContext)(c, controller));
238
95
  case 'close':
239
- return function () { return __awaiter(_this, void 0, void 0, function () {
240
- return __generator(this, function (_a) {
241
- switch (_a.label) {
242
- case 0: return [4 /*yield*/, controller.flush()];
243
- case 1:
244
- _a.sent();
245
- return [4 /*yield*/, host.close()];
246
- case 2:
247
- _a.sent();
248
- return [2 /*return*/];
249
- }
250
- });
251
- }); };
96
+ return () => __awaiter(this, void 0, void 0, function* () {
97
+ yield controller.flush();
98
+ yield host.close();
99
+ });
252
100
  default:
253
101
  return Reflect.get(host, prop, receiver);
254
102
  }
@@ -258,57 +106,32 @@ var wrapBrowser = function (browser, controller) {
258
106
  return proxy;
259
107
  };
260
108
  exports.wrapBrowser = wrapBrowser;
261
- var wrapPage = function (page, controller) {
109
+ const wrapPage = (page, controller) => {
262
110
  if ((0, util_1.isWrapped)(page)) {
263
111
  return page;
264
112
  }
265
- var proxy = new Proxy(page, {
266
- get: function (host, prop, receiver) {
267
- var _this = this;
113
+ const proxy = new Proxy(page, {
114
+ get(host, prop, receiver) {
268
115
  switch (prop) {
269
116
  case 'browserContext':
270
- return function () { return (0, exports.wrapBrowserContext)(host.browserContext(), controller); };
117
+ return () => (0, exports.wrapBrowserContext)(host.browserContext(), controller);
271
118
  case '$':
272
119
  case 'addScriptTag':
273
120
  case 'addStyleTag':
274
121
  case 'waitForSelector':
275
122
  case 'waitForXPath':
276
- return function () {
277
- var args = [];
278
- for (var _i = 0; _i < arguments.length; _i++) {
279
- args[_i] = arguments[_i];
280
- }
281
- return __awaiter(_this, void 0, void 0, function () {
282
- var el;
283
- return __generator(this, function (_a) {
284
- switch (_a.label) {
285
- case 0: return [4 /*yield*/, host[prop].apply(host, args)];
286
- case 1:
287
- el = _a.sent();
288
- return [2 /*return*/, el ? (0, exports.wrapElementHandle)(el, controller) : null];
289
- }
290
- });
291
- });
292
- };
123
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
124
+ // @ts-expect-error TypeScript is angry.
125
+ const el = yield host[prop](...args);
126
+ return el ? (0, exports.wrapElementHandle)(el, controller) : null;
127
+ });
293
128
  case '$$':
294
129
  case '$x':
295
- return function () {
296
- var args = [];
297
- for (var _i = 0; _i < arguments.length; _i++) {
298
- args[_i] = arguments[_i];
299
- }
300
- return __awaiter(_this, void 0, void 0, function () {
301
- var els;
302
- return __generator(this, function (_a) {
303
- switch (_a.label) {
304
- case 0: return [4 /*yield*/, host[prop].apply(host, args)];
305
- case 1:
306
- els = _a.sent();
307
- return [2 /*return*/, els.map(function (el) { return (0, exports.wrapElementHandle)(el, controller); })];
308
- }
309
- });
310
- });
311
- };
130
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
131
+ // @ts-expect-error TypeScript is angry.
132
+ const els = yield host[prop](...args);
133
+ return els.map(el => (0, exports.wrapElementHandle)(el, controller));
134
+ });
312
135
  case 'authenticate':
313
136
  case 'bringToFront':
314
137
  case 'click':
@@ -328,11 +151,11 @@ var wrapPage = function (page, controller) {
328
151
  case 'type':
329
152
  return wrappedCallWithSideEffects(host, prop, controller);
330
153
  case 'browser':
331
- return function () { return (0, exports.wrapBrowser)(host.browser(), controller); };
154
+ return () => (0, exports.wrapBrowser)(host.browser(), controller);
332
155
  case 'target':
333
- return function () { return (0, exports.wrapTarget)(host.target(), controller); };
156
+ return () => (0, exports.wrapTarget)(host.target(), controller);
334
157
  case 'frames':
335
- return function () { return host.frames().map(function (f) { return (0, exports.wrapFrame)(f, controller); }); };
158
+ return () => host.frames().map(f => (0, exports.wrapFrame)(f, controller));
336
159
  case 'keyboard':
337
160
  return (0, exports.wrapKeyboard)(host.keyboard, controller);
338
161
  case 'mouse':
@@ -340,24 +163,12 @@ var wrapPage = function (page, controller) {
340
163
  case 'touchscreen':
341
164
  return (0, exports.wrapTouchscreen)(host.touchscreen, controller);
342
165
  case 'mainFrame':
343
- return function () { return (0, exports.wrapFrame)(host.mainFrame(), controller); };
166
+ return () => (0, exports.wrapFrame)(host.mainFrame(), controller);
344
167
  case 'close':
345
- return function () {
346
- var args = [];
347
- for (var _i = 0; _i < arguments.length; _i++) {
348
- args[_i] = arguments[_i];
349
- }
350
- return __awaiter(_this, void 0, void 0, function () {
351
- return __generator(this, function (_a) {
352
- switch (_a.label) {
353
- case 0: return [4 /*yield*/, controller.flush()];
354
- case 1:
355
- _a.sent();
356
- return [2 /*return*/, host.close.apply(host, args)];
357
- }
358
- });
359
- });
360
- };
168
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
169
+ yield controller.flush();
170
+ return host.close(...args);
171
+ });
361
172
  default:
362
173
  return Reflect.get(host, prop, receiver);
363
174
  }
@@ -367,35 +178,27 @@ var wrapPage = function (page, controller) {
367
178
  return proxy;
368
179
  };
369
180
  exports.wrapPage = wrapPage;
370
- var wrapTarget = function (target, controller) {
181
+ const wrapTarget = (target, controller) => {
371
182
  if ((0, util_1.isWrapped)(target)) {
372
183
  return target;
373
184
  }
374
- var proxy = new Proxy(target, {
375
- get: function (host, prop, receiver) {
376
- var _this = this;
185
+ const proxy = new Proxy(target, {
186
+ get(host, prop, receiver) {
377
187
  switch (prop) {
378
188
  case 'browserContext':
379
- return function () { return (0, exports.wrapBrowserContext)(host.browserContext(), controller); };
189
+ return () => (0, exports.wrapBrowserContext)(host.browserContext(), controller);
380
190
  case 'browser':
381
- return function () { return (0, exports.wrapBrowser)(host.browser(), controller); };
191
+ return () => (0, exports.wrapBrowser)(host.browser(), controller);
382
192
  case 'opener':
383
- return function () {
384
- var opener = host.opener();
193
+ return () => {
194
+ const opener = host.opener();
385
195
  return opener ? (0, exports.wrapTarget)(opener, controller) : null;
386
196
  };
387
197
  case 'page':
388
- return function () { return __awaiter(_this, void 0, void 0, function () {
389
- var page;
390
- return __generator(this, function (_a) {
391
- switch (_a.label) {
392
- case 0: return [4 /*yield*/, host.page()];
393
- case 1:
394
- page = _a.sent();
395
- return [2 /*return*/, page ? (0, exports.wrapPage)(page, controller) : null];
396
- }
397
- });
398
- }); };
198
+ return () => __awaiter(this, void 0, void 0, function* () {
199
+ const page = yield host.page();
200
+ return page ? (0, exports.wrapPage)(page, controller) : null;
201
+ });
399
202
  default:
400
203
  return Reflect.get(host, prop, receiver);
401
204
  }
@@ -405,86 +208,40 @@ var wrapTarget = function (target, controller) {
405
208
  return proxy;
406
209
  };
407
210
  exports.wrapTarget = wrapTarget;
408
- var wrapElementHandle = function (
211
+ const wrapElementHandle = (
409
212
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
410
- elementHandle, controller) {
213
+ elementHandle, controller) => {
411
214
  if ((0, util_1.isWrapped)(elementHandle)) {
412
215
  return elementHandle;
413
216
  }
414
- var proxy = new Proxy(elementHandle, {
415
- get: function (host, prop, receiver) {
416
- var _this = this;
217
+ const proxy = new Proxy(elementHandle, {
218
+ get(host, prop, receiver) {
417
219
  switch (prop) {
418
220
  case '$':
419
221
  case 'waitForSelector':
420
222
  case 'waitForXPath':
421
- return function () {
422
- var args = [];
423
- for (var _i = 0; _i < arguments.length; _i++) {
424
- args[_i] = arguments[_i];
425
- }
426
- return __awaiter(_this, void 0, void 0, function () {
427
- var el;
428
- return __generator(this, function (_a) {
429
- switch (_a.label) {
430
- case 0: return [4 /*yield*/, host.$.apply(host, args)];
431
- case 1:
432
- el = _a.sent();
433
- return [2 /*return*/, el ? (0, exports.wrapElementHandle)(el, controller) : null];
434
- }
435
- });
436
- });
437
- };
223
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
224
+ const el = yield host.$(...args);
225
+ return el ? (0, exports.wrapElementHandle)(el, controller) : null;
226
+ });
438
227
  case '$$':
439
228
  case '$x':
440
- return function () {
441
- var args = [];
442
- for (var _i = 0; _i < arguments.length; _i++) {
443
- args[_i] = arguments[_i];
444
- }
445
- return __awaiter(_this, void 0, void 0, function () {
446
- var els;
447
- return __generator(this, function (_a) {
448
- switch (_a.label) {
449
- case 0: return [4 /*yield*/, host[prop].apply(host, args)];
450
- case 1:
451
- els = _a.sent();
452
- return [2 /*return*/, els.map(function (el) { return (0, exports.wrapElementHandle)(el, controller); })];
453
- }
454
- });
455
- });
456
- };
229
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
230
+ // @ts-expect-error TypeScript is angry.
231
+ const els = yield host[prop](...args);
232
+ return els.map(el => (0, exports.wrapElementHandle)(el, controller));
233
+ });
457
234
  case 'asElement':
458
- return function () { return (0, exports.wrapElementHandle)(host.asElement(), controller); };
235
+ return () => (0, exports.wrapElementHandle)(host.asElement(), controller);
459
236
  case 'contentFrame':
460
- return function () { return __awaiter(_this, void 0, void 0, function () {
461
- var frame;
462
- return __generator(this, function (_a) {
463
- switch (_a.label) {
464
- case 0: return [4 /*yield*/, host.contentFrame()];
465
- case 1:
466
- frame = _a.sent();
467
- return [2 /*return*/, frame ? (0, exports.wrapFrame)(frame, controller) : null];
468
- }
469
- });
470
- }); };
237
+ return () => __awaiter(this, void 0, void 0, function* () {
238
+ const frame = yield host.contentFrame();
239
+ return frame ? (0, exports.wrapFrame)(frame, controller) : null;
240
+ });
471
241
  case 'frame':
472
242
  return (0, exports.wrapFrame)(host.frame, controller);
473
243
  case 'toElement':
474
- return function () {
475
- var args = [];
476
- for (var _i = 0; _i < arguments.length; _i++) {
477
- args[_i] = arguments[_i];
478
- }
479
- return __awaiter(_this, void 0, void 0, function () { var _a; return __generator(this, function (_b) {
480
- switch (_b.label) {
481
- case 0:
482
- _a = exports.wrapElementHandle;
483
- return [4 /*yield*/, host.toElement.apply(host, args)];
484
- case 1: return [2 /*return*/, _a.apply(void 0, [_b.sent(), controller])];
485
- }
486
- }); });
487
- };
244
+ return (...args) => __awaiter(this, void 0, void 0, function* () { return (0, exports.wrapElementHandle)(yield host.toElement(...args), controller); });
488
245
  case 'click':
489
246
  case 'drag':
490
247
  case 'dragAndDrop':
@@ -511,12 +268,12 @@ elementHandle, controller) {
511
268
  return proxy;
512
269
  };
513
270
  exports.wrapElementHandle = wrapElementHandle;
514
- var wrapKeyboard = function (keyboard, controller) {
271
+ const wrapKeyboard = (keyboard, controller) => {
515
272
  if ((0, util_1.isWrapped)(keyboard)) {
516
273
  return keyboard;
517
274
  }
518
- var proxy = new Proxy(keyboard, {
519
- get: function (host, prop, receiver) {
275
+ const proxy = new Proxy(keyboard, {
276
+ get(host, prop, receiver) {
520
277
  switch (prop) {
521
278
  case 'down':
522
279
  case 'press':
@@ -533,12 +290,12 @@ var wrapKeyboard = function (keyboard, controller) {
533
290
  return proxy;
534
291
  };
535
292
  exports.wrapKeyboard = wrapKeyboard;
536
- var wrapMouse = function (mouse, controller) {
293
+ const wrapMouse = (mouse, controller) => {
537
294
  if ((0, util_1.isWrapped)(mouse)) {
538
295
  return mouse;
539
296
  }
540
- var proxy = new Proxy(mouse, {
541
- get: function (host, prop, receiver) {
297
+ const proxy = new Proxy(mouse, {
298
+ get(host, prop, receiver) {
542
299
  switch (prop) {
543
300
  case 'click':
544
301
  case 'down':
@@ -560,12 +317,12 @@ var wrapMouse = function (mouse, controller) {
560
317
  return proxy;
561
318
  };
562
319
  exports.wrapMouse = wrapMouse;
563
- var wrapTouchscreen = function (touchscreen, controller) {
320
+ const wrapTouchscreen = (touchscreen, controller) => {
564
321
  if ((0, util_1.isWrapped)(touchscreen)) {
565
322
  return touchscreen;
566
323
  }
567
- var proxy = new Proxy(touchscreen, {
568
- get: function (host, prop, receiver) {
324
+ const proxy = new Proxy(touchscreen, {
325
+ get(host, prop, receiver) {
569
326
  switch (prop) {
570
327
  case 'tap':
571
328
  case 'touchEnd':
@@ -581,12 +338,12 @@ var wrapTouchscreen = function (touchscreen, controller) {
581
338
  return proxy;
582
339
  };
583
340
  exports.wrapTouchscreen = wrapTouchscreen;
584
- var wrapDialog = function (dialog, controller) {
341
+ const wrapDialog = (dialog, controller) => {
585
342
  if ((0, util_1.isWrapped)(dialog)) {
586
343
  return dialog;
587
344
  }
588
- var proxy = new Proxy(dialog, {
589
- get: function (host, prop, receiver) {
345
+ const proxy = new Proxy(dialog, {
346
+ get(host, prop, receiver) {
590
347
  switch (prop) {
591
348
  case 'accept':
592
349
  case 'dismiss':
@@ -600,62 +357,37 @@ var wrapDialog = function (dialog, controller) {
600
357
  return proxy;
601
358
  };
602
359
  exports.wrapDialog = wrapDialog;
603
- var wrapFrame = function (frame, controller) {
360
+ const wrapFrame = (frame, controller) => {
604
361
  if ((0, util_1.isWrapped)(frame)) {
605
362
  return frame;
606
363
  }
607
- var proxy = new Proxy(frame, {
608
- get: function (host, prop, receiver) {
609
- var _this = this;
364
+ const proxy = new Proxy(frame, {
365
+ get(host, prop, receiver) {
610
366
  switch (prop) {
611
367
  case '$':
612
368
  case 'addScriptTag':
613
369
  case 'addStyleTag':
614
370
  case 'waitForSelector':
615
371
  case 'waitForXPath':
616
- return function () {
617
- var args = [];
618
- for (var _i = 0; _i < arguments.length; _i++) {
619
- args[_i] = arguments[_i];
620
- }
621
- return __awaiter(_this, void 0, void 0, function () {
622
- var el;
623
- return __generator(this, function (_a) {
624
- switch (_a.label) {
625
- case 0: return [4 /*yield*/, host[prop].apply(host, args)];
626
- case 1:
627
- el = _a.sent();
628
- return [2 /*return*/, el ? (0, exports.wrapElementHandle)(el, controller) : null];
629
- }
630
- });
631
- });
632
- };
372
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
373
+ // @ts-expect-error TypeScript is angry.
374
+ const el = yield host[prop](...args);
375
+ return el ? (0, exports.wrapElementHandle)(el, controller) : null;
376
+ });
633
377
  case '$$':
634
378
  case '$x':
635
- return function () {
636
- var args = [];
637
- for (var _i = 0; _i < arguments.length; _i++) {
638
- args[_i] = arguments[_i];
639
- }
640
- return __awaiter(_this, void 0, void 0, function () {
641
- var els;
642
- return __generator(this, function (_a) {
643
- switch (_a.label) {
644
- case 0: return [4 /*yield*/, host[prop].apply(host, args)];
645
- case 1:
646
- els = _a.sent();
647
- return [2 /*return*/, els.map(function (el) { return (0, exports.wrapElementHandle)(el, controller); })];
648
- }
649
- });
650
- });
651
- };
379
+ return (...args) => __awaiter(this, void 0, void 0, function* () {
380
+ // @ts-expect-error TypeScript is angry.
381
+ const els = yield host[prop](...args);
382
+ return els.map(el => (0, exports.wrapElementHandle)(el, controller));
383
+ });
652
384
  case 'childFrames':
653
- return function () { return host.childFrames().map(function (f) { return (0, exports.wrapFrame)(f, controller); }); };
385
+ return () => host.childFrames().map(f => (0, exports.wrapFrame)(f, controller));
654
386
  case 'page':
655
- return function () { return (0, exports.wrapPage)(host.page(), controller); };
387
+ return () => (0, exports.wrapPage)(host.page(), controller);
656
388
  case 'parentFrame':
657
- return function () {
658
- var f = host.parentFrame();
389
+ return () => {
390
+ const f = host.parentFrame();
659
391
  return f ? (0, exports.wrapFrame)(f, controller) : null;
660
392
  };
661
393
  case 'click':
@@ -676,16 +408,16 @@ var wrapFrame = function (frame, controller) {
676
408
  return proxy;
677
409
  };
678
410
  exports.wrapFrame = wrapFrame;
679
- var wrapJSHandle = function (frame, controller) {
411
+ const wrapJSHandle = (frame, controller) => {
680
412
  if ((0, util_1.isWrapped)(frame)) {
681
413
  return frame;
682
414
  }
683
- var proxy = new Proxy(frame, {
684
- get: function (host, prop, receiver) {
415
+ const proxy = new Proxy(frame, {
416
+ get(host, prop, receiver) {
685
417
  switch (prop) {
686
418
  case 'asElement':
687
- return function () {
688
- var el = host.asElement();
419
+ return () => {
420
+ const el = host.asElement();
689
421
  return el ? (0, exports.wrapElementHandle)(el, controller) : null;
690
422
  };
691
423
  default: