Skip to content

Commit c79b909

Browse files
authored
fix: remove 'implements' from class declaration (#14749)
* fix: remove implements from class declaration * add a smoke test
1 parent e38975e commit c79b909

File tree

4 files changed

+14
-0
lines changed

4 files changed

+14
-0
lines changed

.changeset/calm-maps-cover.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 implements from class declarations

packages/svelte/src/compiler/phases/1-parse/remove_typescript_nodes.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ const visitors = {
115115
if (node.declare) {
116116
return b.empty;
117117
}
118+
delete node.implements;
118119
return context.next();
119120
},
120121
VariableDeclaration(node, context) {
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
import { test } from '../../assert';
2+
3+
export default test({});
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<script lang="ts">
2+
// TypeScript syntax should not cause compilation failure
3+
interface MyInterface {}
4+
class MyClass implements MyInterface {}
5+
</script>

0 commit comments

Comments
 (0)