Filip Slatinac
1467f97f43
Added srcset support ( #18 )
...
* added src set as a parsed attribute
* added tests
* changed to /a
* added multiple attribute handling
* added better comment
* made snapshot ignore invalid input as if it is invalid input in the original DOM, it should stay invalid in the recreated DOM
* added extra absolute test case
* code style
* addressed comments
2026-04-01 12:00:00 +08:00
Yanzhen Yu
1fc66ffcc5
fix data url regexp
2026-04-01 12:00:00 +08:00
Yanzhen Yu
2ba72c3a29
pass mask all input option recursively
2026-04-01 12:00:00 +08:00
Yanzhen Yu
6457f9ff62
fix #14 fix innerText cap issue
2026-04-01 12:00:00 +08:00
Yanzhen Yu
6ecaaa2560
add mask all inputs option to snapshot
2026-04-01 12:00:00 +08:00
Yanzhen Yu
1a3b17bae4
format code
2026-04-01 12:00:00 +08:00
Benoît Zugmeyer
ad816f7b7f
reuse serialized nodes ids ( #12 )
...
* reuse serialized nodes ids
With this patch, each DOM node keeps its id during its existence. This
allows to apply RRWeb events to previous snapshots if needed.
`resetId` has been removed because it loses its meaning: calling it
would not reset the existing nodes ids anymore, only the new ones.
Since we don't reset the id anymore, we may exhaust the available ids
quicker, but Number.MAX_SAFE_INTEGER (2 ** 53 - 1) is pretty large, so I
doubt this'll cause any problem.
* improv TS typing
The `nAsINode` variable was not very elegant. Simplify this by removing
the cast, and make the INode interface compatible with Node.
* update typings
2026-04-01 12:00:00 +08:00
Yanzhen Yu
cf5e17503d
pass inline stylesheet option to iteratly
2026-04-01 12:00:00 +08:00
Yanzhen Yu
c4da047b9f
add inline option which can bypass the inline stylesheet
2026-04-01 12:00:00 +08:00
Whalefreezer
68b97e40a2
add support for css @import rules ( #11 )
2026-04-01 12:00:00 +08:00
Yanzhen Yu
11f8a78f71
update typings
2026-04-01 12:00:00 +08:00
Yanzhen Yu
b72e01c2fc
accept RegExp type block class config
2026-04-01 12:00:00 +08:00
Sam Mason
e21921a2da
Make block css class optional & fix test ( #6 )
...
* Make block class optional
* Fix test by removing unexpected space space
2026-04-01 12:00:00 +08:00
Yanzhen Yu
29f2e42978
iterate style element to get css rules string
2026-04-01 12:00:00 +08:00
Yanzhen Yu
67027d8be6
handle empty url path
2026-04-01 12:00:00 +08:00
Yanzhen Yu
205d3b4aeb
fix the format and use window.location
2026-04-01 12:00:00 +08:00
Daniël van de Giessen
4ed15164c9
Fixed detection of multiple consecutive CSS URLs without quotes ( #4 )
2026-04-01 12:00:00 +08:00
Daniël van de Giessen
61c50c2122
Parse style attributes for absolute URL paths ( #5 )
2026-04-01 12:00:00 +08:00
Yanzhen Yu
ca8288802f
do not add origin before data uri image
2026-04-01 12:00:00 +08:00
Yanzhen Yu
259a929a76
delete not needed props
2026-04-01 12:00:00 +08:00
Yanzhen Yu
2d1d3596b8
handle block element
2026-04-01 12:00:00 +08:00
Yanzhen Yu
cdedca1716
complately update relative path regexp
2026-04-01 12:00:00 +08:00
Yanzhen Yu
08bee23494
fix absolute to doc
2026-04-01 12:00:00 +08:00
Yanzhen Yu
7cb33bfe80
fix css url regexp
2026-04-01 12:00:00 +08:00
Yanzhen Yu
c936cb6626
absolute relative path in inline stylesheet
2026-04-01 12:00:00 +08:00
Yanzhen Yu
e9786e7596
check is svg when serialization
2026-04-01 12:00:00 +08:00
Yanzhen Yu
2065e00c5d
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.
2026-04-01 12:00:00 +08:00
Yanzhen Yu
efcbd0faf1
add hover class to :hover related css rules
2026-04-01 12:00:00 +08:00
Yanzhen Yu
b964d18ef7
allow skip child when serialize node and rebuild node
2026-04-01 12:00:00 +08:00
Yanzhen Yu
9a4c21c30f
refactor rebuild implementation which mount DOM onto the target document object
2026-04-01 12:00:00 +08:00
Yanzhen Yu
349d78e02b
fix style content url normalizer and add some tests
2026-04-01 12:00:00 +08:00
Yanzhen Yu
bbf23157c5
export reset id function
2026-04-01 12:00:00 +08:00
Yanzhen Yu
875385552d
impl the extra child data attribute to align id map
2026-04-01 12:00:00 +08:00
Yanzhen Yu
e7753e1c24
change relative path into absolute path
2026-04-01 12:00:00 +08:00
Yanzhen Yu
9cf2c4c7ed
export serializeNodeWithId so rrweb could serialize newly added nodes
2026-04-01 12:00:00 +08:00
Yanzhen Yu
cfc8798b53
return id node map when snapshot
2026-04-01 12:00:00 +08:00
Yanzhen Yu
ac5293f162
add strict null check and fix codes
2026-04-01 12:00:00 +08:00
Yanzhen Yu
9e3e590935
add iframe tests and update urls in test file
2026-04-01 12:00:00 +08:00
Yanzhen Yu
51737d9b53
try to inline linked stylesheet when in same origin
2026-04-01 12:00:00 +08:00
Yanzhen Yu
e9cf631934
replace script tag with noscript and inline the states of form field components
2026-04-01 12:00:00 +08:00
Yanzhen Yu
a71fb73aaf
basic rebuild implementation
2026-04-01 12:00:00 +08:00