inlineImages: Setting of image.crossOrigin is not always necessary (#1468)
Setting of the `crossorigin` attribute is not necessary for same-origin images, and causes an immediate image reload (albeit from cache) necessitating the use of a load event listener which subsequently mutates the snapshot. This change allows us to avoid the mutation of the snapshot for the same-origin case. * Modify inlineImages test to remove delay and show that we can inline images without mutation * Add an explicit test for when the `image.crossOrigin = 'anonymous';` method is necessary. Uses a combination of about:blank and our test server to simulate a cross-origin context * Other test changes: there were some spurious rrweb mutations being generated by the addition of the crossorigin attribute that are now elimnated from the rrweb/__snapshots__/integration.test.ts.snap after this PR - this is good
This commit is contained in:
6
.changeset/inlineImage-maybeNot-crossOrigin.md
Normal file
6
.changeset/inlineImage-maybeNot-crossOrigin.md
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
"rrweb": patch
|
||||
"rrweb-snapshot": patch
|
||||
---
|
||||
|
||||
inlineImages: during snapshot avoid adding an event listener for inlining of same-origin images (async listener mutates the snapshot which can be problematic)
|
||||
Reference in New Issue
Block a user