close #501 do not count attach iframe event in checkout

This commit is contained in:
Yanzhen Yu
2026-04-01 12:00:00 +08:00
parent 4e9e64cc5c
commit 36d52f8faf
3 changed files with 11 additions and 1 deletions

View File

@@ -30,6 +30,7 @@ export class IframeManager {
removes: [],
texts: [],
attributes: [],
isAttachIframe: true,
});
this.loadListener?.((iframeEl as unknown) as HTMLIFrameElement);
}

View File

@@ -157,6 +157,14 @@ function record<T = eventWithTime>(
lastFullSnapshotEvent = e;
incrementalSnapshotCount = 0;
} else if (e.type === EventType.IncrementalSnapshot) {
// attch iframe should be considered as full snapshot
if (
e.data.source === IncrementalSource.Mutation &&
e.data.isAttachIframe
) {
return;
}
incrementalSnapshotCount++;
const exceedCount =
checkoutEveryNth && incrementalSnapshotCount >= checkoutEveryNth;

View File

@@ -168,7 +168,7 @@ export type SamplingStrategy = Partial<{
* number is the throttle threshold of mouse/touch move callback
*/
mousemoveCallback: number;
/**
/**
* false means not to record mouse interaction events
* can also specify record some kinds of mouse interactions
*/
@@ -297,6 +297,7 @@ type mutationCallbackParam = {
attributes: attributeMutation[];
removes: removedNodeMutation[];
adds: addedNodeMutation[];
isAttachIframe?: true;
};
export type mutationCallBack = (m: mutationCallbackParam) => void;