Commit Graph

205 Commits

Author SHA1 Message Date
Alex Rudenko
73f741ea33
docs: update docs about touchmove (#10847) 2023-09-05 10:42:19 +02:00
jrandolf
690b1c2218
chore: use bindIsolatedHandle (#10810) 2023-09-01 15:13:29 +00:00
jrandolf
f3c7499e67
chore: refactor handles to use realms (#10830) 2023-09-01 12:12:29 +00:00
jrandolf
538bb73ea7
fix: implement throwIfDetached (#10826) 2023-08-31 16:39:32 +02:00
jrandolf
c67141f3ae
chore: implement Disposable/AsyncDisposable on Page and Browser (#10809) 2023-08-30 13:10:06 +02:00
jrandolf
4d3cb6ccf3
chore: refactor Frame (#10808) 2023-08-30 11:09:27 +00:00
jrandolf
2401bb46b1
chore: implement moveable (#10803) 2023-08-29 22:48:37 +02:00
jrandolf
8c07631bd1
chore: implement (Async)Disposable on handles (#10802) 2023-08-29 21:44:59 +02:00
jrandolf
c4a4412920
chore: implement waitForFrame and use clickablePoint for ElementHandle operations (#10778) 2023-08-24 20:32:29 +02:00
jrandolf
5f8d2a43b2
chore: use abstract for implemented methods (#10774) 2023-08-23 18:00:34 +02:00
jrandolf
27636afacf
chore: implement boxModel, contentFrame, and nested frame boundingBox (#10773) 2023-08-23 16:58:18 +02:00
Alex Rudenko
f70048c84f
refactor: turn Frame into EventEmitter (#10711) 2023-08-08 16:42:45 +02:00
jrandolf
fdada74ba7
feat: implement Locator.prototype.waitHandle (#10650) 2023-07-27 10:47:29 +02:00
jrandolf
6ad92f7f84
feat: implement function locators (#10632) 2023-07-27 09:23:28 +02:00
jrandolf
34be28db5d
feat: implement immutable locator operations (#10638) 2023-07-26 17:00:00 +02:00
jrandolf
e73d35def0
feat: implement Locator.prototype.filter (#10631) 2023-07-25 16:46:10 +02:00
jrandolf
47eecf5bb1
feat: implement Locator.prototype.map (#10630) 2023-07-25 16:45:10 +02:00
jrandolf
5d34d42d15
feat: implement Locator.prototype.wait (#10629) 2023-07-25 16:43:18 +02:00
jrandolf
ede43ca2d3
chore: use RxJS for locator implementation (#10607)
Using RxJS greatly simplifies the control flow for locators and comes with automatic cleanup on failure. It greatly simplifies the `signal` logic and the retry logic.
2023-07-25 12:43:07 +02:00
Alex Rudenko
d0c5b8e089
feat: add page.createCDPSession method (#10515) 2023-07-21 14:03:52 +02:00
Alex Rudenko
0e60ce4cec
refactor: move Target to api (#10602) 2023-07-21 09:04:14 +02:00
Alex Rudenko
44712d1e6e
refactor!: use Target for filters (#10601) 2023-07-20 16:18:00 +02:00
jrandolf
0715ad8281
refactor: move locators to separate files (#10591) 2023-07-20 15:06:42 +02:00
Alex Rudenko
6c9306a72e
feat: add autofill support (#10565) 2023-07-19 17:42:31 +00:00
jrandolf
c14f9b64a7
chore: implement typed Locators, expects, and internal contexts (#10573) 2023-07-19 15:39:38 +00:00
Nikolay Vitkov
88439f913e
fix: update the target to ES2022 (#10574) 2023-07-18 18:28:03 +02:00
Alex Rudenko
a419abf509
test: unskip style tag tests (#10572) 2023-07-18 18:27:41 +02:00
Nikolay Vitkov
de09b058ba
chore: update Prettier and other deps (#10555) 2023-07-17 10:52:54 +02:00
Kiko Beats
87aaed4807
feat(screenshot): enable optimizeForSpeed (#10492) 2023-07-03 11:43:34 +02:00
Baptiste Lombard
a88d1936ca
docs: replace evaluateHandle with evaluate in the evaluate page (#10439) 2023-06-23 11:14:30 +02:00
jrandolf
3ba7fba838
chore: implement Bidi keyboard (#10417) 2023-06-19 17:44:39 +02:00
jrandolf
4f6b0d4e45
chore: implement Webdriver BiDi mouse and touchscreen (#10402)
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2023-06-19 11:26:30 +00:00
Nikolay Vitkov
c06e15fb5b
fix: added clipboard permission that was not exposed (#10119) 2023-06-19 08:53:54 +00:00
jrandolf
39847bd231
refactor: use input API for CDP inputs (#10401) 2023-06-19 10:12:43 +02:00
Alex Rudenko
7cb6059bcc
fix: mark CDPSessionOnMessageObject as internal (#10373) 2023-06-13 13:53:48 +02:00
Alex Rudenko
903afc3715
chore: implement acceptInsecureCerts and version for BiDi (#10365) 2023-06-13 10:17:23 +02:00
jrandolf
35aedc0dbb
feat: add reset to mouse (#10340) 2023-06-12 17:59:28 +00:00
Alex Rudenko
9c35e9ab1f
feat: implement Locator.race (#10337) 2023-06-07 12:45:02 +02:00
Alex Rudenko
b81b019083
chore: mark Locator constructor as private (#10322) 2023-06-06 11:51:34 +02:00
Alex Rudenko
1f978f5fc5
feat: implement Locators (#10305) 2023-06-02 17:46:10 +00:00
Nikolay Vitkov
4d0dbbc517
feat: add page.removeExposedFunction (#10297) 2023-06-02 14:08:36 +02:00
Thiago Perrotta
27db1eb4f4
docs: add webp to captureScreenshot.format (#10295) 2023-06-01 15:49:27 +00:00
Junyan
b5a124ff73
feat: Page.removeScriptToEvaluateOnNewDocument (#10250)
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2023-05-26 07:56:45 +00:00
Nikolay Vitkov
0cac94c0d6
chore: EventEmitter should mimic NodeJS' one (#10241) 2023-05-24 17:57:56 +02:00
Junyan
81f73a55f3
feat: Page.setBypassServiceWorker (#10229)
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
2023-05-23 13:51:32 +02:00
Alex Rudenko
1ad32ec994
feat: add an ability to trim cache for Puppeteer (#10199) 2023-05-17 15:21:40 +02:00
Alex Rudenko
f342a129e8
refactor: introduce an internal PageTarget subclass (#10167) 2023-05-12 11:51:28 +02:00
Alex Rudenko
4398f66f28
fix: downloadPath should be used by the install script (#10163) 2023-05-11 17:09:24 +00:00
jrandolf
317fa732f9
feat: implement detailed errors for evaluation (#10114) 2023-05-10 10:23:29 +02:00
Alex Rudenko
9758cae029
fix: rename PUPPETEER_DOWNLOAD_HOST to PUPPETEER_DOWNLOAD_BASE_URL (#10130) 2023-05-05 10:32:58 +02:00
Alex Rudenko
575f00a31d
fix: use AbortSignal.throwIfAborted (#10105) 2023-05-02 14:08:05 +02:00
Nikolay Vitkov
a856f8ff76
docs: fix link in JSHandle (#10106) 2023-05-02 09:48:44 +02:00
Alex Rudenko
df4d60c187
feat!: switch to Chrome for Testing instead of Chromium (#10054)
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com>
2023-05-02 08:53:40 +02:00
Alex Rudenko
4dd4cb9292
feat: add AbortSignal to waitForFunction (#10078)
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com>
2023-04-26 10:50:08 +02:00
jrandolf
8124a7d5bf
fix: implement click count (#10069) 2023-04-25 13:28:47 +02:00
jrandolf
e5d6864056
docs: improve docs on file upload (#10058) 2023-04-21 14:15:19 +02:00
Alex Rudenko
8283823cb8
fix: continue requests without network instrumentation (#10046) 2023-04-20 12:28:56 +00:00
jrandolf
bbf2c0a8ec
chore: use AbortSignal instead of AbortController (#10048) 2023-04-20 08:18:48 +02:00
zeeker999
c12512822a
feat(webworker): expose WebWorker.client (#10042)
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2023-04-19 11:00:08 +02:00
Marcus Otterström
28154eff6f
docs: Document options (#10035)
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2023-04-19 08:19:50 +00:00
Alex Rudenko
9109b76276
feat: support AbortController in waitForSelector (#10018) 2023-04-18 16:45:10 +00:00
jrandolf
34db39e447
fix: improve mouse actions (#10021) 2023-04-17 10:56:51 +02:00
Alex Rudenko
26c81b7408
feat: add ElementHandle.isVisible and ElementHandle.isHidden (#10007) 2023-04-12 11:19:46 +02:00
Alex Rudenko
0d556a71d6
feat: add ElementHandle.scrollIntoView (#10005) 2023-04-12 07:17:18 +02:00
Alex Rudenko
656b562c74
fix: make isIntersectingViewport work with SVG elements (#10004) 2023-04-11 14:05:10 +00:00
Alex Rudenko
1eca5663f1
docs: fix typo (#10000) 2023-04-11 09:21:15 +00:00
Alex Rudenko
c8f6adf9f3
refactor: use browsers for launchers (#9937) 2023-04-04 13:29:21 +00:00
Nikolay Vitkov
1396274477
docs: remove some redundant instances of @returns (#9943) 2023-03-30 11:54:00 +00:00
Nikolay Vitkov
e0eef01f1c
docs: use code block for single values (#9936) 2023-03-29 15:27:29 +02:00
Nikolay Vitkov
a99abc9a2f
docs: remove unhelpful api pages (#9933) 2023-03-28 18:02:00 +00:00
Alex Rudenko
4465f4bd19
fix: increase the default protocol timeout (#9928) 2023-03-28 12:35:13 +00:00
Nikolay Vitkov
bb37df5f64
docs: add DeviceRequestPrompt documentation (#9918) 2023-03-27 13:16:51 +02:00
Nikolay Vitkov
95c99e84b8
chore: add PDF print for BiDi (#9914) 2023-03-27 11:39:40 +02:00
Nikolay Vitkov
022c909326
fix: viewport.deviceScaleFactor can be set to system default (#9911) 2023-03-24 10:56:52 +01:00
Alex Rudenko
510b36c500
fix: implement protocol-level timeouts (#9877) 2023-03-21 11:53:13 +00:00
Michael "Z" Goddard
a5149d52f5
feat: add Page.waitForDevicePrompt (#9299)
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2023-03-21 10:21:10 +01:00
Nikolay Vitkov
175362c048
chore: add BiDi for goto navigation (#9795) 2023-03-10 15:59:02 +00:00
Nikolay Vitkov
38d511b5c2
docs: fix some api-extractor warnings (#9806) 2023-03-09 09:22:09 +01:00
jrandolf
2123f809e8
chore: remove rimraf (#9775) 2023-03-06 11:33:38 +01:00
Nikolay Vitkov
004a99aaef
chore: implement simple BiDi ElementHandle (#9753) 2023-03-01 11:09:17 +01:00
Nikolay Vitkov
37eb0f2a19
chore: Bump website dependencies (#9739) 2023-02-23 13:31:23 +01:00
Nikolay Vitkov
0c85c0611c
chore: Implement JSHandle for BiDi (#9660) 2023-02-15 10:29:18 +00:00
jrandolf
56f99f7b10
refactor: migrate to iterator-based query handlers (#9676) 2023-02-14 13:31:30 -08:00
jrandolf
eb138635d6
fix: fix circularity on JSHandle interface (#9661) 2023-02-13 11:25:07 -08:00
Nikolay Vitkov
b8ea891ab8
chore: Extract JSHandle to API (#9632) 2023-02-09 18:04:06 +01:00
charlieinitialdigital
c8bb11adfc
feat: add touchstart, touchmove and touchend methods (#9622) 2023-02-03 10:59:21 +00:00
Rafael-Martins
f12f27e1eb
docs: clarify the waitForXPath return type (#9541) (#9583) 2023-02-01 15:23:32 +00:00
Ophir Back
e3d69ec554
feat(page): Adding support for referrerPolicy in page.goto (#9561)
Issue: #9394

**What kind of change does this PR introduce?**

Feature - Added support of the `referrerPolicy` parameter (from CDP's
`Page.navigate`) to Puppeteer's `page.goto`.

**Did you add tests for your changes?**

No, currently it has no meaning that isn't browser implementation based,
which might get broken in the future. If there are suggestions to tests,
please let me know so I'll add them.

**If relevant, did you update the documentation?**
Yes, the documentation of the `goto` method has been updated.

**Summary**
I wanted to contribute to this project, which I used for testing on our
environment and saw issue #9394, so I decided to resolve it :)

**Does this PR introduce a breaking change?**
No. I added the `referrerPolicy` as an optional parameter, which will
use the HTTP header `Referrer-Policy` if not provided (much like the
`referer` parameter) so it will not interfere.

Co-authored-by: Ophir Back <ophir.back@broadcom.com>
2023-01-23 11:11:20 +00:00
Alex Rudenko
6847f8835f
fix: improve screenshot method types (#9529)
The only drawback of adding overrides is that our documentation
generator would generate a page for each overload which might be hard to
read/find on the documentation website.

Closes #9512 #9385
2023-01-18 14:06:20 +00:00
Kian-Meng Ang
4437bceb6e docs: fix typos (#9476)
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
2023-01-16 20:25:09 +01:00
jrandolf
9bf90d9f4b
fix: use puppeteer node for installation script (#9489)
Fixed: https://github.com/puppeteer/puppeteer/issues/9470
2023-01-11 16:15:53 +01:00
Alex Rudenko
29a50764d4
chore: add BiDi integration for Chromium (#9410)
This PR adds experimental support for WebDriver BiDi by making use of
chromium-bidi to implement the BiDi protocol. The tests are disabled on
Windows due to flakiness (filed
https://github.com/GoogleChromeLabs/chromium-bidi/issues/361).
2022-12-20 14:37:31 +00:00
jrandolf
3f52212fc8
chore: update dependencies (#9436)
Fixed: https://github.com/puppeteer/puppeteer/issues/9372
2022-12-19 15:26:58 +01:00
jrandolf
c7a063a152
feat: add element validation (#9352)
This PR adds a method to ElementHandle that validates the tag type of
that handle and returns it.

Fixed: #8579, #9280
2022-12-19 13:25:56 +01:00
y-yagi
a3045435a2
docs: mention how to disable timeout for page.pdf() (#9167)
**What kind of change does this PR introduce?**

Add how to disable timeout for `page.pdf()`.

**Summary**

This was mentioned in the PR that adding this feature
https://github.com/puppeteer/puppeteer/pull/7508 But it has lost at
https://github.com/puppeteer/puppeteer/pull/8593.

I'm not sure why this was removed, but I think this info is useful for
users.

**Does this PR introduce a breaking change?**

no
2022-12-12 12:12:18 +00:00
Alex Rudenko
1668d47b2f
docs: various doc improvements (#9396)
See commits for details.

Closes #1837, #5880, #7822, #8101, #8821, #9367, #9382, #9378, #4731
2022-12-09 13:57:39 +01:00
Nikolay Vitkov
89ff872120
chore: Update CI file to use new set method (#9389)
Closes #9373,
Fixes #9296
2022-12-09 10:49:53 +01:00
Thibaud Colas
afc75884d7 docs: fix documentation typo in Page.waitForSelector optional visible parameter (#9381)
**What kind of change does this PR introduce?**

Typo fix in the documentation

**Did you add tests for your changes?**

No

**If relevant, did you update the documentation?**

N/A

**Summary**

I spotted the `Visible` parameter had an uppercase `V` in the [Remarks
section of the Page.waitForSelector API
documentation](https://pptr.dev/api/puppeteer.page.waitforselector#remarks).
Updated this to the lowercase `v` in the relevant places (source,
documentation, versioned version of the doc page).

While doing this, I also spotted there was an extra space in `are :` in
the sentence above – so changed that as well.

**Does this PR introduce a breaking change?**

No

**Other information**

I’ve confirmed the parameter is spelled correctly on
https://pptr.dev/api/puppeteer.waitforselectoroptions. I’m not sure why
the documentation for those properties is in two places with slightly
different wording – but to me it felt useful to see this directly on the
method’s API docs.
2022-12-08 13:59:18 +01:00
Nikolay Vitkov
1875da6191
feat(chromium): roll to Chromium 109.0.5412.0 (r1069273) (#9364)
Closes #9233
2022-12-07 14:54:00 +01:00
Robin Richtsfeld
1501edefa8
docs(requestinterception): remove outdated note (#9358)
See #7304 @jschfflr Seems like we missed some
Thanks to @chrismdd for spotting this
2022-12-07 07:33:27 +00:00