Commit Graph

912 Commits

Author SHA1 Message Date
Yanzhen Yu
9d6696befd add isShadow flag if a node is under shadow root 2021-03-28 17:49:41 +08:00
Lucky Feng
e3f9a4d205 fix: inaccurate mouse position (#522)
1. Position of mouse was inaccurate when replaying and this PR will fix it.
2. Fix the bug that if one nested iframe has a scale transform and the position of mouse was inaccurate as well.
2021-03-25 10:29:49 +08:00
Yanzhen Yu
ac60676321 rename node_modules in es bundle to ext 2021-03-21 14:53:51 +08:00
Yanzhen Yu
5f96f775e8 update typings 2021-03-21 14:50:35 +08:00
Yanzhen Yu
1192735af4 Release 1.1.0 2021-03-21 14:50:01 +08:00
Lucky Feng
2260806ff3 fix: errors of replaying iframe records (#520)
* fix: errors of replaying iframe records

error1:
HierarchyRequestError: Failed to execute 'appendChild' on 'Node': Nodes of type '#document' may not be inserted inside nodes of type '#document-fragment'.
code: parent.appendChild(target)

error2:
Uncaught DOMException: Failed to execute 'appendChild' on 'Node': Only one element on document allowed.
code: parent.appendChild(target);

* improve the comment for bugfix
2021-03-19 11:48:12 +08:00
Yanzhen Yu
88f348a57b snapshot and rebuild shadow DOM
https://github.com/rrweb-io/rrweb/issues/38
2021-03-13 20:46:18 +08:00
Yakko Majuri
fe6341eefc Handle event undefined in initMoveObserver (#515) 2021-03-09 21:25:55 +08:00
Yanzhen Yu
f3e118ef39 add an experiment config to set max speed in fast forward 2021-03-08 14:11:56 +08:00
Yanzhen Yu
34588c451b Release 0.7.1 2021-03-08 13:59:40 +08:00
Yanzhen Yu
ddc164e2b3 upgrade rrweb 2021-03-08 13:56:54 +08:00
Yanzhen Yu
6272f0f797 update rollup config to fix breaking change in css.write
fix #58
fix https://github.com/rrweb-io/rrweb/issues/496
2021-03-08 13:53:57 +08:00
arshabh-copods
a33eb867f3 Update observer.md (#504)
Fixed some grammatical errors
2021-03-08 13:33:21 +08:00
Yanzhen Yu
2e723a2010 impl #507 export takeFullSnapshot as a public API 2021-03-08 13:30:54 +08:00
Yanzhen Yu
fc4dc95714 add hiring link 2021-03-05 14:54:05 +08:00
Yanzhen Yu
34651c40fe fix lint errors 2021-02-27 18:21:54 +08:00
Yanzhen Yu
cf5c34592e add typings script to prepack 2021-02-27 18:00:56 +08:00
Eoghan Murray
4bf3073d80 Found an example in the wild of the deprecated pre-css way of adding a background image to table cells (#69) 2021-02-27 17:59:42 +08:00
Yanzhen Yu
2214e4fcfb update test snapshot 2021-02-27 13:49:12 +08:00
Yanzhen Yu
2c6be72f35 close #491 check whether link node is head 2021-02-27 13:46:29 +08:00
Yanzhen Yu
860ff38e90 close #501 do not count attach iframe event in checkout 2021-02-27 13:32:21 +08:00
Yanzhen Yu
8307c87ced using for loop instead of forEach in element classlists
pick #64 and close #68
2021-02-25 21:15:14 +08:00
Province Innovation
dbdf58a29d Valid tag names can include any digit [0-9] (#66) 2021-02-25 09:49:47 +08:00
Season
e5587435a0 update guide 2021-02-20 18:26:50 +08:00
Justin Halsall
aee3c1605c allow goto to specify if it should play or pause 2021-02-19 12:50:22 +01:00
Justin Halsall
2ad7be639b Adding prepare & prepack npm statement (#67)
* Add prepare & prepack

* Create .npmignore

* remove node_modules, they might be needed
2021-02-19 12:02:13 +08:00
Justin Halsall
918f7f36fe Add yarn support for installing unreleased rrweb as a dependency (#497)
* Use prepack instead of prepare for yarn support

* add prepare and prepack

for yarn v1 & v2 compatibility

* Create .npmignore
2021-02-19 11:57:01 +08:00
Province Innovation
75e4a0c1ff Added mousemoveCallback threshold option to sampling config. (#492)
* Added mousemoveCallback threshold option to sampling config.

* Added mousemoveCallback to definitions file.
2021-02-19 11:56:12 +08:00
Filip Slatinac
7bf1b450f6 Adding prepare npm statement (#490)
* added prepare statement

* using master rrweb snapshot

Co-authored-by: filip slatinac <filipslatinac@MacBook-Pro-2.local>
2021-02-18 21:15:01 +08:00
Yanzhen Yu
1dd393a2de upgrade rrweb-snapshot to 1.0.7 2021-02-18 12:05:31 +08:00
Yanzhen Yu
2a9057d4f2 Release 1.0.7 2021-02-18 12:00:16 +08:00
Yanzhen Yu
a591a53195 safe access iframe document 2021-02-18 11:59:41 +08:00
Yanzhen Yu
2a3f40669b start impl rrdom 2021-02-13 21:52:06 +08:00
Moji Izadmehr
924a4c8986 Add prettier as a dependency (#487) 2021-02-13 21:50:03 +08:00
Eoghan Murray
28fd169a5a remove debugging warning (#486)
I can't see a reason for the warning here so believe it's a debugging statement that crept in?
2021-02-12 21:56:19 +08:00
yz-yu
f3d7fa3451 Impl record iframe (#481)
* Impl record iframe

* iframe observe

* temp: add bundle file to git

* update bundle

* update with pick

* update bundle

* fix fragment map remove

* feat: add an option to determine whether to pause CSS animation when playback is paused (#428)

set pauseAnimation to true by default

* fix: elements would lose some states like scroll position because of "virtual parent" optimization (#427)

* fix: elements would lose some state like scroll position because of "virtual parent" optimization

* refactor: the bugfix code

bug: elements would lose some state like scroll position because of "virtual parent" optimization

* fix: an error occured at applyMutation(remove nodes part)

error message:
Uncaught (in promise) DOMException: Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node

* pick fixes

* revert ignore file

* re-impl iframe record

* re-impl iframe replay

* code housekeeping

* move multi layer dimension calculation to replay side

* update test cases

* teardown test server

* upgrade rrweb-snapshot with iframe load timeout

Co-authored-by: Lucky Feng <yun.feng@smartx.com>
2021-02-10 21:44:25 +08:00
Yanzhen Yu
1ad1e524e3 Release 1.0.6 2021-02-10 21:28:10 +08:00
Yanzhen Yu
d7668efbcf add iframe load timeout 2021-02-10 21:26:07 +08:00
Karl-Aksel Puulmann
5021c7a606 Fix RangeError: Maximum call stack size exceeded (#479)
Saw this line cause issues in production, causing the following error:

```
RangeError Maximum call stack size exceeded
```

I believe this is caused by javascript engine max argument length - see note from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/apply#using_apply_and_built-in_functions

> The consequences of applying a function with too many arguments (that is, more than tens of thousands of arguments) varies across engines. (The JavaScriptCore engine has hard-coded argument limit of 65536.
2021-02-08 21:37:35 +08:00
zzq0826
cc15be1e88 update guide (#483) 2021-02-08 16:31:28 +08:00
Yanzhen Yu
1dbe2c1218 Release 1.0.5 2021-02-07 14:01:45 +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
34c74445ba read __rrMutationObserver from window 2021-02-04 15:00:14 +08:00
Yanzhen Yu
a3ff5e5ea8 Release 1.0.4 2021-02-04 14:49:20 +08:00
Yanzhen Yu
c7f4c36702 fix href value 2021-02-04 14:48:28 +08:00
Eoghan Murray
289956b43d Don't remove the style attributes altogether from tests; they are an important part of the mutations (#468)
These were removed in 8ed1c999cf in order to smooth over differences in test environments
so have maintained that by converting pixel values to 'Npx' (could also try rounding, but didn't attempt that)
2021-01-31 21:44:09 +08:00
Eoghan Murray
9187bec814 Discovered that the common case of mouse movement or scrolling happening during takeFullSnapshot was causing mutations to be immediately emitted, contrary to the goal of https://github.com/rrweb-io/rrweb/pull/385 (#470) 2021-01-31 21:43:36 +08:00
Yanzhen Yu
13f1a61743 fix #469 try to get original MutationObserver
We found Angular's zone module will patch MutationObserver which
make the browser hang in some scenarios.
Reference: angular/angular#26948
2021-01-22 12:50:54 +08:00
Eoghan Murray
d518c08ad2 Tweaks to timings to get tests passing on my dev laptop (#466)
* Tweaks to timings to get tests passing on my dev laptop - hopefully this makes tests more deterministic

* Okay understand what's going on now that the test has run in the travis environment
2021-01-20 23:34:29 +08:00
Yanzhen Yu
4a73f6de1c Release 0.9.14 2021-01-16 22:33:28 +08:00