@browserless.io/browserless 2.22.0 → 2.23.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.
- package/CHANGELOG.md +7 -1
- package/build/browsers/browsers.cdp.js +12 -2
- package/build/routes/chrome/http/content.post.body.json +8 -8
- package/build/routes/chrome/http/pdf.post.body.json +8 -8
- package/build/routes/chrome/http/scrape.post.body.json +8 -8
- package/build/routes/chrome/http/screenshot.post.body.json +8 -8
- package/build/routes/chromium/http/content.post.body.json +8 -8
- package/build/routes/chromium/http/pdf.post.body.json +8 -8
- package/build/routes/chromium/http/scrape.post.body.json +8 -8
- package/build/routes/chromium/http/screenshot.post.body.json +8 -8
- package/docker/chrome/Dockerfile +2 -1
- package/docker/chromium/Dockerfile +2 -1
- package/docker/firefox/Dockerfile +2 -1
- package/docker/multi/Dockerfile +2 -1
- package/package.json +9 -9
- package/src/browsers/browsers.cdp.ts +13 -2
- package/static/docs/swagger.json +10 -10
- package/static/docs/swagger.min.json +9 -9
- package/static/function/client.js +175 -129
- package/static/function/index.html +175 -129
|
@@ -4390,7 +4390,7 @@
|
|
|
4390
4390
|
// node_modules/puppeteer-core/lib/esm/puppeteer/generated/version.js
|
|
4391
4391
|
init_dirname();
|
|
4392
4392
|
init_buffer2();
|
|
4393
|
-
var packageVersion = "23.6.
|
|
4393
|
+
var packageVersion = "23.6.1";
|
|
4394
4394
|
|
|
4395
4395
|
// node_modules/puppeteer-core/lib/esm/puppeteer/util/assert.js
|
|
4396
4396
|
init_dirname();
|
|
@@ -5211,7 +5211,7 @@
|
|
|
5211
5211
|
* ```ts
|
|
5212
5212
|
* await page.evaluate(() => window.open('https://www.example.com/'));
|
|
5213
5213
|
* const newWindowTarget = await browser.waitForTarget(
|
|
5214
|
-
* target => target.url() === 'https://www.example.com/'
|
|
5214
|
+
* target => target.url() === 'https://www.example.com/',
|
|
5215
5215
|
* );
|
|
5216
5216
|
* ```
|
|
5217
5217
|
*/
|
|
@@ -5340,6 +5340,7 @@
|
|
|
5340
5340
|
#value;
|
|
5341
5341
|
// SAFETY: This is ensured by #taskPromise.
|
|
5342
5342
|
#resolve;
|
|
5343
|
+
// TODO: Switch to Promise.withResolvers with Node 22
|
|
5343
5344
|
#taskPromise = new Promise((resolve) => {
|
|
5344
5345
|
this.#resolve = resolve;
|
|
5345
5346
|
});
|
|
@@ -5477,7 +5478,7 @@
|
|
|
5477
5478
|
* ```ts
|
|
5478
5479
|
* await page.evaluate(() => window.open('https://www.example.com/'));
|
|
5479
5480
|
* const newWindowTarget = await browserContext.waitForTarget(
|
|
5480
|
-
* target => target.url() === 'https://www.example.com/'
|
|
5481
|
+
* target => target.url() === 'https://www.example.com/',
|
|
5481
5482
|
* );
|
|
5482
5483
|
* ```
|
|
5483
5484
|
*/
|
|
@@ -5549,19 +5550,23 @@
|
|
|
5549
5550
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
5550
5551
|
env.hasError = true;
|
|
5551
5552
|
}
|
|
5553
|
+
var r, s = 0;
|
|
5552
5554
|
function next() {
|
|
5553
|
-
while (env.stack.
|
|
5554
|
-
var rec = env.stack.pop();
|
|
5555
|
+
while (r = env.stack.pop()) {
|
|
5555
5556
|
try {
|
|
5556
|
-
|
|
5557
|
-
if (
|
|
5558
|
-
|
|
5559
|
-
return next()
|
|
5560
|
-
|
|
5557
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
5558
|
+
if (r.dispose) {
|
|
5559
|
+
var result = r.dispose.call(r.value);
|
|
5560
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
5561
|
+
fail(e);
|
|
5562
|
+
return next();
|
|
5563
|
+
});
|
|
5564
|
+
} else s |= 1;
|
|
5561
5565
|
} catch (e) {
|
|
5562
5566
|
fail(e);
|
|
5563
5567
|
}
|
|
5564
5568
|
}
|
|
5569
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
5565
5570
|
if (env.hasError) throw env.error;
|
|
5566
5571
|
}
|
|
5567
5572
|
return next();
|
|
@@ -5993,19 +5998,23 @@
|
|
|
5993
5998
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
5994
5999
|
env.hasError = true;
|
|
5995
6000
|
}
|
|
6001
|
+
var r, s = 0;
|
|
5996
6002
|
function next() {
|
|
5997
|
-
while (env.stack.
|
|
5998
|
-
var rec = env.stack.pop();
|
|
6003
|
+
while (r = env.stack.pop()) {
|
|
5999
6004
|
try {
|
|
6000
|
-
|
|
6001
|
-
if (
|
|
6002
|
-
|
|
6003
|
-
return next()
|
|
6004
|
-
|
|
6005
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
6006
|
+
if (r.dispose) {
|
|
6007
|
+
var result = r.dispose.call(r.value);
|
|
6008
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
6009
|
+
fail(e);
|
|
6010
|
+
return next();
|
|
6011
|
+
});
|
|
6012
|
+
} else s |= 1;
|
|
6005
6013
|
} catch (e) {
|
|
6006
6014
|
fail(e);
|
|
6007
6015
|
}
|
|
6008
6016
|
}
|
|
6017
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
6009
6018
|
if (env.hasError) throw env.error;
|
|
6010
6019
|
}
|
|
6011
6020
|
return next();
|
|
@@ -6150,19 +6159,23 @@
|
|
|
6150
6159
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
6151
6160
|
env.hasError = true;
|
|
6152
6161
|
}
|
|
6162
|
+
var r, s = 0;
|
|
6153
6163
|
function next() {
|
|
6154
|
-
while (env.stack.
|
|
6155
|
-
var rec = env.stack.pop();
|
|
6164
|
+
while (r = env.stack.pop()) {
|
|
6156
6165
|
try {
|
|
6157
|
-
|
|
6158
|
-
if (
|
|
6159
|
-
|
|
6160
|
-
return next()
|
|
6161
|
-
|
|
6166
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
6167
|
+
if (r.dispose) {
|
|
6168
|
+
var result = r.dispose.call(r.value);
|
|
6169
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
6170
|
+
fail(e);
|
|
6171
|
+
return next();
|
|
6172
|
+
});
|
|
6173
|
+
} else s |= 1;
|
|
6162
6174
|
} catch (e) {
|
|
6163
6175
|
fail(e);
|
|
6164
6176
|
}
|
|
6165
6177
|
}
|
|
6178
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
6166
6179
|
if (env.hasError) throw env.error;
|
|
6167
6180
|
}
|
|
6168
6181
|
return next();
|
|
@@ -6855,19 +6868,23 @@
|
|
|
6855
6868
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
6856
6869
|
env.hasError = true;
|
|
6857
6870
|
}
|
|
6871
|
+
var r, s = 0;
|
|
6858
6872
|
function next() {
|
|
6859
|
-
while (env.stack.
|
|
6860
|
-
var rec = env.stack.pop();
|
|
6873
|
+
while (r = env.stack.pop()) {
|
|
6861
6874
|
try {
|
|
6862
|
-
|
|
6863
|
-
if (
|
|
6864
|
-
|
|
6865
|
-
return next()
|
|
6866
|
-
|
|
6875
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
6876
|
+
if (r.dispose) {
|
|
6877
|
+
var result = r.dispose.call(r.value);
|
|
6878
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
6879
|
+
fail(e);
|
|
6880
|
+
return next();
|
|
6881
|
+
});
|
|
6882
|
+
} else s |= 1;
|
|
6867
6883
|
} catch (e) {
|
|
6868
6884
|
fail(e);
|
|
6869
6885
|
}
|
|
6870
6886
|
}
|
|
6887
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
6871
6888
|
if (env.hasError) throw env.error;
|
|
6872
6889
|
}
|
|
6873
6890
|
return next();
|
|
@@ -7077,7 +7094,7 @@
|
|
|
7077
7094
|
* const aHandle = await page.evaluateHandle(() => document.body);
|
|
7078
7095
|
* const resultHandle = await page.evaluateHandle(
|
|
7079
7096
|
* body => body.innerHTML,
|
|
7080
|
-
* aHandle
|
|
7097
|
+
* aHandle,
|
|
7081
7098
|
* );
|
|
7082
7099
|
* console.log(await resultHandle.jsonValue());
|
|
7083
7100
|
* await resultHandle.dispose();
|
|
@@ -7091,7 +7108,7 @@
|
|
|
7091
7108
|
*
|
|
7092
7109
|
* ```ts
|
|
7093
7110
|
* const button = await page.evaluateHandle(() =>
|
|
7094
|
-
* document.querySelector('button')
|
|
7111
|
+
* document.querySelector('button'),
|
|
7095
7112
|
* );
|
|
7096
7113
|
* // can call `click` because `button` is an `ElementHandle`
|
|
7097
7114
|
* await button.click();
|
|
@@ -7143,7 +7160,7 @@
|
|
|
7143
7160
|
* // as `value` is not on `Element`
|
|
7144
7161
|
* const searchValue = await page.$eval(
|
|
7145
7162
|
* '#search',
|
|
7146
|
-
* (el: HTMLInputElement) => el.value
|
|
7163
|
+
* (el: HTMLInputElement) => el.value,
|
|
7147
7164
|
* );
|
|
7148
7165
|
* ```
|
|
7149
7166
|
*
|
|
@@ -7158,7 +7175,7 @@
|
|
|
7158
7175
|
* // or if you want to be more explicit, provide it as the generic type.
|
|
7159
7176
|
* const searchValue = await page.$eval<string>(
|
|
7160
7177
|
* '#search',
|
|
7161
|
-
* (el: HTMLInputElement) => el.value
|
|
7178
|
+
* (el: HTMLInputElement) => el.value,
|
|
7162
7179
|
* );
|
|
7163
7180
|
* ```
|
|
7164
7181
|
*
|
|
@@ -7231,7 +7248,7 @@
|
|
|
7231
7248
|
*
|
|
7232
7249
|
* ```ts
|
|
7233
7250
|
* const allInputValues = await page.$$eval('input', elements =>
|
|
7234
|
-
* elements.map(e => e.textContent)
|
|
7251
|
+
* elements.map(e => e.textContent),
|
|
7235
7252
|
* );
|
|
7236
7253
|
* ```
|
|
7237
7254
|
*
|
|
@@ -7349,10 +7366,10 @@
|
|
|
7349
7366
|
*
|
|
7350
7367
|
* ```ts
|
|
7351
7368
|
* const firstRequest = await page.waitForRequest(
|
|
7352
|
-
* 'https://example.com/resource'
|
|
7369
|
+
* 'https://example.com/resource',
|
|
7353
7370
|
* );
|
|
7354
7371
|
* const finalRequest = await page.waitForRequest(
|
|
7355
|
-
* request => request.url() === 'https://example.com'
|
|
7372
|
+
* request => request.url() === 'https://example.com',
|
|
7356
7373
|
* );
|
|
7357
7374
|
* return finalRequest.response()?.ok();
|
|
7358
7375
|
* ```
|
|
@@ -7393,11 +7410,11 @@
|
|
|
7393
7410
|
*
|
|
7394
7411
|
* ```ts
|
|
7395
7412
|
* const firstResponse = await page.waitForResponse(
|
|
7396
|
-
* 'https://example.com/resource'
|
|
7413
|
+
* 'https://example.com/resource',
|
|
7397
7414
|
* );
|
|
7398
7415
|
* const finalResponse = await page.waitForResponse(
|
|
7399
7416
|
* response =>
|
|
7400
|
-
* response.url() === 'https://example.com' && response.status() === 200
|
|
7417
|
+
* response.url() === 'https://example.com' && response.status() === 200,
|
|
7401
7418
|
* );
|
|
7402
7419
|
* const finalResponse = await page.waitForResponse(async response => {
|
|
7403
7420
|
* return (await response.text()).includes('<html>');
|
|
@@ -8145,7 +8162,7 @@
|
|
|
8145
8162
|
* await page.waitForFunction(
|
|
8146
8163
|
* selector => !!document.querySelector(selector),
|
|
8147
8164
|
* {},
|
|
8148
|
-
* selector
|
|
8165
|
+
* selector,
|
|
8149
8166
|
* );
|
|
8150
8167
|
* ```
|
|
8151
8168
|
*
|
|
@@ -8157,7 +8174,7 @@
|
|
|
8157
8174
|
* await page.waitForFunction(
|
|
8158
8175
|
* async username => {
|
|
8159
8176
|
* const githubResponse = await fetch(
|
|
8160
|
-
* `https://api.github.com/users/${username}
|
|
8177
|
+
* `https://api.github.com/users/${username}`,
|
|
8161
8178
|
* );
|
|
8162
8179
|
* const githubUser = await githubResponse.json();
|
|
8163
8180
|
* // show the avatar
|
|
@@ -8168,7 +8185,7 @@
|
|
|
8168
8185
|
* img.remove();
|
|
8169
8186
|
* },
|
|
8170
8187
|
* {},
|
|
8171
|
-
* username
|
|
8188
|
+
* username,
|
|
8172
8189
|
* );
|
|
8173
8190
|
* ```
|
|
8174
8191
|
*
|
|
@@ -8406,19 +8423,23 @@
|
|
|
8406
8423
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
8407
8424
|
env.hasError = true;
|
|
8408
8425
|
}
|
|
8426
|
+
var r, s = 0;
|
|
8409
8427
|
function next() {
|
|
8410
|
-
while (env.stack.
|
|
8411
|
-
var rec = env.stack.pop();
|
|
8428
|
+
while (r = env.stack.pop()) {
|
|
8412
8429
|
try {
|
|
8413
|
-
|
|
8414
|
-
if (
|
|
8415
|
-
|
|
8416
|
-
return next()
|
|
8417
|
-
|
|
8430
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
8431
|
+
if (r.dispose) {
|
|
8432
|
+
var result = r.dispose.call(r.value);
|
|
8433
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
8434
|
+
fail(e);
|
|
8435
|
+
return next();
|
|
8436
|
+
});
|
|
8437
|
+
} else s |= 1;
|
|
8418
8438
|
} catch (e) {
|
|
8419
8439
|
fail(e);
|
|
8420
8440
|
}
|
|
8421
8441
|
}
|
|
8442
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
8422
8443
|
if (env.hasError) throw env.error;
|
|
8423
8444
|
}
|
|
8424
8445
|
return next();
|
|
@@ -8572,19 +8593,23 @@
|
|
|
8572
8593
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
8573
8594
|
env.hasError = true;
|
|
8574
8595
|
}
|
|
8596
|
+
var r, s = 0;
|
|
8575
8597
|
function next() {
|
|
8576
|
-
while (env.stack.
|
|
8577
|
-
var rec = env.stack.pop();
|
|
8598
|
+
while (r = env.stack.pop()) {
|
|
8578
8599
|
try {
|
|
8579
|
-
|
|
8580
|
-
if (
|
|
8581
|
-
|
|
8582
|
-
return next()
|
|
8583
|
-
|
|
8600
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
8601
|
+
if (r.dispose) {
|
|
8602
|
+
var result = r.dispose.call(r.value);
|
|
8603
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
8604
|
+
fail(e);
|
|
8605
|
+
return next();
|
|
8606
|
+
});
|
|
8607
|
+
} else s |= 1;
|
|
8584
8608
|
} catch (e) {
|
|
8585
8609
|
fail(e);
|
|
8586
8610
|
}
|
|
8587
8611
|
}
|
|
8612
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
8588
8613
|
if (env.hasError) throw env.error;
|
|
8589
8614
|
}
|
|
8590
8615
|
return next();
|
|
@@ -9935,19 +9960,23 @@
|
|
|
9935
9960
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
9936
9961
|
env.hasError = true;
|
|
9937
9962
|
}
|
|
9963
|
+
var r, s = 0;
|
|
9938
9964
|
function next() {
|
|
9939
|
-
while (env.stack.
|
|
9940
|
-
var rec = env.stack.pop();
|
|
9965
|
+
while (r = env.stack.pop()) {
|
|
9941
9966
|
try {
|
|
9942
|
-
|
|
9943
|
-
if (
|
|
9944
|
-
|
|
9945
|
-
return next()
|
|
9946
|
-
|
|
9967
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
9968
|
+
if (r.dispose) {
|
|
9969
|
+
var result = r.dispose.call(r.value);
|
|
9970
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
9971
|
+
fail(e);
|
|
9972
|
+
return next();
|
|
9973
|
+
});
|
|
9974
|
+
} else s |= 1;
|
|
9947
9975
|
} catch (e) {
|
|
9948
9976
|
fail(e);
|
|
9949
9977
|
}
|
|
9950
9978
|
}
|
|
9979
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
9951
9980
|
if (env.hasError) throw env.error;
|
|
9952
9981
|
}
|
|
9953
9982
|
return next();
|
|
@@ -10070,19 +10099,23 @@
|
|
|
10070
10099
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
10071
10100
|
env.hasError = true;
|
|
10072
10101
|
}
|
|
10102
|
+
var r, s = 0;
|
|
10073
10103
|
function next() {
|
|
10074
|
-
while (env.stack.
|
|
10075
|
-
var rec = env.stack.pop();
|
|
10104
|
+
while (r = env.stack.pop()) {
|
|
10076
10105
|
try {
|
|
10077
|
-
|
|
10078
|
-
if (
|
|
10079
|
-
|
|
10080
|
-
return next()
|
|
10081
|
-
|
|
10106
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
10107
|
+
if (r.dispose) {
|
|
10108
|
+
var result = r.dispose.call(r.value);
|
|
10109
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
10110
|
+
fail(e);
|
|
10111
|
+
return next();
|
|
10112
|
+
});
|
|
10113
|
+
} else s |= 1;
|
|
10082
10114
|
} catch (e) {
|
|
10083
10115
|
fail(e);
|
|
10084
10116
|
}
|
|
10085
10117
|
}
|
|
10118
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
10086
10119
|
if (env.hasError) throw env.error;
|
|
10087
10120
|
}
|
|
10088
10121
|
return next();
|
|
@@ -10275,6 +10308,9 @@
|
|
|
10275
10308
|
};
|
|
10276
10309
|
var ATTRIBUTE_REGEXP = /\[\s*(?<attribute>\w+)\s*=\s*(?<quote>"|')(?<value>\\.|.*?(?=\k<quote>))\k<quote>\s*\]/g;
|
|
10277
10310
|
var parseARIASelector = (selector) => {
|
|
10311
|
+
if (selector.length > 1e4) {
|
|
10312
|
+
throw new Error(`Selector ${selector} is too long`);
|
|
10313
|
+
}
|
|
10278
10314
|
const queryOptions = {};
|
|
10279
10315
|
const defaultName = selector.replace(ATTRIBUTE_REGEXP, (_, attribute, __, value) => {
|
|
10280
10316
|
assert(isKnownAttribute(attribute), `Unknown aria attribute "${attribute}" in selector`);
|
|
@@ -10900,19 +10936,23 @@
|
|
|
10900
10936
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
10901
10937
|
env.hasError = true;
|
|
10902
10938
|
}
|
|
10939
|
+
var r, s = 0;
|
|
10903
10940
|
function next() {
|
|
10904
|
-
while (env.stack.
|
|
10905
|
-
var rec = env.stack.pop();
|
|
10941
|
+
while (r = env.stack.pop()) {
|
|
10906
10942
|
try {
|
|
10907
|
-
|
|
10908
|
-
if (
|
|
10909
|
-
|
|
10910
|
-
return next()
|
|
10911
|
-
|
|
10943
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
10944
|
+
if (r.dispose) {
|
|
10945
|
+
var result = r.dispose.call(r.value);
|
|
10946
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
10947
|
+
fail(e);
|
|
10948
|
+
return next();
|
|
10949
|
+
});
|
|
10950
|
+
} else s |= 1;
|
|
10912
10951
|
} catch (e) {
|
|
10913
10952
|
fail(e);
|
|
10914
10953
|
}
|
|
10915
10954
|
}
|
|
10955
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
10916
10956
|
if (env.hasError) throw env.error;
|
|
10917
10957
|
}
|
|
10918
10958
|
return next();
|
|
@@ -11305,7 +11345,7 @@
|
|
|
11305
11345
|
* await frame.waitForFunction(
|
|
11306
11346
|
* selector => !!document.querySelector(selector),
|
|
11307
11347
|
* {}, // empty options object
|
|
11308
|
-
* selector
|
|
11348
|
+
* selector,
|
|
11309
11349
|
* );
|
|
11310
11350
|
* ```
|
|
11311
11351
|
*
|
|
@@ -11922,19 +11962,23 @@
|
|
|
11922
11962
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
11923
11963
|
env.hasError = true;
|
|
11924
11964
|
}
|
|
11965
|
+
var r, s = 0;
|
|
11925
11966
|
function next() {
|
|
11926
|
-
while (env.stack.
|
|
11927
|
-
var rec = env.stack.pop();
|
|
11967
|
+
while (r = env.stack.pop()) {
|
|
11928
11968
|
try {
|
|
11929
|
-
|
|
11930
|
-
if (
|
|
11931
|
-
|
|
11932
|
-
return next()
|
|
11933
|
-
|
|
11969
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
11970
|
+
if (r.dispose) {
|
|
11971
|
+
var result = r.dispose.call(r.value);
|
|
11972
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
11973
|
+
fail(e);
|
|
11974
|
+
return next();
|
|
11975
|
+
});
|
|
11976
|
+
} else s |= 1;
|
|
11934
11977
|
} catch (e) {
|
|
11935
11978
|
fail(e);
|
|
11936
11979
|
}
|
|
11937
11980
|
}
|
|
11981
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
11938
11982
|
if (env.hasError) throw env.error;
|
|
11939
11983
|
}
|
|
11940
11984
|
return next();
|
|
@@ -12253,10 +12297,10 @@
|
|
|
12253
12297
|
* ```ts
|
|
12254
12298
|
* const tweetHandle = await page.$('.tweet');
|
|
12255
12299
|
* expect(await tweetHandle.$eval('.like', node => node.innerText)).toBe(
|
|
12256
|
-
* '100'
|
|
12300
|
+
* '100',
|
|
12257
12301
|
* );
|
|
12258
12302
|
* expect(await tweetHandle.$eval('.retweets', node => node.innerText)).toBe(
|
|
12259
|
-
* '10'
|
|
12303
|
+
* '10',
|
|
12260
12304
|
* );
|
|
12261
12305
|
* ```
|
|
12262
12306
|
*
|
|
@@ -12319,7 +12363,7 @@
|
|
|
12319
12363
|
* ```ts
|
|
12320
12364
|
* const feedHandle = await page.$('.feed');
|
|
12321
12365
|
* expect(
|
|
12322
|
-
* await feedHandle.$$eval('.tweet', nodes => nodes.map(n => n.innerText))
|
|
12366
|
+
* await feedHandle.$$eval('.tweet', nodes => nodes.map(n => n.innerText)),
|
|
12323
12367
|
* ).toEqual(['Hello!', 'Hi!']);
|
|
12324
12368
|
* ```
|
|
12325
12369
|
*
|
|
@@ -12455,7 +12499,7 @@
|
|
|
12455
12499
|
*
|
|
12456
12500
|
* ```ts
|
|
12457
12501
|
* const element: ElementHandle<Element> = await page.$(
|
|
12458
|
-
* '.class-name-of-anchor'
|
|
12502
|
+
* '.class-name-of-anchor',
|
|
12459
12503
|
* );
|
|
12460
12504
|
* // DO NOT DISPOSE `element`, this will be always be the same handle.
|
|
12461
12505
|
* const anchor: ElementHandle<HTMLAnchorElement> =
|
|
@@ -13528,19 +13572,23 @@
|
|
|
13528
13572
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
13529
13573
|
env.hasError = true;
|
|
13530
13574
|
}
|
|
13575
|
+
var r, s = 0;
|
|
13531
13576
|
function next() {
|
|
13532
|
-
while (env.stack.
|
|
13533
|
-
var rec = env.stack.pop();
|
|
13577
|
+
while (r = env.stack.pop()) {
|
|
13534
13578
|
try {
|
|
13535
|
-
|
|
13536
|
-
if (
|
|
13537
|
-
|
|
13538
|
-
return next()
|
|
13539
|
-
|
|
13579
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
13580
|
+
if (r.dispose) {
|
|
13581
|
+
var result = r.dispose.call(r.value);
|
|
13582
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
13583
|
+
fail(e);
|
|
13584
|
+
return next();
|
|
13585
|
+
});
|
|
13586
|
+
} else s |= 1;
|
|
13540
13587
|
} catch (e) {
|
|
13541
13588
|
fail(e);
|
|
13542
13589
|
}
|
|
13543
13590
|
}
|
|
13591
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
13544
13592
|
if (env.hasError) throw env.error;
|
|
13545
13593
|
}
|
|
13546
13594
|
return next();
|
|
@@ -13549,23 +13597,13 @@
|
|
|
13549
13597
|
var e = new Error(message);
|
|
13550
13598
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
13551
13599
|
});
|
|
13552
|
-
var ariaQuerySelectorBinding = new Binding(
|
|
13553
|
-
|
|
13554
|
-
ARIAQueryHandler.
|
|
13555
|
-
|
|
13556
|
-
|
|
13557
|
-
|
|
13558
|
-
|
|
13559
|
-
"__ariaQuerySelectorAll",
|
|
13560
|
-
async (element, selector) => {
|
|
13561
|
-
const results = ARIAQueryHandler.queryAll(element, selector);
|
|
13562
|
-
return await element.realm.evaluateHandle((...elements) => {
|
|
13563
|
-
return elements;
|
|
13564
|
-
}, ...await AsyncIterableUtil.collect(results));
|
|
13565
|
-
},
|
|
13566
|
-
""
|
|
13567
|
-
// custom init
|
|
13568
|
-
);
|
|
13600
|
+
var ariaQuerySelectorBinding = new Binding("__ariaQuerySelector", ARIAQueryHandler.queryOne, "");
|
|
13601
|
+
var ariaQuerySelectorAllBinding = new Binding("__ariaQuerySelectorAll", async (element, selector) => {
|
|
13602
|
+
const results = ARIAQueryHandler.queryAll(element, selector);
|
|
13603
|
+
return await element.realm.evaluateHandle((...elements) => {
|
|
13604
|
+
return elements;
|
|
13605
|
+
}, ...await AsyncIterableUtil.collect(results));
|
|
13606
|
+
}, "");
|
|
13569
13607
|
var ExecutionContext = class extends EventEmitter {
|
|
13570
13608
|
#client;
|
|
13571
13609
|
#world;
|
|
@@ -13727,7 +13765,7 @@
|
|
|
13727
13765
|
* const result = await executionContext.evaluate(
|
|
13728
13766
|
* (a, b) => a + b,
|
|
13729
13767
|
* oneHandle,
|
|
13730
|
-
* twoHandle
|
|
13768
|
+
* twoHandle,
|
|
13731
13769
|
* );
|
|
13732
13770
|
* await oneHandle.dispose();
|
|
13733
13771
|
* await twoHandle.dispose();
|
|
@@ -13757,7 +13795,7 @@
|
|
|
13757
13795
|
* ```ts
|
|
13758
13796
|
* const context = await page.mainFrame().executionContext();
|
|
13759
13797
|
* const handle: JSHandle<typeof globalThis> = await context.evaluateHandle(
|
|
13760
|
-
* () => Promise.resolve(self)
|
|
13798
|
+
* () => Promise.resolve(self),
|
|
13761
13799
|
* );
|
|
13762
13800
|
* ```
|
|
13763
13801
|
*
|
|
@@ -13778,7 +13816,7 @@
|
|
|
13778
13816
|
* });
|
|
13779
13817
|
* const stringHandle: JSHandle<string> = await context.evaluateHandle(
|
|
13780
13818
|
* body => body.innerHTML,
|
|
13781
|
-
* body
|
|
13819
|
+
* body,
|
|
13782
13820
|
* );
|
|
13783
13821
|
* console.log(await stringHandle.jsonValue()); // prints body's innerHTML
|
|
13784
13822
|
* // Always dispose your garbage! :)
|
|
@@ -15898,7 +15936,7 @@ ${sourceUrlComment}
|
|
|
15898
15936
|
return;
|
|
15899
15937
|
}
|
|
15900
15938
|
const firstLine = extraInfo.headersText.split("\r", 1)[0];
|
|
15901
|
-
if (!firstLine) {
|
|
15939
|
+
if (!firstLine || firstLine.length > 1e3) {
|
|
15902
15940
|
return;
|
|
15903
15941
|
}
|
|
15904
15942
|
const match = firstLine.match(/[^ ]* [^ ]* (.*)/);
|
|
@@ -16483,7 +16521,9 @@ ${sourceUrlComment}
|
|
|
16483
16521
|
const requestId = request.id;
|
|
16484
16522
|
const interceptionId = request._interceptionId;
|
|
16485
16523
|
this.#networkEventManager.forgetRequest(requestId);
|
|
16486
|
-
interceptionId !== void 0
|
|
16524
|
+
if (interceptionId !== void 0) {
|
|
16525
|
+
this.#attemptedAuthentications.delete(interceptionId);
|
|
16526
|
+
}
|
|
16487
16527
|
if (events) {
|
|
16488
16528
|
this.#networkEventManager.forget(requestId);
|
|
16489
16529
|
}
|
|
@@ -16591,7 +16631,7 @@ ${sourceUrlComment}
|
|
|
16591
16631
|
});
|
|
16592
16632
|
try {
|
|
16593
16633
|
await swapped.valueOrThrow();
|
|
16594
|
-
} catch
|
|
16634
|
+
} catch {
|
|
16595
16635
|
this.#removeFramesRecursively(mainFrame);
|
|
16596
16636
|
}
|
|
16597
16637
|
}
|
|
@@ -18050,19 +18090,23 @@ ${sourceUrlComment}
|
|
|
18050
18090
|
env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
|
|
18051
18091
|
env.hasError = true;
|
|
18052
18092
|
}
|
|
18093
|
+
var r, s = 0;
|
|
18053
18094
|
function next() {
|
|
18054
|
-
while (env.stack.
|
|
18055
|
-
var rec = env.stack.pop();
|
|
18095
|
+
while (r = env.stack.pop()) {
|
|
18056
18096
|
try {
|
|
18057
|
-
|
|
18058
|
-
if (
|
|
18059
|
-
|
|
18060
|
-
return next()
|
|
18061
|
-
|
|
18097
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
18098
|
+
if (r.dispose) {
|
|
18099
|
+
var result = r.dispose.call(r.value);
|
|
18100
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
|
|
18101
|
+
fail(e);
|
|
18102
|
+
return next();
|
|
18103
|
+
});
|
|
18104
|
+
} else s |= 1;
|
|
18062
18105
|
} catch (e) {
|
|
18063
18106
|
fail(e);
|
|
18064
18107
|
}
|
|
18065
18108
|
}
|
|
18109
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
18066
18110
|
if (env.hasError) throw env.error;
|
|
18067
18111
|
}
|
|
18068
18112
|
return next();
|
|
@@ -18829,7 +18873,7 @@ ${sourceUrlComment}
|
|
|
18829
18873
|
* page.click('#connect-bluetooth'),
|
|
18830
18874
|
* ]);
|
|
18831
18875
|
* await devicePrompt.select(
|
|
18832
|
-
* await devicePrompt.waitForDevice(({name}) => name.includes('My Device'))
|
|
18876
|
+
* await devicePrompt.waitForDevice(({name}) => name.includes('My Device')),
|
|
18833
18877
|
* );
|
|
18834
18878
|
* ```
|
|
18835
18879
|
*/
|
|
@@ -19326,7 +19370,9 @@ ${sourceUrlComment}
|
|
|
19326
19370
|
]).catch(debugError);
|
|
19327
19371
|
};
|
|
19328
19372
|
#finishInitializationIfReady(targetId) {
|
|
19329
|
-
targetId !== void 0
|
|
19373
|
+
if (targetId !== void 0) {
|
|
19374
|
+
this.#targetsIdsForInit.delete(targetId);
|
|
19375
|
+
}
|
|
19330
19376
|
if (this.#targetsIdsForInit.size === 0) {
|
|
19331
19377
|
this.#initializeDeferred.resolve();
|
|
19332
19378
|
}
|