-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
perf: improve blocked and masking logic checks #1536
base: master
Are you sure you want to change the base?
Conversation
🦋 Changeset detectedLatest commit: b0aa591 The changes in this PR will be included in the next version bump. This PR includes changesets to release 18 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
@@ -340,26 +340,16 @@ export function needMaskingText( | |||
} else { | |||
el = node.parentElement; | |||
} | |||
try { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
try/catch is an optimization bailout reason in v8. It's unclear exactly why this code is here, but since this is an extremely hot path, we should remove it
d0d211a
to
f56ff04
Compare
} | ||
if (maskTextSelector) { | ||
if (checkAncestors) { | ||
if (el.closest(maskTextSelector)) return true; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The closest check is unnecessary as we dont care about the actual node, we just want to know if it matches or not
Porting the masking and block changes from #1271
Related to #1271