From 68d98dc57f8486c2946ae28dc86bf8e91d45da4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=B1=E5=90=B9=E8=89=B2=E5=BE=A1=E5=AE=88?= <85992002+KazariEX@users.noreply.github.com> Date: Thu, 3 Jul 2025 13:07:17 +0800 Subject: [PATCH 01/32] fix(vscode): correct syntax highlight of control directives ending with `/` or `)` fix #5473 --- extensions/vscode/syntaxes/vue.tmLanguage.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extensions/vscode/syntaxes/vue.tmLanguage.json b/extensions/vscode/syntaxes/vue.tmLanguage.json index e7b88b6045..02851d1392 100644 --- a/extensions/vscode/syntaxes/vue.tmLanguage.json +++ b/extensions/vscode/syntaxes/vue.tmLanguage.json @@ -1038,7 +1038,7 @@ ] }, "vue-directives-control": { - "begin": "(?:(v-for)|(v-if|v-else-if|v-else))(?=[=>\\s])", + "begin": "(?:(v-for)|(v-if|v-else-if|v-else))(?=[=/>)\\s])", "beginCaptures": { "1": { "name": "keyword.control.loop.vue" From abb5f2b6c4be384d1fef0e874a128500d2024d8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=B1=E5=90=B9=E8=89=B2=E5=BE=A1=E5=AE=88?= <85992002+KazariEX@users.noreply.github.com> Date: Wed, 2 Jul 2025 22:45:38 -0700 Subject: [PATCH 02/32] fix(language-core): infer parameter type of union slots to be union instead of intersection (#5475) --- .../language-core/lib/codegen/globalTypes.ts | 2 +- .../lib/codegen/template/vSlot.ts | 2 +- .../tsc/passedFixtures/vue3/#5474/main.vue | 19 +++++++++++++++++++ 3 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 test-workspace/tsc/passedFixtures/vue3/#5474/main.vue diff --git a/packages/language-core/lib/codegen/globalTypes.ts b/packages/language-core/lib/codegen/globalTypes.ts index 9cfdb2b2ae..e77233ff9d 100644 --- a/packages/language-core/lib/codegen/globalTypes.ts +++ b/packages/language-core/lib/codegen/globalTypes.ts @@ -164,7 +164,7 @@ export function generateGlobalTypes({ index: number, ][]; function __VLS_getSlotParameters(slot: S, decl?: D): - __VLS_PickNotAny, (...args: any) => any> extends (...args: infer P) => any ? P : any[]; + D extends (...args: infer P) => any ? P : any[]; function __VLS_asFunctionalDirective(dir: T): T extends import('${lib}').ObjectDirective ? NonNullable : T extends (...args: any) => any diff --git a/packages/language-core/lib/codegen/template/vSlot.ts b/packages/language-core/lib/codegen/template/vSlot.ts index 30f43a5f76..ca691f2d44 100644 --- a/packages/language-core/lib/codegen/template/vSlot.ts +++ b/packages/language-core/lib/codegen/template/vSlot.ts @@ -154,7 +154,7 @@ function* generateSlotParameters( nextStart = end; } yield chunk(nextStart, expression.equalsGreaterThanToken.pos - 1); - yield `] = __VLS_getSlotParameters(${slotVar}`; + yield `] = __VLS_getSlotParameters(${slotVar}!`; if (types.some(t => t)) { yield `, `; diff --git a/test-workspace/tsc/passedFixtures/vue3/#5474/main.vue b/test-workspace/tsc/passedFixtures/vue3/#5474/main.vue new file mode 100644 index 0000000000..67c5f193e9 --- /dev/null +++ b/test-workspace/tsc/passedFixtures/vue3/#5474/main.vue @@ -0,0 +1,19 @@ + + + From 32f91d4fe712a042bed7d6f9aa1e41badf8db0c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=B1=E5=90=B9=E8=89=B2=E5=BE=A1=E5=AE=88?= <85992002+KazariEX@users.noreply.github.com> Date: Thu, 3 Jul 2025 18:45:17 +0800 Subject: [PATCH 03/32] refactor(vscode): make welcome page code public --- extensions/vscode/index.ts | 2 + extensions/vscode/lib/welcome.ts | 493 +++++++++++++++++++++++ extensions/vscode/package.json | 5 + extensions/vscode/package.nls.ja.json | 3 +- extensions/vscode/package.nls.json | 3 +- extensions/vscode/package.nls.ru.json | 3 +- extensions/vscode/package.nls.zh-CN.json | 3 +- extensions/vscode/package.nls.zh-TW.json | 3 +- 8 files changed, 510 insertions(+), 5 deletions(-) create mode 100644 extensions/vscode/lib/welcome.ts diff --git a/extensions/vscode/index.ts b/extensions/vscode/index.ts index 3b874db702..f23140bb70 100644 --- a/extensions/vscode/index.ts +++ b/extensions/vscode/index.ts @@ -16,6 +16,7 @@ import { } from 'reactive-vscode'; import * as vscode from 'vscode'; import { config } from './lib/config'; +import { activate as activateWelcome } from './lib/welcome'; const incompatibleExtensionIds = [ 'johnsoncodehk.vscode-typescript-vue-plugin', @@ -89,6 +90,7 @@ export const { activate, deactivate } = defineExtension(async () => { activateAutoInsertion(selectors, client); activateDocumentDropEdit(selectors, client); + activateWelcome(); }, { immediate: true }); useCommand('vue.action.restartServer', async () => { diff --git a/extensions/vscode/lib/welcome.ts b/extensions/vscode/lib/welcome.ts new file mode 100644 index 0000000000..780641c11f --- /dev/null +++ b/extensions/vscode/lib/welcome.ts @@ -0,0 +1,493 @@ +import { extensionContext, useCommand, useWebviewPanel } from 'reactive-vscode'; +import * as vscode from 'vscode'; + +export function activate() { + useCommand('vue.welcome', () => { + useWebviewPanel('vue.welcome', 'Welcome to Vue', getWelcomeHtml(), vscode.ViewColumn.One, { + webviewOptions: { + enableScripts: true, + }, + onDidReceiveMessage(message) { + switch (message.command) { + case 'verifySponsor': + vscode.commands.executeCommand('vue.action.verify'); + break; + case 'openVideo': + vscode.env.openExternal( + vscode.Uri.parse(`https://www.youtube.com/watch?v=${message.id}`), + ); + break; + } + }, + }); + }); +} + +function getWelcomeHtml() { + const version = extensionContext.value?.extension.packageJSON.version; + + return /* HTML */ ` + + + + + + + Vue (Official) + + + + + +
+ + + + + + + + + + + +
+
+ +

📣 What's New in ${version}

+
+
    +
  • 🚀 Significantly improved Hybrid Mode stability
  • +
  • ✨ Introduced several new DX enhancement features
  • +
  • 🌍 Expanded support for additional localizations
  • +
  • 🎨 UI tweaks: removed all Vue-related status bar items
  • +
  • 🐛 Squashed numerous bugs throughout the extension
  • +
+
+ ⚠️ Deprecation Notice: Dropping Vue 2 Support in v3.1 + (Discussion #5395) +
+ +
+ + + + + Full Release Notes + +
+ Released: July 2025 + + v3.0.0 +
+
+
+ +

🎥 Learn More Features

+

Discover advanced capabilities of the extension:

+
+ + + +
+

+ ⚠️ Unable to load the video? Watch on YouTube +

+ + +

✨ Core Features

+
+
+
🧩
+

Template Intelligence

+

Smart completions for directives, components and props in Vue templates with type inference

+
+
+
🔍
+

Type Checking

+

Full TypeScript support with type inference across SFCs and reactive type checking

+
+
+
🎨
+

Syntax Highlighting

+

Comprehensive syntax highlighting for Single File Components and template expressions

+
+
+ +

💎 Premium Features

+
+
+
🧩
+

Interpolation Highlight 🌟

+

Enhanced highlighting for template interpolations and expressions

+
+
+
🧩
+

Focus Mode 🌟🌟

+

Isolate and focus on specific SFC blocks during development

+
+
+
🧩
+

Reactivity Visualization 🌟🌟🌟🌟

+

Visualize Vue's reactivity system in component scripts

+
+
+
🚧
+

More Features Coming Soon

+
+
+ +
+

Support the development and unlock these features:

+ + + + + GitHub Sponsors + + + + + + 爱发电 (afdian) + + +
+ +

📚 Resources

+ + +

🔧 Troubleshooting

+
+ Why are some features not working? +
+

Make sure you have:

+
    +
  • The latest version of the extension installed
  • +
  • Vue 3.x in your project dependencies
  • +
  • TSDK 5.3 or later
  • +
  • Try disabling other extensions to rule out conflicts
  • +
+
+
+
+ Where to report issues? +
+

Please report any problems on our GitHub Issues page with:

+
    +
  • Detailed reproduction steps
  • +
  • Screenshots or screencasts if applicable
  • +
  • Your project setup information
  • +
+
+
+ +

❤️ Thanks to Our Sponsors

+
+

This project is made possible thanks to our generous sponsors:

+
+ +

+ Become a sponsor to support Vue + tooling development +

+
+ + +`; +} diff --git a/extensions/vscode/package.json b/extensions/vscode/package.json index 7fe115ea79..51c630846b 100644 --- a/extensions/vscode/package.json +++ b/extensions/vscode/package.json @@ -366,6 +366,11 @@ "command": "vue.action.restartServer", "title": "%command.action.restartServer%", "category": "Vue" + }, + { + "command": "vue.welcome", + "title": "%command.welcome%", + "category": "Vue" } ], "menus": { diff --git a/extensions/vscode/package.nls.ja.json b/extensions/vscode/package.nls.ja.json index 184ac99da2..aee8afda88 100644 --- a/extensions/vscode/package.nls.ja.json +++ b/extensions/vscode/package.nls.ja.json @@ -16,5 +16,6 @@ "configuration.format.script.initialIndent": "`

Become a sponsor to support Vue From d91bc24b910f01be3d96e9255939033516116e66 Mon Sep 17 00:00:00 2001 From: Johnson Chu Date: Tue, 8 Jul 2025 20:01:33 +0800 Subject: [PATCH 13/32] refactor(vscode): add premium feature settings --- extensions/vscode/lib/generated-meta.ts | 66 ++++++++++++++++++++++++- extensions/vscode/lib/welcome.ts | 5 -- extensions/vscode/package.json | 23 +++++++-- 3 files changed, 83 insertions(+), 11 deletions(-) diff --git a/extensions/vscode/lib/generated-meta.ts b/extensions/vscode/lib/generated-meta.ts index 1c0af10ec0..3d42137fdf 100644 --- a/extensions/vscode/lib/generated-meta.ts +++ b/extensions/vscode/lib/generated-meta.ts @@ -4,7 +4,7 @@ // Meta info export const publisher = 'Vue'; export const name = 'volar'; -export const version = '3.0.0-beta.4'; +export const version = '3.0.1'; export const displayName = 'Vue (Official)'; export const description = 'Language Support for Vue'; export const extensionId = `${publisher}.${name}`; @@ -12,12 +12,19 @@ export const extensionId = `${publisher}.${name}`; /** * Type union of all commands */ -export type CommandKey = 'vue.action.restartServer'; +export type CommandKey = + | 'vue.welcome' + | 'vue.action.restartServer'; /** * Commands map registed by `Vue.volar` */ export const commands = { + /** + * %command.welcome% + * @value `vue.welcome` + */ + welcome: 'vue.welcome', /** * %command.action.restartServer% * @value `vue.action.restartServer` @@ -30,6 +37,9 @@ export const commands = { */ export type ConfigKey = | 'vue.trace.server' + | 'vue.editor.focusMode' + | 'vue.editor.reactivityVisualization' + | 'vue.editor.templateInterpolationDecorators' | 'vue.server.includeLanguages' | 'vue.codeActions.askNewComponentName' | 'vue.suggest.componentNameCasing' @@ -49,6 +59,9 @@ export type ConfigKey = export interface ConfigKeyTypeMap { 'vue.trace.server': 'off' | 'messages' | 'verbose'; + 'vue.editor.focusMode': boolean; + 'vue.editor.reactivityVisualization': boolean; + 'vue.editor.templateInterpolationDecorators': boolean; 'vue.server.includeLanguages': string[]; 'vue.codeActions.askNewComponentName': boolean; 'vue.suggest.componentNameCasing': 'preferKebabCase' | 'preferPascalCase' | 'alwaysKebabCase' | 'alwaysPascalCase'; @@ -76,6 +89,9 @@ export interface ConfigKeyTypeMap { export interface ConfigShorthandMap { traceServer: 'vue.trace.server'; + editorFocusMode: 'vue.editor.focusMode'; + editorReactivityVisualization: 'vue.editor.reactivityVisualization'; + editorTemplateInterpolationDecorators: 'vue.editor.templateInterpolationDecorators'; serverIncludeLanguages: 'vue.server.includeLanguages'; codeActionsAskNewComponentName: 'vue.codeActions.askNewComponentName'; suggestComponentNameCasing: 'vue.suggest.componentNameCasing'; @@ -96,6 +112,9 @@ export interface ConfigShorthandMap { export interface ConfigShorthandTypeMap { traceServer: 'off' | 'messages' | 'verbose'; + editorFocusMode: boolean; + editorReactivityVisualization: boolean; + editorTemplateInterpolationDecorators: boolean; serverIncludeLanguages: string[]; codeActionsAskNewComponentName: boolean; suggestComponentNameCasing: 'preferKebabCase' | 'preferPascalCase' | 'alwaysKebabCase' | 'alwaysPascalCase'; @@ -139,6 +158,33 @@ export const configs = { key: 'vue.trace.server', default: 'off', } as ConfigItem<'vue.trace.server'>, + /** + * @key `vue.editor.focusMode` + * @default `true` + * @type `boolean` + */ + editorFocusMode: { + key: 'vue.editor.focusMode', + default: true, + } as ConfigItem<'vue.editor.focusMode'>, + /** + * @key `vue.editor.reactivityVisualization` + * @default `true` + * @type `boolean` + */ + editorReactivityVisualization: { + key: 'vue.editor.reactivityVisualization', + default: true, + } as ConfigItem<'vue.editor.reactivityVisualization'>, + /** + * @key `vue.editor.templateInterpolationDecorators` + * @default `true` + * @type `boolean` + */ + editorTemplateInterpolationDecorators: { + key: 'vue.editor.templateInterpolationDecorators', + default: true, + } as ConfigItem<'vue.editor.templateInterpolationDecorators'>, /** * @key `vue.server.includeLanguages` * @default `["vue"]` @@ -287,6 +333,9 @@ export const configs = { export interface ScopedConfigKeyTypeMap { 'trace.server': 'off' | 'messages' | 'verbose'; + 'editor.focusMode': boolean; + 'editor.reactivityVisualization': boolean; + 'editor.templateInterpolationDecorators': boolean; 'server.includeLanguages': string[]; 'codeActions.askNewComponentName': boolean; 'suggest.componentNameCasing': 'preferKebabCase' | 'preferPascalCase' | 'alwaysKebabCase' | 'alwaysPascalCase'; @@ -316,6 +365,9 @@ export const scopedConfigs = { scope: 'vue', defaults: { 'trace.server': 'off', + 'editor.focusMode': true, + 'editor.reactivityVisualization': true, + 'editor.templateInterpolationDecorators': true, 'server.includeLanguages': ['vue'], 'codeActions.askNewComponentName': true, 'suggest.componentNameCasing': 'preferPascalCase', @@ -340,6 +392,11 @@ export interface NestedConfigs { 'trace': { 'server': 'off' | 'messages' | 'verbose'; }; + 'editor': { + 'focusMode': boolean; + 'reactivityVisualization': boolean; + 'templateInterpolationDecorators': boolean; + }; 'server': { 'includeLanguages': string[]; }; @@ -388,6 +445,11 @@ export interface NestedScopedConfigs { 'trace': { 'server': 'off' | 'messages' | 'verbose'; }; + 'editor': { + 'focusMode': boolean; + 'reactivityVisualization': boolean; + 'templateInterpolationDecorators': boolean; + }; 'server': { 'includeLanguages': string[]; }; diff --git a/extensions/vscode/lib/welcome.ts b/extensions/vscode/lib/welcome.ts index b2ab534c60..fc22dc63fe 100644 --- a/extensions/vscode/lib/welcome.ts +++ b/extensions/vscode/lib/welcome.ts @@ -23,11 +23,6 @@ export function activate() { case 'verifySponsor': vscode.commands.executeCommand('vue.action.verify'); break; - case 'openVideo': - vscode.env.openExternal( - vscode.Uri.parse(`https://www.youtube.com/watch?v=${message.id}`), - ); - break; } }); diff --git a/extensions/vscode/package.json b/extensions/vscode/package.json index d9d5e1b488..22566b8db7 100644 --- a/extensions/vscode/package.json +++ b/extensions/vscode/package.json @@ -237,6 +237,21 @@ "default": "off", "markdownDescription": "%configuration.trace.server%" }, + "vue.editor.focusMode": { + "type": "boolean", + "default": true, + "markdownDescription": "Sponsor this extension to unlock premium features. [Learn more](https://youtu.be/RcPcO4_Ct_U)" + }, + "vue.editor.reactivityVisualization": { + "type": "boolean", + "default": true, + "markdownDescription": "Sponsor this extension to unlock premium features. [Learn more](https://youtu.be/RcPcO4_Ct_U)" + }, + "vue.editor.templateInterpolationDecorators": { + "type": "boolean", + "default": true, + "markdownDescription": "Sponsor this extension to unlock premium features. [Learn more](https://youtu.be/RcPcO4_Ct_U)" + }, "vue.server.includeLanguages": { "type": "array", "items": { @@ -359,13 +374,13 @@ }, "commands": [ { - "command": "vue.action.restartServer", - "title": "%command.action.restartServer%", + "command": "vue.welcome", + "title": "%command.welcome%", "category": "Vue" }, { - "command": "vue.welcome", - "title": "%command.welcome%", + "command": "vue.action.restartServer", + "title": "%command.action.restartServer%", "category": "Vue" } ], From 109e9d1d7b9b54fba4238bf82b4e6c6022d5a2db Mon Sep 17 00:00:00 2001 From: Johnson Chu Date: Wed, 9 Jul 2025 17:48:57 +0800 Subject: [PATCH 14/32] chore: update volar to 2.4.18 --- extensions/vscode/package.json | 2 +- packages/component-meta/package.json | 2 +- packages/language-core/package.json | 4 +- packages/language-plugin-pug/package.json | 2 +- packages/language-server/package.json | 4 +- packages/language-service/package.json | 6 +- packages/tsc/package.json | 2 +- packages/typescript-plugin/package.json | 2 +- pnpm-lock.yaml | 166 +++++++++++----------- 9 files changed, 95 insertions(+), 95 deletions(-) diff --git a/extensions/vscode/package.json b/extensions/vscode/package.json index 22566b8db7..c0cf248b42 100644 --- a/extensions/vscode/package.json +++ b/extensions/vscode/package.json @@ -437,7 +437,7 @@ "@types/node": "^22.10.4", "@types/semver": "^7.5.3", "@types/vscode": "1.88.0", - "@volar/vscode": "2.4.17", + "@volar/vscode": "2.4.18", "@vscode/vsce": "^3.2.1", "@vue/compiler-sfc": "^3.5.0", "@vue/language-server": "3.0.1", diff --git a/packages/component-meta/package.json b/packages/component-meta/package.json index 7b96b1358d..b012d9f677 100644 --- a/packages/component-meta/package.json +++ b/packages/component-meta/package.json @@ -13,7 +13,7 @@ "directory": "packages/component-meta" }, "dependencies": { - "@volar/typescript": "2.4.17", + "@volar/typescript": "2.4.18", "@vue/language-core": "3.0.1", "path-browserify": "^1.0.1" }, diff --git a/packages/language-core/package.json b/packages/language-core/package.json index 8eb34b57ee..c799652966 100644 --- a/packages/language-core/package.json +++ b/packages/language-core/package.json @@ -13,7 +13,7 @@ "directory": "packages/language-core" }, "dependencies": { - "@volar/language-core": "2.4.17", + "@volar/language-core": "2.4.18", "@vue/compiler-dom": "^3.5.0", "@vue/compiler-vue2": "^2.7.16", "@vue/shared": "^3.5.0", @@ -25,7 +25,7 @@ "devDependencies": { "@types/node": "^22.10.4", "@types/path-browserify": "^1.0.1", - "@volar/typescript": "2.4.17", + "@volar/typescript": "2.4.18", "@vue/compiler-sfc": "^3.5.0" }, "peerDependencies": { diff --git a/packages/language-plugin-pug/package.json b/packages/language-plugin-pug/package.json index 3cbcb2df37..f8fdbdaed4 100644 --- a/packages/language-plugin-pug/package.json +++ b/packages/language-plugin-pug/package.json @@ -13,7 +13,7 @@ "directory": "packages/language-plugin-pug" }, "dependencies": { - "@volar/source-map": "2.4.17", + "@volar/source-map": "2.4.18", "volar-service-pug": "0.0.64" }, "devDependencies": { diff --git a/packages/language-server/package.json b/packages/language-server/package.json index 22de937ba1..d477778693 100644 --- a/packages/language-server/package.json +++ b/packages/language-server/package.json @@ -16,7 +16,7 @@ "directory": "packages/language-server" }, "dependencies": { - "@volar/language-server": "2.4.17", + "@volar/language-server": "2.4.18", "@vue/language-core": "3.0.1", "@vue/language-service": "3.0.1", "@vue/typescript-plugin": "3.0.1", @@ -27,6 +27,6 @@ }, "devDependencies": { "@typescript/server-harness": "latest", - "@volar/test-utils": "2.4.17" + "@volar/test-utils": "2.4.18" } } diff --git a/packages/language-service/package.json b/packages/language-service/package.json index 82086a8d18..4486c0e12c 100644 --- a/packages/language-service/package.json +++ b/packages/language-service/package.json @@ -17,7 +17,7 @@ "update-html-data": "node ./scripts/update-html-data.js" }, "dependencies": { - "@volar/language-service": "2.4.17", + "@volar/language-service": "2.4.18", "@vue/language-core": "3.0.1", "@vue/shared": "^3.5.0", "path-browserify": "^1.0.1", @@ -35,8 +35,8 @@ "devDependencies": { "@types/node": "^22.10.4", "@types/path-browserify": "^1.0.1", - "@volar/kit": "2.4.17", - "@volar/typescript": "2.4.17", + "@volar/kit": "2.4.18", + "@volar/typescript": "2.4.18", "@vue/compiler-dom": "^3.5.0", "@vue/typescript-plugin": "3.0.1", "vscode-css-languageservice": "^6.3.1" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index 4e03e832ad..4f2eaa40db 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -20,7 +20,7 @@ "typescript": ">=5.0.0" }, "dependencies": { - "@volar/typescript": "2.4.17", + "@volar/typescript": "2.4.18", "@vue/language-core": "3.0.1" }, "devDependencies": { diff --git a/packages/typescript-plugin/package.json b/packages/typescript-plugin/package.json index ac361cc8ae..36e6296d33 100644 --- a/packages/typescript-plugin/package.json +++ b/packages/typescript-plugin/package.json @@ -13,7 +13,7 @@ "directory": "packages/typescript-plugin" }, "dependencies": { - "@volar/typescript": "2.4.17", + "@volar/typescript": "2.4.18", "@vue/language-core": "3.0.1", "@vue/shared": "^3.5.0", "path-browserify": "^1.0.1" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 96f8301400..f48ab027e8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -51,8 +51,8 @@ importers: specifier: 1.88.0 version: 1.88.0 '@volar/vscode': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 '@vscode/vsce': specifier: ^3.2.1 version: 3.3.2 @@ -84,8 +84,8 @@ importers: packages/component-meta: dependencies: '@volar/typescript': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 '@vue/language-core': specifier: 3.0.1 version: link:../language-core @@ -111,8 +111,8 @@ importers: packages/language-core: dependencies: '@volar/language-core': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 '@vue/compiler-dom': specifier: ^3.5.0 version: 3.5.13 @@ -145,8 +145,8 @@ importers: specifier: ^1.0.1 version: 1.0.3 '@volar/typescript': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 '@vue/compiler-sfc': specifier: ^3.5.0 version: 3.5.13 @@ -154,8 +154,8 @@ importers: packages/language-plugin-pug: dependencies: '@volar/source-map': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 volar-service-pug: specifier: 0.0.64 version: 0.0.64 @@ -173,8 +173,8 @@ importers: packages/language-server: dependencies: '@volar/language-server': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 '@vue/language-core': specifier: 3.0.1 version: link:../language-core @@ -195,14 +195,14 @@ importers: specifier: latest version: 0.3.5 '@volar/test-utils': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 packages/language-service: dependencies: '@volar/language-service': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 '@vue/language-core': specifier: 3.0.1 version: link:../language-core @@ -214,28 +214,28 @@ importers: version: 1.0.1 volar-service-css: specifier: 0.0.64 - version: 0.0.64(@volar/language-service@2.4.17) + version: 0.0.64(@volar/language-service@2.4.18) volar-service-emmet: specifier: 0.0.64 - version: 0.0.64(@volar/language-service@2.4.17) + version: 0.0.64(@volar/language-service@2.4.18) volar-service-html: specifier: 0.0.64 - version: 0.0.64(@volar/language-service@2.4.17) + version: 0.0.64(@volar/language-service@2.4.18) volar-service-json: specifier: 0.0.64 - version: 0.0.64(@volar/language-service@2.4.17) + version: 0.0.64(@volar/language-service@2.4.18) volar-service-pug: specifier: 0.0.64 version: 0.0.64 volar-service-pug-beautify: specifier: 0.0.64 - version: 0.0.64(@volar/language-service@2.4.17) + version: 0.0.64(@volar/language-service@2.4.18) volar-service-typescript: specifier: 0.0.64 - version: 0.0.64(@volar/language-service@2.4.17) + version: 0.0.64(@volar/language-service@2.4.18) volar-service-typescript-twoslash-queries: specifier: 0.0.64 - version: 0.0.64(@volar/language-service@2.4.17) + version: 0.0.64(@volar/language-service@2.4.18) vscode-html-languageservice: specifier: ^5.2.0 version: 5.4.0 @@ -250,11 +250,11 @@ importers: specifier: ^1.0.1 version: 1.0.3 '@volar/kit': - specifier: 2.4.17 - version: 2.4.17(typescript@5.9.0-dev.20250425) + specifier: 2.4.18 + version: 2.4.18(typescript@5.9.0-dev.20250425) '@volar/typescript': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 '@vue/compiler-dom': specifier: ^3.5.0 version: 3.5.13 @@ -268,8 +268,8 @@ importers: packages/tsc: dependencies: '@volar/typescript': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 '@vue/language-core': specifier: 3.0.1 version: link:../language-core @@ -284,8 +284,8 @@ importers: packages/typescript-plugin: dependencies: '@volar/typescript': - specifier: 2.4.17 - version: 2.4.17 + specifier: 2.4.18 + version: 2.4.18 '@vue/language-core': specifier: 3.0.1 version: link:../language-core @@ -1464,31 +1464,31 @@ packages: '@vitest/utils@3.1.3': resolution: {integrity: sha512-2Ltrpht4OmHO9+c/nmHtF09HWiyWdworqnHIwjfvDyWjuwKbdkcS9AnhsDn+8E2RM4x++foD1/tNuLPVvWG1Rg==} - '@volar/kit@2.4.17': - resolution: {integrity: sha512-QWFz1GT7l4htOHd6qtXsSXsENoV3U/JhpWl4MWn/fX3ewajGB7wOi6l+1LZfeaXsLyOtLn8sEyl3+7b4+KlvYg==} + '@volar/kit@2.4.18': + resolution: {integrity: sha512-W7ihKMb8bX9buPzMSmL8GfyQXrxR8IHfm02exAT4fMR7qQAfKqNN1/FDqZBmD9zTxDmSKKu5dkT6m5b9K3dK6Q==} peerDependencies: typescript: '*' - '@volar/language-core@2.4.17': - resolution: {integrity: sha512-chmRZMbKmcGpKMoO7Reb70uiLrzo0KWC2CkFttKUuKvrE+VYgi+fL9vWMJ07Fv5ulX0V1TAyyacN9q3nc5/ecA==} + '@volar/language-core@2.4.18': + resolution: {integrity: sha512-G3yYV85ekH4TV0EDS6DsS/dUJWrz675H9UgsxFz5pQbmas51a0Q2fF6Lb2q4RKgytuLZ4E0MBdT5PlVsJXNalw==} - '@volar/language-server@2.4.17': - resolution: {integrity: sha512-KUa0v5JjgbQ8hqDTJDoUFDcAfHoE34kd13qAldHst2+zCeOoAthDBg6ZU7d2cGQznCsx7Vm0k5dRrOxj8JG+dg==} + '@volar/language-server@2.4.18': + resolution: {integrity: sha512-9fWNzovOfmXR/6nTEV/zgva9E0FKzb1dDMzCMkEWd/hizr4iYYzPgDr/u5GroOpTyUxiR2qnp1zaP6MmvYXKhw==} - '@volar/language-service@2.4.17': - resolution: {integrity: sha512-FPmLSJL5znBbfDANuemGeXY3WSLqACs8+NcC4BtATD77nQBx5zubsSXlU1lVJv005pzXqtyhd4dzICUTwo61CQ==} + '@volar/language-service@2.4.18': + resolution: {integrity: sha512-2/8RTNUAJqJOc8pRu4LPUTL06uTGgfztqbK1k6VQhmeqEG3Y8ZaXgBwHWMt7TbnCi725ylVPZQqthBPpVzvWLA==} - '@volar/source-map@2.4.17': - resolution: {integrity: sha512-QDybtQyO3Ms/NjFqNHTC5tbDN2oK5VH7ZaKrcubtfHBDj63n2pizHC3wlMQ+iT55kQXZUUAbmBX5L1C8CHFeBw==} + '@volar/source-map@2.4.18': + resolution: {integrity: sha512-zaj2V/zo/CHQ/xA75h60jBPgrz+Ou9s6aPl7dX0rT46/uill9aB/ZaDk92ROpJsa/9e2xftCeNAU9ZwVyB/egQ==} - '@volar/test-utils@2.4.17': - resolution: {integrity: sha512-tyy7yodPZ2+nfjVy/oliO4/jxbTg1znYg+VoEAVxxOQ5908DAkC4uXqmmDQO/tP1neU+pb8Dy9YndEOrOUVXIA==} + '@volar/test-utils@2.4.18': + resolution: {integrity: sha512-OY3/0dsPmb7xu3iNf+OEBz0k9UgwqzLKpa1bIIitfD8c1ZPy8uMNdVg5dfG88QJKGwEIqUdChz0U1mCuyFT4lw==} - '@volar/typescript@2.4.17': - resolution: {integrity: sha512-3paEFNh4P5DkgNUB2YkTRrfUekN4brAXxd3Ow1syMqdIPtCZHbUy4AW99S5RO/7mzyTWPMdDSo3mqTpB/LPObQ==} + '@volar/typescript@2.4.18': + resolution: {integrity: sha512-xcbsMG8m/yhvO1VIKnTtc+llZxw3YtWkZiV7/F1qNpTORdPExkZRcBxJ5d19MXLpkeiQ+DG5JURHh1SV0bcWRA==} - '@volar/vscode@2.4.17': - resolution: {integrity: sha512-M+icwsPq7IOqF6fcewRC2lDQc0ftQ5DQHYiU3ytynizmiuLQrrwLchoS7Ux80KQ496B3SSMS1ZstERCS0ttbWg==} + '@volar/vscode@2.4.18': + resolution: {integrity: sha512-qJtxCbWfBjz4T60cnEOvDfqqyCmMy2cs+mZbzE9Etwzu02/qCdUXWKoxlLQrYnfMqdRdcAkU8tlBMTxtzGSYng==} '@vscode/emmet-helper@2.11.0': resolution: {integrity: sha512-QLxjQR3imPZPQltfbWRnHU6JecWTF1QSWhx3GAKQpslx7y3Dp6sIIXhKjiUJ/BR9FX8PVthjr9PD6pNwOJfAzw==} @@ -4977,8 +4977,8 @@ snapshots: '@clack/prompts': 0.8.2 '@tsslint/config': 1.5.16(typescript@5.8.3) '@tsslint/core': 1.5.16 - '@volar/language-core': 2.4.17 - '@volar/typescript': 2.4.17 + '@volar/language-core': 2.4.18 + '@volar/typescript': 2.4.18 glob: 10.4.5 json5: 2.2.3 typescript: 5.8.3 @@ -5162,24 +5162,24 @@ snapshots: loupe: 3.1.3 tinyrainbow: 2.0.0 - '@volar/kit@2.4.17(typescript@5.9.0-dev.20250425)': + '@volar/kit@2.4.18(typescript@5.9.0-dev.20250425)': dependencies: - '@volar/language-service': 2.4.17 - '@volar/typescript': 2.4.17 + '@volar/language-service': 2.4.18 + '@volar/typescript': 2.4.18 typesafe-path: 0.2.2 typescript: 5.9.0-dev.20250425 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.1.0 - '@volar/language-core@2.4.17': + '@volar/language-core@2.4.18': dependencies: - '@volar/source-map': 2.4.17 + '@volar/source-map': 2.4.18 - '@volar/language-server@2.4.17': + '@volar/language-server@2.4.18': dependencies: - '@volar/language-core': 2.4.17 - '@volar/language-service': 2.4.17 - '@volar/typescript': 2.4.17 + '@volar/language-core': 2.4.18 + '@volar/language-service': 2.4.18 + '@volar/typescript': 2.4.18 path-browserify: 1.0.1 request-light: 0.7.0 vscode-languageserver: 9.0.1 @@ -5187,29 +5187,29 @@ snapshots: vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.1.0 - '@volar/language-service@2.4.17': + '@volar/language-service@2.4.18': dependencies: - '@volar/language-core': 2.4.17 + '@volar/language-core': 2.4.18 vscode-languageserver-protocol: 3.17.5 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.1.0 - '@volar/source-map@2.4.17': {} + '@volar/source-map@2.4.18': {} - '@volar/test-utils@2.4.17': + '@volar/test-utils@2.4.18': dependencies: - '@volar/language-core': 2.4.17 - '@volar/language-server': 2.4.17 + '@volar/language-core': 2.4.18 + '@volar/language-server': 2.4.18 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.1.0 - '@volar/typescript@2.4.17': + '@volar/typescript@2.4.18': dependencies: - '@volar/language-core': 2.4.17 + '@volar/language-core': 2.4.18 path-browserify: 1.0.1 vscode-uri: 3.1.0 - '@volar/vscode@2.4.17': + '@volar/vscode@2.4.18': dependencies: path-browserify: 1.0.1 vscode-languageclient: 9.0.1 @@ -7638,61 +7638,61 @@ snapshots: - supports-color - terser - volar-service-css@0.0.64(@volar/language-service@2.4.17): + volar-service-css@0.0.64(@volar/language-service@2.4.18): dependencies: vscode-css-languageservice: 6.3.5 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.1.0 optionalDependencies: - '@volar/language-service': 2.4.17 + '@volar/language-service': 2.4.18 - volar-service-emmet@0.0.64(@volar/language-service@2.4.17): + volar-service-emmet@0.0.64(@volar/language-service@2.4.18): dependencies: '@emmetio/css-parser': https://codeload.github.com/ramya-rao-a/css-parser/tar.gz/370c480ac103bd17c7bcfb34bf5d577dc40d3660 '@emmetio/html-matcher': 1.3.0 '@vscode/emmet-helper': 2.11.0 vscode-uri: 3.1.0 optionalDependencies: - '@volar/language-service': 2.4.17 + '@volar/language-service': 2.4.18 - volar-service-html@0.0.64(@volar/language-service@2.4.17): + volar-service-html@0.0.64(@volar/language-service@2.4.18): dependencies: vscode-html-languageservice: 5.4.0 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.1.0 optionalDependencies: - '@volar/language-service': 2.4.17 + '@volar/language-service': 2.4.18 - volar-service-json@0.0.64(@volar/language-service@2.4.17): + volar-service-json@0.0.64(@volar/language-service@2.4.18): dependencies: vscode-json-languageservice: 5.6.1 vscode-uri: 3.1.0 optionalDependencies: - '@volar/language-service': 2.4.17 + '@volar/language-service': 2.4.18 - volar-service-pug-beautify@0.0.64(@volar/language-service@2.4.17): + volar-service-pug-beautify@0.0.64(@volar/language-service@2.4.18): dependencies: '@johnsoncodehk/pug-beautify': 0.2.2 optionalDependencies: - '@volar/language-service': 2.4.17 + '@volar/language-service': 2.4.18 volar-service-pug@0.0.64: dependencies: - '@volar/language-service': 2.4.17 + '@volar/language-service': 2.4.18 muggle-string: 0.4.1 pug-lexer: 5.0.1 pug-parser: 6.0.0 - volar-service-html: 0.0.64(@volar/language-service@2.4.17) + volar-service-html: 0.0.64(@volar/language-service@2.4.18) vscode-html-languageservice: 5.4.0 vscode-languageserver-textdocument: 1.0.12 - volar-service-typescript-twoslash-queries@0.0.64(@volar/language-service@2.4.17): + volar-service-typescript-twoslash-queries@0.0.64(@volar/language-service@2.4.18): dependencies: vscode-uri: 3.1.0 optionalDependencies: - '@volar/language-service': 2.4.17 + '@volar/language-service': 2.4.18 - volar-service-typescript@0.0.64(@volar/language-service@2.4.17): + volar-service-typescript@0.0.64(@volar/language-service@2.4.18): dependencies: path-browserify: 1.0.1 semver: 7.7.2 @@ -7701,7 +7701,7 @@ snapshots: vscode-nls: 5.2.0 vscode-uri: 3.1.0 optionalDependencies: - '@volar/language-service': 2.4.17 + '@volar/language-service': 2.4.18 vscode-css-languageservice@6.3.5: dependencies: From 0d5c7eb3d62c437fa84f44aeaa5bc49f8e26b7bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=B1=E5=90=B9=E8=89=B2=E5=BE=A1=E5=AE=88?= <85992002+KazariEX@users.noreply.github.com> Date: Mon, 14 Jul 2025 04:57:06 -0700 Subject: [PATCH 15/32] fix(language-core): do not set template lang to `md` for markdown (#5497) --- packages/language-core/lib/plugins/file-md.ts | 62 +++++++++---------- 1 file changed, 28 insertions(+), 34 deletions(-) diff --git a/packages/language-core/lib/plugins/file-md.ts b/packages/language-core/lib/plugins/file-md.ts index 2f332d73d9..66896864e8 100644 --- a/packages/language-core/lib/plugins/file-md.ts +++ b/packages/language-core/lib/plugins/file-md.ts @@ -1,4 +1,4 @@ -import { type CodeInformation, defaultMapperFactory, type Mapping } from '@volar/language-core'; +import { SourceMap } from '@volar/language-core'; import type { SFCBlock } from '@vue/compiler-sfc'; import { type Segment, toString } from 'muggle-string'; import type { VueLanguagePlugin } from '../types'; @@ -10,9 +10,9 @@ const codeblockReg = /(`{3,})[\s\S]+?\1/g; const inlineCodeblockReg = /`[^\n`]+?`/g; const latexBlockReg = /(\${2,})[\s\S]+?\1/g; const scriptSetupReg = /\\<[\s\S]+?>\n?/g; -const sfcBlockReg = /<(script|style)\b[\s\S]*?>([\s\S]*?)<\/\1>/g; const angleBracketReg = /<\S*:\S*>/g; const linkReg = /\[[\s\S]*?\]\([\s\S]*?\)/g; +const sfcBlockReg = /<(script|style)\b[\s\S]*?>([\s\S]*?)<\/\1>/g; const codeSnippetImportReg = /^\s*<<<\s*.+/gm; const plugin: VueLanguagePlugin = ({ vueCompilerOptions }) => { @@ -46,48 +46,42 @@ const plugin: VueLanguagePlugin = ({ vueCompilerOptions }) => { // # \ diff --git a/test-workspace/tsc/passedFixtures/vue3_strictTemplate/slot-children/main.vue b/test-workspace/tsc/passedFixtures/vue3_strictTemplate/slot-children/main.vue deleted file mode 100644 index 7f0143cce5..0000000000 --- a/test-workspace/tsc/passedFixtures/vue3_strictTemplate/slot-children/main.vue +++ /dev/null @@ -1,28 +0,0 @@ - - - diff --git a/test-workspace/tsc/passedFixtures/vue3_strictTemplate/slot-children/parent.vue b/test-workspace/tsc/passedFixtures/vue3_strictTemplate/slot-children/parent.vue deleted file mode 100644 index 9a56b1a73c..0000000000 --- a/test-workspace/tsc/passedFixtures/vue3_strictTemplate/slot-children/parent.vue +++ /dev/null @@ -1,10 +0,0 @@ - From fdab67b2058af8c8d97f7e55652a0dba25c92279 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=B1=E5=90=B9=E8=89=B2=E5=BE=A1=E5=AE=88?= <85992002+KazariEX@users.noreply.github.com> Date: Thu, 17 Jul 2025 10:46:18 -0700 Subject: [PATCH 32/32] v3.0.2 (#5513) Co-authored-by: Johnson Chu --- CHANGELOG.md | 33 ++++++++++++++++++++ extensions/vscode/lib/welcome.ts | 31 +++++++++++++++++- extensions/vscode/package.json | 6 ++-- lerna.json | 2 +- packages/component-meta/package.json | 6 ++-- packages/component-type-helpers/package.json | 2 +- packages/language-core/package.json | 2 +- packages/language-plugin-pug/package.json | 4 +-- packages/language-server/package.json | 8 ++--- packages/language-service/package.json | 6 ++-- packages/tsc/package.json | 4 +-- packages/typescript-plugin/package.json | 4 +-- pnpm-lock.yaml | 26 +++++++-------- test-workspace/package.json | 4 +-- 14 files changed, 100 insertions(+), 38 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5ba615d06c..1ba386cae7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,38 @@ # Changelog +## 3.0.2 (2025-07-18) + +### Features + +- feat(language-core): introduce `globalTypesPath` option for non-npm like environment (#5505) - Thanks to @KazariEX! +- feat: forward tsserver's semantic tokens via language server (#5512) - Thanks to @KazariEX! + +### Bug Fixes + +- fix(vscode): correct syntax highlight of control directives ending with `/` or `)` - Thanks to @KazariEX! +- fix(language-core): infer parameter type of union slots to be union instead of intersection (#5475) - Thanks to @KazariEX! +- fix(vscode): remove `colorizedBracketPairs` config for plaintext +- fix(language-core): avoid early access to local types to skip unnecessary type generation - Thanks to @KazariEX! +- fix(language-core): treat `` without `is` prop as normal component - Thanks to @KazariEX! +- fix(vscode): make sure tsserver loads `@vue/typescript-plugin` last (#5483) +- fix(language-core): only keep navigation code feature on static `name` value of `` - Thanks to @KazariEX! +- fix(language-server): add `allowJs` to reactivity analyze host - Thanks to @KazariEX! +- fix(language-core): do not set template lang to `md` for markdown (#5497) - Thanks to @KazariEX! +- fix(typescript-plugin): exclude items of kind `module` from template completion - Thanks to @KazariEX! +- fix(language-core): walk identifiers correctly within type nodes in interpolation (#5501) - Thanks to @KazariEX! +- fix(language-service): correct position calculation of twoslash queries (#5503) - Thanks to @KazariEX! +- fix(language-core): avoid redundant increment of block variable depth (#5511) - Thanks to @KazariEX! +- fix(language-service): re-implement twoslash queries in script - Thanks to @KazariEX! + +### Other Changes + +- refactor(vscode): make welcome page code public - Thanks to @KazariEX! +- refactor(vscode): add premium feature settings +- chore: migrate from `minimatch` to `picomatch` (#5499) - Thanks to @KazariEX! +- chore: update volar to 2.4.19 + - fix(typescript): skip source file search when `.d.${ext}.ts` file exists (#277) +- revert: type support of slot children (#5137) (#5514) - Thanks to @KazariEX! + ## 3.0.1 (2025-07-02) ### Bug Fixes diff --git a/extensions/vscode/lib/welcome.ts b/extensions/vscode/lib/welcome.ts index fc22dc63fe..895e49fd4f 100644 --- a/extensions/vscode/lib/welcome.ts +++ b/extensions/vscode/lib/welcome.ts @@ -128,6 +128,12 @@ function getWelcomeHtml() { box-shadow: 0 2px 8px var(--vscode-widget-shadow); } + .whats-new-card { + max-height: 250px; + overflow-y: auto; + overflow-x: hidden; + } + .sponsors-card #sponsors-container svg { width: 100% !important; height: auto !important; @@ -313,8 +319,31 @@ function getWelcomeHtml() {


-

📣 What's New in ${version}

+

📣 What's New

+

3.0.2

+
    +
  • 🚀 Improve memory usage in extreme cases
  • +
  • 🐛 15+ bug fixes
  • +
+
+ + + + + Full Release Notes + +
+ Released: July 2025 + + v3.0.2 +
+
+
+

3.0.0

  • 🚀 Significantly improved Hybrid Mode stability
  • ✨ Introduced several new DX enhancement features
  • diff --git a/extensions/vscode/package.json b/extensions/vscode/package.json index 50cdde5e68..e79c416667 100644 --- a/extensions/vscode/package.json +++ b/extensions/vscode/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "volar", - "version": "3.0.1", + "version": "3.0.2", "repository": { "type": "git", "url": "https://github.com/vuejs/language-tools.git", @@ -466,8 +466,8 @@ "@volar/vscode": "2.4.19", "@vscode/vsce": "^3.2.1", "@vue/compiler-sfc": "^3.5.0", - "@vue/language-server": "3.0.1", - "@vue/typescript-plugin": "3.0.1", + "@vue/language-server": "3.0.2", + "@vue/typescript-plugin": "3.0.2", "reactive-vscode": "^0.2.9", "rolldown": "1.0.0-beta.8", "semver": "^7.5.4", diff --git a/lerna.json b/lerna.json index 6b309b2dc1..3b6edbaec8 100644 --- a/lerna.json +++ b/lerna.json @@ -6,5 +6,5 @@ "packages/**", "test-workspace" ], - "version": "3.0.1" + "version": "3.0.2" } diff --git a/packages/component-meta/package.json b/packages/component-meta/package.json index 45413b65e2..bad98d83c3 100644 --- a/packages/component-meta/package.json +++ b/packages/component-meta/package.json @@ -1,6 +1,6 @@ { "name": "vue-component-meta", - "version": "3.0.1", + "version": "3.0.2", "license": "MIT", "files": [ "**/*.js", @@ -14,7 +14,7 @@ }, "dependencies": { "@volar/typescript": "2.4.19", - "@vue/language-core": "3.0.1", + "@vue/language-core": "3.0.2", "path-browserify": "^1.0.1" }, "peerDependencies": { @@ -24,6 +24,6 @@ "devDependencies": { "@types/node": "^22.10.4", "@types/path-browserify": "^1.0.1", - "vue-component-type-helpers": "3.0.1" + "vue-component-type-helpers": "3.0.2" } } diff --git a/packages/component-type-helpers/package.json b/packages/component-type-helpers/package.json index e439755ed9..a47b7f638c 100644 --- a/packages/component-type-helpers/package.json +++ b/packages/component-type-helpers/package.json @@ -1,6 +1,6 @@ { "name": "vue-component-type-helpers", - "version": "3.0.1", + "version": "3.0.2", "license": "MIT", "files": [ "**/*.js", diff --git a/packages/language-core/package.json b/packages/language-core/package.json index d6abebd9fa..f326900a52 100644 --- a/packages/language-core/package.json +++ b/packages/language-core/package.json @@ -1,6 +1,6 @@ { "name": "@vue/language-core", - "version": "3.0.1", + "version": "3.0.2", "license": "MIT", "files": [ "**/*.js", diff --git a/packages/language-plugin-pug/package.json b/packages/language-plugin-pug/package.json index 34b1865f6a..07b4e2348e 100644 --- a/packages/language-plugin-pug/package.json +++ b/packages/language-plugin-pug/package.json @@ -1,6 +1,6 @@ { "name": "@vue/language-plugin-pug", - "version": "3.0.1", + "version": "3.0.2", "license": "MIT", "files": [ "**/*.js", @@ -19,6 +19,6 @@ "devDependencies": { "@types/node": "^22.10.4", "@vue/compiler-dom": "^3.5.0", - "@vue/language-core": "3.0.1" + "@vue/language-core": "3.0.2" } } diff --git a/packages/language-server/package.json b/packages/language-server/package.json index d9dc925958..e2f9b19025 100644 --- a/packages/language-server/package.json +++ b/packages/language-server/package.json @@ -1,6 +1,6 @@ { "name": "@vue/language-server", - "version": "3.0.1", + "version": "3.0.2", "license": "MIT", "files": [ "**/*.js", @@ -17,9 +17,9 @@ }, "dependencies": { "@volar/language-server": "2.4.19", - "@vue/language-core": "3.0.1", - "@vue/language-service": "3.0.1", - "@vue/typescript-plugin": "3.0.1", + "@vue/language-core": "3.0.2", + "@vue/language-service": "3.0.2", + "@vue/typescript-plugin": "3.0.2", "vscode-uri": "^3.0.8" }, "peerDependencies": { diff --git a/packages/language-service/package.json b/packages/language-service/package.json index 7005738f0f..651da8f4bc 100644 --- a/packages/language-service/package.json +++ b/packages/language-service/package.json @@ -1,6 +1,6 @@ { "name": "@vue/language-service", - "version": "3.0.1", + "version": "3.0.2", "license": "MIT", "files": [ "data", @@ -18,7 +18,7 @@ }, "dependencies": { "@volar/language-service": "2.4.19", - "@vue/language-core": "3.0.1", + "@vue/language-core": "3.0.2", "@vue/shared": "^3.5.0", "path-browserify": "^1.0.1", "volar-service-css": "0.0.65", @@ -37,7 +37,7 @@ "@volar/kit": "2.4.19", "@volar/typescript": "2.4.19", "@vue/compiler-dom": "^3.5.0", - "@vue/typescript-plugin": "3.0.1", + "@vue/typescript-plugin": "3.0.2", "vscode-css-languageservice": "^6.3.1" } } diff --git a/packages/tsc/package.json b/packages/tsc/package.json index c48066b5b5..d74ed36781 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "vue-tsc", - "version": "3.0.1", + "version": "3.0.2", "license": "MIT", "files": [ "bin", @@ -21,7 +21,7 @@ }, "dependencies": { "@volar/typescript": "2.4.19", - "@vue/language-core": "3.0.1" + "@vue/language-core": "3.0.2" }, "devDependencies": { "@types/node": "^22.10.4" diff --git a/packages/typescript-plugin/package.json b/packages/typescript-plugin/package.json index 3b029f5889..ec2f2b9cce 100644 --- a/packages/typescript-plugin/package.json +++ b/packages/typescript-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@vue/typescript-plugin", - "version": "3.0.1", + "version": "3.0.2", "license": "MIT", "files": [ "**/*.js", @@ -14,7 +14,7 @@ }, "dependencies": { "@volar/typescript": "2.4.19", - "@vue/language-core": "3.0.1", + "@vue/language-core": "3.0.2", "@vue/shared": "^3.5.0", "path-browserify": "^1.0.1" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7880fd878b..64e5558671 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -60,10 +60,10 @@ importers: specifier: ^3.5.0 version: 3.5.13 '@vue/language-server': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../../packages/language-server '@vue/typescript-plugin': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../../packages/typescript-plugin reactive-vscode: specifier: ^0.2.9 @@ -87,7 +87,7 @@ importers: specifier: 2.4.19 version: 2.4.19 '@vue/language-core': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../language-core path-browserify: specifier: ^1.0.1 @@ -103,7 +103,7 @@ importers: specifier: ^1.0.1 version: 1.0.3 vue-component-type-helpers: - specifier: 3.0.1 + specifier: 3.0.2 version: link:../component-type-helpers packages/component-type-helpers: {} @@ -170,7 +170,7 @@ importers: specifier: ^3.5.0 version: 3.5.13 '@vue/language-core': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../language-core packages/language-server: @@ -179,13 +179,13 @@ importers: specifier: 2.4.19 version: 2.4.19 '@vue/language-core': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../language-core '@vue/language-service': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../language-service '@vue/typescript-plugin': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../typescript-plugin typescript: specifier: '*' @@ -207,7 +207,7 @@ importers: specifier: 2.4.19 version: 2.4.19 '@vue/language-core': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../language-core '@vue/shared': specifier: ^3.5.0 @@ -259,7 +259,7 @@ importers: specifier: ^3.5.0 version: 3.5.13 '@vue/typescript-plugin': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../typescript-plugin vscode-css-languageservice: specifier: ^6.3.1 @@ -271,7 +271,7 @@ importers: specifier: 2.4.19 version: 2.4.19 '@vue/language-core': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../language-core typescript: specifier: '>=5.0.0' @@ -287,7 +287,7 @@ importers: specifier: 2.4.19 version: 2.4.19 '@vue/language-core': - specifier: 3.0.1 + specifier: 3.0.2 version: link:../language-core '@vue/shared': specifier: ^3.5.0 @@ -312,7 +312,7 @@ importers: specifier: https://pkg.pr.new/vue@e1bc0eb02e22bc0c236e1471c11d96a368764b72 version: https://pkg.pr.new/vue@e1bc0eb02e22bc0c236e1471c11d96a368764b72(typescript@5.8.3) vue-component-type-helpers: - specifier: 3.0.1 + specifier: 3.0.2 version: link:../packages/component-type-helpers vue3.4: specifier: npm:vue@3.4.38 diff --git a/test-workspace/package.json b/test-workspace/package.json index 8a5c0eb67f..9ba1e6ba9a 100644 --- a/test-workspace/package.json +++ b/test-workspace/package.json @@ -1,10 +1,10 @@ { "private": true, - "version": "3.0.1", + "version": "3.0.2", "devDependencies": { "typescript": "latest", "vue": "https://pkg.pr.new/vue@e1bc0eb02e22bc0c236e1471c11d96a368764b72", - "vue-component-type-helpers": "3.0.1", + "vue-component-type-helpers": "3.0.2", "vue3.4": "npm:vue@3.4.38" } }