From b7b05be5a209aba8b3fbb5e70885a547e5daabb4 Mon Sep 17 00:00:00 2001 From: Billy Vong Date: Mon, 13 Feb 2023 10:37:50 -0500 Subject: [PATCH] fix: Exclude `modulepreload` as well We were only excluding `` but we should include `rel="modulepreload"` as well --- packages/rrweb-snapshot/src/rebuild.ts | 2 +- packages/rrweb-snapshot/src/snapshot.ts | 4 ++-- .../test/__snapshots__/integration.test.ts.snap | 1 + packages/rrweb-snapshot/test/html/preload.html | 1 + 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/rrweb-snapshot/src/rebuild.ts b/packages/rrweb-snapshot/src/rebuild.ts index d4ec23f55b..263ad99181 100644 --- a/packages/rrweb-snapshot/src/rebuild.ts +++ b/packages/rrweb-snapshot/src/rebuild.ts @@ -198,7 +198,7 @@ function buildNode( continue; } else if ( tagName === 'link' && - n.attributes.rel === 'preload' && + (n.attributes.rel === 'preload' || n.attributes.rel === 'modulepreload') && n.attributes.as === 'script' ) { // ignore diff --git a/packages/rrweb-snapshot/src/snapshot.ts b/packages/rrweb-snapshot/src/snapshot.ts index 97b48994a9..a657f22ab7 100644 --- a/packages/rrweb-snapshot/src/snapshot.ts +++ b/packages/rrweb-snapshot/src/snapshot.ts @@ -789,9 +789,9 @@ function slimDOMExcluded( slimDOMOptions.script && // script tag (sn.tagName === 'script' || - // preload link + // (module)preload link (sn.tagName === 'link' && - sn.attributes.rel === 'preload' && + (sn.attributes.rel === 'preload' || sn.attributes.rel === 'modulepreload') && sn.attributes.as === 'script') || // prefetch link (sn.tagName === 'link' && diff --git a/packages/rrweb-snapshot/test/__snapshots__/integration.test.ts.snap b/packages/rrweb-snapshot/test/__snapshots__/integration.test.ts.snap index d15bc089af..dbcc8c4cae 100644 --- a/packages/rrweb-snapshot/test/__snapshots__/integration.test.ts.snap +++ b/packages/rrweb-snapshot/test/__snapshots__/integration.test.ts.snap @@ -337,6 +337,7 @@ exports[`integration tests [html file]: preload.html 1`] = ` Document + " `; diff --git a/packages/rrweb-snapshot/test/html/preload.html b/packages/rrweb-snapshot/test/html/preload.html index 32e84a260d..c160f60895 100644 --- a/packages/rrweb-snapshot/test/html/preload.html +++ b/packages/rrweb-snapshot/test/html/preload.html @@ -4,6 +4,7 @@ Document +