Commit Graph

86 Commits

Author SHA1 Message Date
Yanzhen Yu
661fa6c7eb Add missingNodeRetryMap
Use a global missing node retry map to handle missing node that
has not been resolved in the same round.
2018-12-20 14:46:58 +08:00
Yanzhen Yu
8aa7702940 init chinese guide 2018-12-19 18:36:53 +08:00
Yanzhen Yu
fc4e5164a2 rename record only bundle iife name 2018-12-18 17:52:17 +08:00
Yanzhen Yu
ebe3dc8f94 add README in English 2018-12-17 16:17:16 +08:00
Yanzhen Yu
bd0e6c98d3 Release 0.6.7 2018-12-14 14:12:07 +08:00
Yanzhen Yu
df1b3d50b7 fix resume to move baseline time by time offset 2018-12-14 14:11:49 +08:00
Yanzhen Yu
a5d0eaa451 only add click animation when cast is not sync 2018-12-14 13:52:47 +08:00
Yanzhen Yu
0892df5512 Release 0.6.6 2018-12-14 13:43:37 +08:00
Yanzhen Yu
b9e4117810 fix timer requestAnimationFrame call may not stop after clear
Before this patch, the checker in the timer will stop only when
actions array is empty.
When we call play more than once, it will clear the timer first,
then  push filtered new actions and start the timer again. If
all of this happened in a frame, the checker which should be
cleared may found actions array is not empty and keep check.
So this patch we use timer.raf to hold raf's handle and cancel
it when clear was called.
2018-12-14 13:37:00 +08:00
Yanzhen Yu
6e41bc3bfa add some unit tests to replayer 2018-12-14 13:35:10 +08:00
Yanzhen Yu
2946e11d90 Release 0.6.5 2018-12-07 17:16:24 +08:00
Yanzhen Yu
c5998d70a3 prevent scroll when dispatch focus 2018-12-07 17:16:01 +08:00
Yanzhen Yu
fda6d1c873 emit pause and resume events 2018-12-06 18:04:40 +08:00
Yanzhen Yu
9d627d1912 fix mouse move time offset may be mutated multiple times 2018-12-06 17:29:19 +08:00
Yanzhen Yu
af44982a79 update puppeteer to use setContent with wait and housekeeping the declaration files 2018-12-03 13:10:06 +08:00
Yanzhen Yu
8da0989710 Release 0.6.4 2018-12-02 23:24:16 +08:00
Yanzhen Yu
2c9db926c0 resolve #1 add ignore and block strategy for privacy purpose 2018-12-02 23:23:21 +08:00
Yanzhen Yu
78967192fc return stopper function as the result of record 2018-12-02 22:37:28 +08:00
Yanzhen Yu
b7e7f12d32 new sandbox strategy
In this commit we switched the sandbox strategy to use iframe's
sandbox attribute. Indeed we do not need delegate event anymore,
but need to add some styles into the iframe.
The details were documented in the sandbox part of internal design.
2018-11-27 17:04:30 +08:00
Yanzhen Yu
b3edcb30ad fix script tag in repl mode 2018-11-27 15:18:37 +08:00
Yanzhen Yu
f2e7f2b346 Release 0.6.3 2018-11-27 13:35:02 +08:00
Yanzhen Yu
be73853bff add release-it config 2018-11-27 13:34:50 +08:00
Yanzhen Yu
2c0a0edf36 basic impl of wait for stylesheet loaded 2018-11-26 18:19:07 +08:00
Yanzhen Yu
9228a8f04a Release 0.6.2 2018-11-23 23:18:11 +08:00
Yanzhen Yu
2ed5a41708 update dependency 2018-11-23 23:15:51 +08:00
Yanzhen Yu
5b61d98f8b check interaction target before apply 2018-11-23 20:02:18 +08:00
Yanzhen Yu
86286ddb94 check parentNode when calling insertBefore
When add new nodes, we may use insertBefore API to insert node before
its next sibling. But the sibling may not in the DOM tree at that
moment if it was in the missing node map.
2018-11-23 18:08:37 +08:00
Yanzhen Yu
eab30bd274 improve prevent default event when replay 2018-11-23 18:06:19 +08:00
Yanzhen Yu
17fe17b452 add sourcemap for terser bundles 2018-11-23 16:12:24 +08:00
Yanzhen Yu
7343ce4719 refactor the repl tool to support multipage apps and better dev 2018-11-23 16:01:55 +08:00
Yanzhen Yu
181c8e1d5d fix timer clear method with do not reassign actions pointer 2018-11-23 14:22:18 +08:00
Yanzhen Yu
e20b8ae8f1 do not auto inject stylesheet 2018-11-21 19:23:42 +08:00
edwardwu
6382315d43 resolve #4 Improve timer's performance by storing all callbacks in an array (#5) 2018-11-16 21:53:59 +08:00
Yanzhen Yu
2bf412c446 add bundle watch 2018-11-16 16:09:55 +08:00
Yanzhen Yu
40e030eda1 ignore href in integration test to avoid fail when code changed 2018-11-14 14:25:11 +08:00
Yanzhen Yu
8b4eb5caf0 fix repl rollup config 2018-11-14 13:15:37 +08:00
Yanzhen Yu
7845e74ae5 extract css by rollup plugin 2018-11-13 23:04:43 +08:00
Yanzhen Yu
a5010a7e68 Release 0.6.1 2018-11-13 19:50:33 +08:00
Yanzhen Yu
7ecd59a145 update bundle config 2018-11-13 19:47:28 +08:00
Yanzhen Yu
ef6d50c9e7 bump 0.6.0 2018-11-13 16:27:21 +08:00
Yanzhen Yu
4a7e1e70c6 update test command 2018-11-13 16:26:11 +08:00
Yanzhen Yu
69c6d96455 update dependencies
In this commit, we updated rrweb-snapshot to 0.6.0 which including
a breaking change in data structure.
2018-11-13 16:21:05 +08:00
Yanzhen Yu
e52ce9e380 fix file link 2018-11-08 17:04:18 +08:00
Yanzhen Yu
3fa9da75ec add internal design docs 2018-11-08 16:52:53 +08:00
Yanzhen Yu
fc4804c8bc prevent form and a tag default behaviour 2018-11-06 14:23:55 +08:00
Yanzhen Yu
c91a3a3af6 add a repl mode for quick test 2018-11-06 14:23:30 +08:00
Yanzhen Yu
b9fc4253ae add chinese README 2018-11-05 20:06:54 +08:00
Yanzhen Yu
4709c720cd also resolve missing previous node 2018-11-05 13:20:42 +08:00
Yanzhen Yu
f1930490b8 bump 0.5.1 2018-11-02 19:35:51 +08:00
Yanzhen Yu
0fb8fc4e0b Fix add node logic with missingNextNodeMap
This patch include a breaking change to the recorder's event data.

We used to consider mirror.getId will always return the id of the
target node because we keep serialize every node. But if we call
mirror.getId before serialization then bug happened. This could
happen when we get nextId of newly added nodes if its next sibling
was also newly added.
So we have to return -1 as the id of node which was not serialized
and when we building added nodes in the replayer we should handle
this.

For example, nodes el1, el2 were added together and el1's nextId
will be -1 since el2 was not serialized at that moment. Now we
call el1 as a 'missing next node' and not append it into the DOM
tree after building, instead we store it in a missingNextNodeMap.
After a added node in the same mutation was successfully appened
we will check whether it has a previous id and the id was pointed
to some nodes in the map, if so, we will insert that node before
it and delete the node from map.
2018-11-02 19:23:03 +08:00