Yanzhen Yu
86ad633080
add travis build
2018-11-01 14:58:37 +08:00
Yanzhen Yu
25cd87ddf7
bump 0.5.0
2018-11-01 13:32:26 +08:00
Yanzhen Yu
e9add18029
Implement #2 : simulate hover event
2018-11-01 13:31:09 +08:00
Yanzhen Yu
77dcfd8360
add select2.html snapshot test
2018-10-31 16:58:08 +08:00
Yanzhen Yu
8f22a1b92f
implement pause which has a better performance than play at some time offset
2018-10-31 16:43:49 +08:00
Yanzhen Yu
b3c8e2a8d6
bump 0.4.3
2018-10-31 12:26:26 +08:00
Yanzhen Yu
cff1617959
fix mutation filter in recorder and change the order of apply mutations in replayer
...
This change include two critical fix for both recorder and replayer.
In the recorder, previously we filter text and attribute mutations by check its target id,
but this was a wrong approach because removed node also has id at the callback moment.
We corrected this by checking whether the mirror map still has the target id in its keys.
In the replayer side, the issue was we got exceptions when calling insertBefore which says
the ref node was not the child node of the caller node. This will happen when the previous
or next sibling has been removed in the same callback but the previousId or nextId was
recorded.
After apply remove node mutations before add node mutations, we can make sure the removed
siblings will not exist in the mirror map when apply add node mutations. When we get node
from mirror map with an removed id, we will get null and pass it to insertBefore which
is valid.
As a side note, this apply order is safe because we ensured all the remove node mutations
do not include removing newly added nodes in the same callback.
2018-10-31 12:06:41 +08:00
Yanzhen Yu
8acf670a99
add a has method to mirror for checking whether an id is in the map
2018-10-31 12:06:32 +08:00
Yanzhen Yu
7b9e57bd6c
filter text and attributes mutations which target tot a removed node
2018-10-23 11:48:48 +08:00
Yanzhen Yu
68949a08c3
check added nodes from removed nodes and dropped nodes
2018-10-23 11:28:15 +08:00
Yanzhen Yu
d588f738b8
rewrite mutation observer handler with lazy child list calculation
2018-10-22 23:08:05 +08:00
Yanzhen Yu
a88a79d821
add meta event and fix childList observer, also update related replayer
2018-10-22 10:48:56 +08:00
Yanzhen Yu
6c8cf5c379
implemented the play any offset feature
2018-10-18 16:24:01 +08:00
Yanzhen Yu
8186f05e1c
export more props of replayer to the UI
2018-10-17 17:47:38 +08:00
Yanzhen Yu
d827fdc947
impl dynamic config and pause. Bump 0.3.0
2018-10-16 15:31:56 +08:00
Yanzhen Yu
49cd7b4db3
align id map by skip extra added nodes
2018-10-16 15:29:52 +08:00
Yanzhen Yu
a98df40c93
update id map when DOM changed and handle element scroll event
2018-10-15 19:28:36 +08:00
Yanzhen Yu
ee06fbcda4
update rollup config so we can benefit from tree shaking
2018-10-15 18:29:44 +08:00
Yanzhen Yu
4ae4222bc3
add test infra and a basic record integration test
2018-10-15 17:21:14 +08:00
Yanzhen Yu
2816726e23
impl replay the mutations and mouse interactions
2018-10-15 12:37:47 +08:00
Yanzhen Yu
95713f1ea7
apply viewport resize and input event changes
2018-10-12 16:04:07 +08:00
Yanzhen Yu
f4bf94aa2d
use raf to impl a more accurate timer and replay events async
2018-10-12 14:30:44 +08:00
Yanzhen Yu
e93fd177be
import snapshot rebuilder into replayer
2018-10-12 13:33:53 +08:00
Yanzhen Yu
85a56d2047
fix scroll value and record viewport when loaded
2018-10-12 13:08:03 +08:00
Yanzhen Yu
c07cce74bf
improve record method and bump 0.2.0
2018-10-11 17:30:54 +08:00
Yanzhen Yu
215b2b319b
update bundle configs
2018-10-11 16:46:34 +08:00
Yanzhen Yu
40f29e5353
add input event observer and hook the value setter
2018-10-11 16:12:32 +08:00
Yanzhen Yu
46ab1d6e80
serialize newly added nodes and update id node map when childList changed
2018-10-09 10:52:20 +08:00
Yanzhen Yu
1f10b70d30
add scroll and viewport resize observers
2018-10-09 10:33:24 +08:00
Yanzhen Yu
64d4c541ee
add mouse interactions observer
2018-10-08 18:37:40 +08:00
Yanzhen Yu
a33b24a676
add mouse movement observer
2018-10-08 17:46:15 +08:00
Yanzhen Yu
427acff3d6
change observed mutations into serializable records
2018-10-08 15:47:21 +08:00
Yanzhen Yu
f8079fbea7
init the repo and integrate rrweb-snapshot
2018-10-06 23:26:52 +08:00