Commit Graph

34 Commits

Author SHA1 Message Date
Yanzhen Yu
88f348a57b snapshot and rebuild shadow DOM
https://github.com/rrweb-io/rrweb/issues/38
2021-03-13 20:46:18 +08:00
yz-yu
98aa732d17 nested record iframe (#63)
* pick nested branch

* iframe snapshot

* temp: add bundle file to git

* revert ignore file

* refactor iframe impl
1. do callback one iframe is loaded, let rrweb handle the rest
2. handle iframe as normal element in rebuild

* rename hook function
2021-02-07 14:00:22 +08:00
Yanzhen Yu
852632656f refactoring public API 2020-11-29 13:22:01 +08:00
Yanzhen Yu
8565b0d692 close #42 fallback to html when doctype is invalid 2020-09-06 16:59:03 +08:00
Yanzhen Yu
e54218be19 provide a general visit function to modify rebuilt id node map 2020-08-22 15:43:50 +08:00
吴泽康
f7d43f5fee Add nested scroll support (#31) 2020-07-25 15:05:45 +08:00
Eoghan Murray
c14242e932 Avoid more common causes of 'blocked script execution' console.error messages in Chrome which are not exceptions (but look like them): (#30)
'Blocked script execution in '<page>' because the document's frame is sandboxed and the 'allow-scripts' permission is not set'
2020-03-26 23:15:41 +08:00
Yanzhen Yu
a7a3a76af1 add media state check 2020-01-12 18:01:37 +08:00
Yanzhen Yu
0b3b630c60 format code 2019-11-09 15:21:36 +08:00
吴泽康
358d5e0d50 Add canvas image content support (#20)
* Add canvas image content support

* use rr_dataURL as the key so we know its a rrweb-added attribute.

* fix canvas rr_dataURL rebuild
2019-10-12 17:02:24 +08:00
yz-yu
215aeeb6b1 add the HACK_CSS flag to bypass css parsing (#16) 2019-08-27 13:42:07 +08:00
dphuang2
4248b3d2a9 Ignore broken CSS (#15)
Broken CSS inside a page will throw an error on our behalf. This should
be ignored because we are not in control of the CSS on the page we are
recording.
2019-08-10 10:13:03 +08:00
Yanzhen Yu
ada77fe861 remove child node before set default value 2019-08-07 23:38:09 +08:00
Yanzhen Yu
61a99c642a Use css parser to add hover class name to selectors.
Previously we use a regexp to match all the CSS selectors and add
our hover class name to it, which has been proved not solid and
may be very slow in some situation.
Using a production ready css parser can handle this better and also
provide ability's to do more accurate things to the recorded
stylesheets.
2019-08-04 14:35:35 +08:00
Razvan Sandu
9b0c92fd67 Allow rendering image tags inside svgs during replay (#13) 2019-05-23 18:18:10 +08:00
Yanzhen Yu
687c710fe9 iterate style element to get css rules string 2019-02-17 16:34:28 +08:00
Yanzhen Yu
9854e5cf31 add camel case svg element tag names to tag map 2018-12-27 12:53:07 +08:00
Yanzhen Yu
6a910d3eaa close before open to make sure document was closed 2018-12-21 22:32:01 +08:00
Yanzhen Yu
d8c5ae5ae6 handle block element 2018-12-02 23:06:36 +08:00
Yanzhen Yu
e55b917590 remove _cssText attribute from style element 2018-11-27 15:22:06 +08:00
Yanzhen Yu
e198ea494e ignore iframe src attribute 2018-11-27 14:39:13 +08:00
Yanzhen Yu
8157b38f99 check is svg when serialization 2018-11-13 16:09:57 +08:00
Yanzhen Yu
216d03dae3 Fix the regexp performance issue
Also move the addHoverClass implementation into the rebuild stage.
So if there is still some corner case we have not handled, it will
only affect the replayer part of rrweb.
2018-11-01 11:36:25 +08:00
Yanzhen Yu
2a50fff366 allow skip child when serialize node and rebuild node 2018-10-22 23:03:10 +08:00
Yanzhen Yu
508bbdfc26 refactor rebuild implementation which mount DOM onto the target document object 2018-10-22 10:34:23 +08:00
Yanzhen Yu
202a674636 use document object from params instead of the one in the current scope 2018-10-21 22:36:07 +08:00
Yanzhen Yu
e461136f71 impl the extra child data attribute to align id map 2018-10-16 15:18:07 +08:00
Yanzhen Yu
ffc2b01796 add data attribute to element when rebuild 2018-10-12 15:57:39 +08:00
Yanzhen Yu
1ddb0a3343 return id node map when rebuild 2018-10-12 12:43:16 +08:00
Yanzhen Yu
978e12b089 add strict null check and fix codes 2018-10-08 11:20:48 +08:00
Yanzhen Yu
8b82981b62 try to inline linked stylesheet when in same origin 2018-10-05 23:06:51 +08:00
Yanzhen Yu
05e4103f7a replace script tag with noscript and inline the states of form field components 2018-09-30 17:38:44 +08:00
Yanzhen Yu
7d1cf13266 setup tests 2018-09-30 16:20:53 +08:00
Yanzhen Yu
3edd364c3b basic rebuild implementation 2018-09-30 15:26:00 +08:00