Andrey Lushnikov
55acae40fd
Introduce DEBUG module which traces public API calls
...
This patch improves on DEBUG module to trace all puppeteer's
public API calls.
References #89 .
2017-07-18 21:06:03 -07:00
Pavel Feldman
bef9982687
Simplify waitFor code ( #92 )
2017-07-18 12:16:19 -07:00
JoelEinbinder
28265fc313
Fix frame.waitFor to work with complex selectors ( #90 )
...
The frame.waitFor didn't account for multi-level selectors.
This patch fixes this, executing document.querySelector on every DOM mutation.
2017-07-18 02:10:02 -07:00
Andrey Lushnikov
1a97d8b3c2
Teach 'consolemessage' event to send all the arguments
...
This patch fixes 'consolemessage' event so that it passes
over all the arguments of console API call.
2017-07-17 20:22:45 -07:00
JoelEinbinder
117a128b42
Introduce Page.$ and Page.$$ ( #75 )
...
This patch introduces Page.$ and Page.$$ methods which are
aliases for `document.querySelector` and `document.querySelectorAll`.
Fixes #78 .
2017-07-17 18:56:56 -07:00
Aleksey
ac75455983
Fixed page.waitFor ( #81 )
...
The original implementation didn't account for frames.
2017-07-14 15:55:38 -07:00
Andrey Lushnikov
76415e1be5
[doc] distinct naming for functions which are evaluated in page context
...
This patch renames all the function parameters which are executed in
page context into 'pageFunction'.
2017-07-14 13:51:22 -07:00
Andrey Lushnikov
235001bab3
[doclint] validate return statements
...
This patch teaches doclint to validate presence of return statements.
It also adds a bunch of documentation to the api.md.
References #14 .
2017-07-14 13:04:15 -07:00
Aleksey
b77ae4b77c
Properly cleanup FrameManager._frameIdToExecutionContextId. ( #73 )
2017-07-11 21:52:09 -07:00
Aleksey
090ecfa6b9
Added frame.waitFor(selector) ( #59 )
...
This patch adds `frame.waitFor(selector)` method.
Fixes #42 .
2017-07-08 01:39:02 +03:00
Andrey Lushnikov
19e882f505
fix switch statement indentation in FrameManager
2017-07-06 10:46:19 -07:00
Andrey Lushnikov
773a09a8cf
Add support for unserializable values in Page.evaluate
...
This patch adds support for unserializable return values in
Page.evaluate.
Currently, these values are:
- NaN
- Infinity
- -Infinity
- -0
Fixes #51 .
2017-07-06 10:41:01 -07:00
Andrey Lushnikov
a35a21dfaf
Implement NetworkManager
...
This patch implements NetworkManager, which encapsulates all the
interaction with Network domain.
The NetworkManager also uses partial implementation of Request and
Response classes, defined in the Fetch API specification.
References #26
2017-06-29 11:49:56 -07:00
Andrey Lushnikov
3d90ea38a9
Implement Frame.evaluate
...
This patch implements Frame.evaluate method.
References #4 .
2017-06-27 14:57:14 -07:00
Andrey Lushnikov
819fa355f4
Convert var's to let's
...
This patch:
- converts all var's to let's throughout the codebase
- enforces the let's over var's via the eslint rule
2017-06-22 14:58:39 -07:00
Pavel Feldman
cf35524285
Foramt JSDocs for 2 spaces
2017-06-21 14:11:52 -07:00
Pavel Feldman
437a93b26e
Reformat code using 2 spaces
2017-06-21 14:11:52 -07:00
Pavel Feldman
84bc09bce1
Revert "Reformat codebase into 2-spaces"
...
This reverts commit d0d1ee303e
.
2017-06-21 14:11:52 -07:00
Andrey Lushnikov
448ac4ce64
Reformat codebase into 2-spaces
...
This patch:
- reformats codebase to use 2-spaces instead of 4. This will
align the project with other codebases (e.g. DevTools and Lighthouse)
- enables eslint indentation checking
References #19
2017-06-21 14:11:52 -07:00
Andrey Lushnikov
175963182e
Implement FrameManager
...
This patch implements FrameManager which is responsible for maintaining
the frame tree. FrameManager is quite basic: it sends FrameAttached,
FrameDetached and FrameNavigated events, and can report mainFrame and
all frames.
The next step would be moving certain Page API's to the Frame. For
example, such method as Page.evaluate, Page.navigate and others should
be available on Frame object as well.
References #4
2017-06-21 14:11:52 -07:00