diff --git a/packages/language-core/lib/codegen/script/component.ts b/packages/language-core/lib/codegen/script/component.ts index f978e79b78..79cacedd36 100644 --- a/packages/language-core/lib/codegen/script/component.ts +++ b/packages/language-core/lib/codegen/script/component.ts @@ -13,23 +13,7 @@ export function* generateComponent( scriptSetup: NonNullable, scriptSetupRanges: ScriptSetupRanges, ): Generator { - if ( - options.script - && options.scriptRanges?.componentOptions - && options.scriptRanges.componentOptions.expression.start !== options.scriptRanges.componentOptions.args.start - ) { - // use defineComponent() from user space code if it exist - yield* generateSfcBlockSection( - options.script, - options.scriptRanges.componentOptions.expression.start, - options.scriptRanges.componentOptions.args.start, - codeFeatures.all, - ); - yield `{${newLine}`; - } - else { - yield `(await import('${options.vueCompilerOptions.lib}')).defineComponent({${newLine}`; - } + yield `(await import('${options.vueCompilerOptions.lib}')).defineComponent({${newLine}`; const returns: string[][] = []; @@ -60,10 +44,6 @@ export function* generateComponent( ) { yield `__typeEl: {} as ${names.RootEl},${newLine}`; } - if (options.script && options.scriptRanges?.componentOptions?.args) { - const { args } = options.scriptRanges.componentOptions; - yield* generateSfcBlockSection(options.script, args.start + 1, args.end - 1, codeFeatures.all); - } yield `})`; } diff --git a/packages/language-core/lib/codegen/script/index.ts b/packages/language-core/lib/codegen/script/index.ts index 8aee60df85..a9a96dbe39 100644 --- a/packages/language-core/lib/codegen/script/index.ts +++ b/packages/language-core/lib/codegen/script/index.ts @@ -55,12 +55,17 @@ function* generateWorker( // + + + + diff --git a/test-workspace/tsc/passedFixtures/vue3/directives/option.vue b/test-workspace/tsc/passedFixtures/vue3/directives/option.vue index fdf1a542b2..e437fa71ca 100644 --- a/test-workspace/tsc/passedFixtures/vue3/directives/option.vue +++ b/test-workspace/tsc/passedFixtures/vue3/directives/option.vue @@ -2,6 +2,8 @@ import type { FunctionDirective } from 'vue'; import { exactType } from '../../shared'; +let Comp!: (_: { foo?: string; }) => void; + export default { directives: { foo: {} as FunctionDirective void> @@ -10,7 +12,6 @@ export default {