Skip to content

Commit e417d3a

Browse files
authored
fix: remove implicit passive behavior from OnDirective events (#12645)
Fixes #12639
1 parent 5817767 commit e417d3a

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

.changeset/modern-peaches-cheer.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'svelte': patch
3+
---
4+
5+
fix: remove implicit passive behavior from OnDirective events

packages/svelte/src/compiler/phases/3-transform/client/visitors/template.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1298,7 +1298,11 @@ function serialize_event(node, metadata, context) {
12981298
args.push(b.literal(true));
12991299
} else if (node.modifiers.includes('nonpassive')) {
13001300
args.push(b.literal(false));
1301-
} else if (PassiveEvents.includes(node.name)) {
1301+
} else if (
1302+
PassiveEvents.includes(node.name) &&
1303+
/** @type {OnDirective} */ (node).type !== 'OnDirective'
1304+
) {
1305+
// For on:something events we don't apply passive behaviour to match Svelte 4.
13021306
args.push(b.literal(true));
13031307
}
13041308

0 commit comments

Comments
 (0)