diff --git a/.changeset/fix-migrate-comment-no-position.md b/.changeset/fix-migrate-comment-no-position.md new file mode 100644 index 0000000000..fa9981dc60 --- /dev/null +++ b/.changeset/fix-migrate-comment-no-position.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: ignore comments of Program node during migration script diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index 0370155c12..3baef3ecae 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -1590,7 +1590,12 @@ function migrate_slot_usage(node, path, state) { */ function extract_type_and_comment(declarator, state, path) { const str = state.str; - const parent = path.at(-1); + let parent = path.at(-1); + + if (parent?.type === 'Program') { + // We don't want comments from the program node + parent = undefined; + } // Try to find jsdoc above the declaration let comment_node = /** @type {Node} */ (parent)?.leadingComments?.at(-1); diff --git a/packages/svelte/tests/migrate/samples/props-export-alias/input.svelte b/packages/svelte/tests/migrate/samples/props-export-alias/input.svelte index 1cb57ef5fd..fc06166e21 100644 --- a/packages/svelte/tests/migrate/samples/props-export-alias/input.svelte +++ b/packages/svelte/tests/migrate/samples/props-export-alias/input.svelte @@ -1,3 +1,4 @@ +