Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: volar ts plugin compatibility #2317

Merged
merged 9 commits into from
Apr 25, 2024

Conversation

jasonlyu123
Copy link
Member

#2307

  1. Improve the svelte project check for InferredProject. Start from the current directory and go down 2 levels in the directory tree to search for package.json. Then we use the directories with package.json to search for svelte modules. If your ts-plugin is no longer enabled, you can create a jsconfig.json where your package.json is. This alone should resolve most problems since the plugin won't be applied at all.

  2. Disable the plugin in the config level until we receive the _typescript.configurePlugin request. This should decrease the chance of the project update because of the config toggle.

As for the Debug.assert in ts 5.5 nightly, this happens because ts clears .d.ts loaded by open files in InferredProject. So in non-svelte projects, the .d.ts from svelte might be clear whenever a file is closed. Haven't found a good way to resolve this but a better svelte project detection should already lower the chance happens.

@johnsoncodehk could you check if this resolves the compatibility issues?

@jasonlyu123 jasonlyu123 changed the title Volar ts plugin compatibility fix: volar ts plugin compatibility Mar 14, 2024
@jasonlyu123 jasonlyu123 marked this pull request as ready for review April 17, 2024 04:40
@jasonlyu123
Copy link
Member Author

As for the Debug.assert in ts 5.5 nightly, this happens because ts clears .d.ts loaded by open files in InferredProject.

This actually happens in 5.3 as well. It also happens to Svelte projects without tsconfig/jsconfig. We can probably fix it in a separate PR.

@dummdidumm dummdidumm merged commit a8e45c6 into sveltejs:master Apr 25, 2024
3 checks passed
dummdidumm added a commit that referenced this pull request Apr 25, 2024
The change in #2317 to wait for the "enable" request the extension sends lead to all TS files that use Svelte files and part of the initial tsconfig files getting all kinds of type errors because they were already loaded before the enable kicks in
dummdidumm added a commit that referenced this pull request Apr 25, 2024
The change in #2317 to wait for the "enable" request the extension sends lead to all TS files that use Svelte files and part of the initial tsconfig files getting all kinds of type errors because they were already loaded before the enable kicks in
renovate bot added a commit to slipmatio/logger that referenced this pull request May 6, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node))
| [`20.12.7` ->
`20.12.8`](https://renovatebot.com/diffs/npm/@types%2fnode/20.12.7/20.12.8)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.12.7/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.12.7/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vitest/coverage-v8](https://togithub.com/vitest-dev/vitest/tree/main/packages/coverage-v8#readme)
([source](https://togithub.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8))
| [`1.5.2` ->
`1.6.0`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-v8/1.5.2/1.6.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fcoverage-v8/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fcoverage-v8/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fcoverage-v8/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fcoverage-v8/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vite](https://vitejs.dev)
([source](https://togithub.com/vitejs/vite/tree/HEAD/packages/vite)) |
[`5.2.10` ->
`5.2.11`](https://renovatebot.com/diffs/npm/vite/5.2.10/5.2.11) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vite/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/5.2.10/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/5.2.10/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vitest](https://togithub.com/vitest-dev/vitest)
([source](https://togithub.com/vitest-dev/vitest/tree/HEAD/packages/vitest))
| [`1.5.2` ->
`1.6.0`](https://renovatebot.com/diffs/npm/vitest/1.5.2/1.6.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vue](https://togithub.com/vuejs/core/tree/main/packages/vue#readme)
([source](https://togithub.com/vuejs/core)) | [`3.4.25` ->
`3.4.26`](https://renovatebot.com/diffs/npm/vue/3.4.25/3.4.26) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue/3.4.25/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue/3.4.25/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vue-tsc](https://togithub.com/vuejs/language-tools)
([source](https://togithub.com/vuejs/language-tools/tree/HEAD/packages/tsc))
| [`2.0.14` ->
`2.0.16`](https://renovatebot.com/diffs/npm/vue-tsc/2.0.14/2.0.16) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue-tsc/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue-tsc/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue-tsc/2.0.14/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue-tsc/2.0.14/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/coverage-v8)</summary>

###
[`v1.6.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v1.6.0)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v1.5.3...v1.6.0)

#####    🚀 Features

- Support standalone mode  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5565](https://togithub.com/vitest-dev/vitest/issues/5565)
[<samp>(bdce0)</samp>](https://togithub.com/vitest-dev/vitest/commit/bdce0a29)
- Custom "snapshotEnvironment" option  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5449](https://togithub.com/vitest-dev/vitest/issues/5449)
[<samp>(30f72)</samp>](https://togithub.com/vitest-dev/vitest/commit/30f728bc)
- **benchmark**: Support comparing benchmark result  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5398](https://togithub.com/vitest-dev/vitest/issues/5398)
[<samp>(f8d3d)</samp>](https://togithub.com/vitest-dev/vitest/commit/f8d3d22e)
- **browser**: Allow injecting scripts  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5656](https://togithub.com/vitest-dev/vitest/issues/5656)
[<samp>(21e58)</samp>](https://togithub.com/vitest-dev/vitest/commit/21e58bd8)
- **reporter**: Support `includeConsoleOutput` and `addFileAttribute` in
junit  -  by [@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5659](https://togithub.com/vitest-dev/vitest/issues/5659)
[<samp>(2f913)</samp>](https://togithub.com/vitest-dev/vitest/commit/2f913222)
- **ui**: Sort items by file name  -  by
[@&#8203;btea](https://togithub.com/btea) in
[https://github.com/vitest-dev/vitest/issues/5652](https://togithub.com/vitest-dev/vitest/issues/5652)
[<samp>(1f726)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f7268fa)

#####    🐞 Bug Fixes

- Keep order of arguments for .each in custom task collectors  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5640](https://togithub.com/vitest-dev/vitest/issues/5640)
[<samp>(7d57c)</samp>](https://togithub.com/vitest-dev/vitest/commit/7d57c116)
- Call `resolveId('vitest')` after `buildStart`  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5646](https://togithub.com/vitest-dev/vitest/issues/5646)
[<samp>(f5faf)</samp>](https://togithub.com/vitest-dev/vitest/commit/f5faf423)
- Hash the name of the file when caching  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5654](https://togithub.com/vitest-dev/vitest/issues/5654)
[<samp>(c9e68)</samp>](https://togithub.com/vitest-dev/vitest/commit/c9e68ced)
- Don't panic on empty files in node_modules  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(40c29)</samp>](https://togithub.com/vitest-dev/vitest/commit/40c299fe)
- Use `toJSON` for error serialization  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5526](https://togithub.com/vitest-dev/vitest/issues/5526)
[<samp>(19a21)</samp>](https://togithub.com/vitest-dev/vitest/commit/19a21e49)
-   **coverage**:
- Exclude `*.test-d.*` by default  -  by
[@&#8203;MindfulPol](https://togithub.com/MindfulPol) in
[https://github.com/vitest-dev/vitest/issues/5634](https://togithub.com/vitest-dev/vitest/issues/5634)
[<samp>(bfe8a)</samp>](https://togithub.com/vitest-dev/vitest/commit/bfe8ad9d)
- Apply `vite-node`'s wrapper only to executed files  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/5642](https://togithub.com/vitest-dev/vitest/issues/5642)
[<samp>(c9883)</samp>](https://togithub.com/vitest-dev/vitest/commit/c9883f3e)
-   **vm**:
- Support network imports  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5610](https://togithub.com/vitest-dev/vitest/issues/5610)
[<samp>(103a6)</samp>](https://togithub.com/vitest-dev/vitest/commit/103a6002)

#####    🏎 Performance

- Improve performance of forks pool  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5592](https://togithub.com/vitest-dev/vitest/issues/5592)
[<samp>(d8304)</samp>](https://togithub.com/vitest-dev/vitest/commit/d8304bb4)
- Unnecessary rpc call when coverage is disabled  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/5658](https://togithub.com/vitest-dev/vitest/issues/5658)
[<samp>(c5712)</samp>](https://togithub.com/vitest-dev/vitest/commit/c571276a)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v1.5.3...v1.6.0)

###
[`v1.5.3`](https://togithub.com/vitest-dev/vitest/releases/tag/v1.5.3)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v1.5.2...v1.5.3)

#####    🐞 Bug Fixes

- Use package.json name for a workspace project if not provided  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5608](https://togithub.com/vitest-dev/vitest/issues/5608)
[<samp>(48fba)</samp>](https://togithub.com/vitest-dev/vitest/commit/48fba190)
- Backport jest iterable equality within object  -  by
[@&#8203;sukovanej](https://togithub.com/sukovanej) in
[https://github.com/vitest-dev/vitest/issues/5621](https://togithub.com/vitest-dev/vitest/issues/5621)
[<samp>(30e5d)</samp>](https://togithub.com/vitest-dev/vitest/commit/30e5dc1b)
- **browser**: Support benchmark  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5622](https://togithub.com/vitest-dev/vitest/issues/5622)
[<samp>(becab)</samp>](https://togithub.com/vitest-dev/vitest/commit/becabb5e)
- **reporter**: Use default error formatter for JUnit  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5629](https://togithub.com/vitest-dev/vitest/issues/5629)
[<samp>(20060)</samp>](https://togithub.com/vitest-dev/vitest/commit/200609cc)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v1.5.2...v1.5.3)

</details>

<details>
<summary>vitejs/vite (vite)</summary>

###
[`v5.2.11`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

[Compare
Source](https://togithub.com/vitejs/vite/compare/v5.2.10...v5.2.11)

- feat: improve dynamic import variable failure error message
([#&#8203;16519](https://togithub.com/vitejs/vite/issues/16519))
([f8feeea](https://togithub.com/vitejs/vite/commit/f8feeea)), closes
[#&#8203;16519](https://togithub.com/vitejs/vite/issues/16519)
- fix: dynamic-import-vars plugin normalize path issue
([#&#8203;16518](https://togithub.com/vitejs/vite/issues/16518))
([f71ba5b](https://togithub.com/vitejs/vite/commit/f71ba5b)), closes
[#&#8203;16518](https://togithub.com/vitejs/vite/issues/16518)
- fix: scripts and styles were missing from built HTML on Windows
([#&#8203;16421](https://togithub.com/vitejs/vite/issues/16421))
([0e93f58](https://togithub.com/vitejs/vite/commit/0e93f58)), closes
[#&#8203;16421](https://togithub.com/vitejs/vite/issues/16421)
- fix(deps): update all non-major dependencies
([#&#8203;16488](https://togithub.com/vitejs/vite/issues/16488))
([2d50be2](https://togithub.com/vitejs/vite/commit/2d50be2)), closes
[#&#8203;16488](https://togithub.com/vitejs/vite/issues/16488)
- fix(deps): update all non-major dependencies
([#&#8203;16549](https://togithub.com/vitejs/vite/issues/16549))
([2d6a13b](https://togithub.com/vitejs/vite/commit/2d6a13b)), closes
[#&#8203;16549](https://togithub.com/vitejs/vite/issues/16549)
- fix(dev): watch publicDir explicitly to include it outside the root
([#&#8203;16502](https://togithub.com/vitejs/vite/issues/16502))
([4d83eb5](https://togithub.com/vitejs/vite/commit/4d83eb5)), closes
[#&#8203;16502](https://togithub.com/vitejs/vite/issues/16502)
- fix(preload): skip preload for non-static urls
([#&#8203;16556](https://togithub.com/vitejs/vite/issues/16556))
([bb79c9b](https://togithub.com/vitejs/vite/commit/bb79c9b)), closes
[#&#8203;16556](https://togithub.com/vitejs/vite/issues/16556)
- fix(ssr): handle class declaration and expression name scoping
([#&#8203;16569](https://togithub.com/vitejs/vite/issues/16569))
([c071eb3](https://togithub.com/vitejs/vite/commit/c071eb3)), closes
[#&#8203;16569](https://togithub.com/vitejs/vite/issues/16569)
- fix(ssr): handle function expression name scoping
([#&#8203;16563](https://togithub.com/vitejs/vite/issues/16563))
([02db947](https://togithub.com/vitejs/vite/commit/02db947)), closes
[#&#8203;16563](https://togithub.com/vitejs/vite/issues/16563)

</details>

<details>
<summary>vuejs/core (vue)</summary>

###
[`v3.4.26`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#3426-2024-04-29)

[Compare
Source](https://togithub.com/vuejs/core/compare/v3.4.25...v3.4.26)

##### Bug Fixes

- **compiler-core:** fix bail constant for globals
([fefce06](https://togithub.com/vuejs/core/commit/fefce06b41e3b75de3d748dc6399628ec5056e78))
- **compiler-core:** remove unnecessary constant bail check
([09b4df8](https://togithub.com/vuejs/core/commit/09b4df809e59ef5f4bc91acfc56dc8f82a8e243a)),
closes [#&#8203;10807](https://togithub.com/vuejs/core/issues/10807)
- **runtime-core:** attrs should be readonly in functional components
([#&#8203;10767](https://togithub.com/vuejs/core/issues/10767))
([e8fd644](https://togithub.com/vuejs/core/commit/e8fd6446d14a6899e5e8ab1ee394d90088e01844))
- **runtime-core:** ensure slot compiler marker writable
([#&#8203;10825](https://togithub.com/vuejs/core/issues/10825))
([9c2de62](https://togithub.com/vuejs/core/commit/9c2de6244cd44bc5fbfd82b5850c710ce725044f)),
closes [#&#8203;10818](https://togithub.com/vuejs/core/issues/10818)
- **runtime-core:** properly handle inherit transition during clone
VNode ([#&#8203;10809](https://togithub.com/vuejs/core/issues/10809))
([638a79f](https://togithub.com/vuejs/core/commit/638a79f64a7e184f2a2c65e21d764703f4bda561)),
closes [#&#8203;3716](https://togithub.com/vuejs/core/issues/3716)
[#&#8203;10497](https://togithub.com/vuejs/core/issues/10497)
[#&#8203;4091](https://togithub.com/vuejs/core/issues/4091)
- **Transition:** re-fix
[#&#8203;10620](https://togithub.com/vuejs/core/issues/10620)
([#&#8203;10832](https://togithub.com/vuejs/core/issues/10832))
([accf839](https://togithub.com/vuejs/core/commit/accf8396ae1c9dd49759ba0546483f1d2c70c9bc)),
closes [#&#8203;10632](https://togithub.com/vuejs/core/issues/10632)
[#&#8203;10827](https://togithub.com/vuejs/core/issues/10827)

</details>

<details>
<summary>vuejs/language-tools (vue-tsc)</summary>

###
[`v2.0.16`](https://togithub.com/vuejs/language-tools/blob/HEAD/CHANGELOG.md#2016-202451)

[Compare
Source](https://togithub.com/vuejs/language-tools/compare/v2.0.15...v2.0.16)

##### Bug Fixes

- **language-core:** virtual document language ID is not updated when
changing SFC style block lang
- **language-core:** correct logic for `defineSlots` destructuring
([#&#8203;4326](https://togithub.com/vuejs/language-tools/issues/4326))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)
- **language-core:** ObjectDirective does not work with `defineSlots`
([#&#8203;4327](https://togithub.com/vuejs/language-tools/issues/4327))
- **language-service:** emmet not working in postcss style block
([https://github.com/volarjs/volar.js/issues/169](https://togithub.com/volarjs/volar.js/issues/169))

##### Other Changes

- Upgrade to [Volar
2.2](https://togithub.com/volarjs/volar.js/releases/tag/v2.2.0)
- **language-core:** export `VueEmbeddedCode`
([#&#8203;4265](https://togithub.com/vuejs/language-tools/issues/4265))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)
- **typescript-plugin:** expose `FileRegistry` to `project.program`
([#&#8203;3963](https://togithub.com/vuejs/language-tools/issues/3963))
- Thanks [@&#8203;zcf0508](https://togithub.com/zcf0508)
- **vscode:** remove outdated formatters section
([#&#8203;4243](https://togithub.com/vuejs/language-tools/issues/4243))
- Thanks [@&#8203;BBboy01](https://togithub.com/BBboy01)

###
[`v2.0.15`](https://togithub.com/vuejs/language-tools/blob/HEAD/CHANGELOG.md#2015-2024430)

[Compare
Source](https://togithub.com/vuejs/language-tools/compare/v2.0.14...v2.0.15)

##### Features

- Redesign additional extensions, VitePress, PetiteVue support
([#&#8203;4321](https://togithub.com/vuejs/language-tools/issues/4321))
- Fix custom file extensions not working in Hybrid Mode
([#&#8203;4251](https://togithub.com/vuejs/language-tools/issues/4251))
- **vscode:** prompt when Hybrid Mode is explicitly enabled but known
incompatible extensions are installed
- **language-core:** use internal options for directly exposing user
props/emits types
([vuejs/core#10801](https://togithub.com/vuejs/core/pull/10801))
- **language-core:** support defineSlots destructuring
([#&#8203;4312](https://togithub.com/vuejs/language-tools/issues/4312))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)

##### Bug Fixes

- **vscode:** when enabled VitePress support, extension not activated
when opening markdown files
-   **language-core:** auto-complete not working in v-bind

##### Performance

- **language-service:** emmet completion should not be blocked by TS
type evaluation
([#&#8203;4298](https://togithub.com/vuejs/language-tools/issues/4298))
-   **language-core:** simplify virtual code for intrinsic elements

##### Other Changes

-   Upgrade Volar from `v2.2.0-alpha.10` to `v2.2.0-alpha.12`:
    -   Avoid extension crash when workspace TSDK does not exist
- Fix template variables cannot be renamed at the first character in
Hybrid Mode
([#&#8203;4297](https://togithub.com/vuejs/language-tools/issues/4297))
- Fix template virtual code mapping is misaligned in Windows in Hybrid
Mode
([#&#8203;4297](https://togithub.com/vuejs/language-tools/issues/4297))
- Add `svelte.svelte-vscode` (>=108.4.0) to Hybrid Mode compatibility
whitelist
([sveltejs/language-tools#2317](https://togithub.com/sveltejs/language-tools/pull/2317))
-   **component-meta:** convert source code to TS
- **language-core:** export `allCodeFeatures`
([#&#8203;4320](https://togithub.com/vuejs/language-tools/issues/4320))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" in timezone
Europe/Helsinki, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/slipmatio/logger).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNDAuMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNy4zNDAuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot added a commit to slipmatio/ui that referenced this pull request May 6, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node))
| [`20.12.7` ->
`20.12.8`](https://renovatebot.com/diffs/npm/@types%2fnode/20.12.7/20.12.8)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.12.7/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.12.7/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vitest/coverage-v8](https://togithub.com/vitest-dev/vitest/tree/main/packages/coverage-v8#readme)
([source](https://togithub.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8))
| [`1.5.2` ->
`1.6.0`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-v8/1.5.2/1.6.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fcoverage-v8/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fcoverage-v8/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fcoverage-v8/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fcoverage-v8/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vite](https://vitejs.dev)
([source](https://togithub.com/vitejs/vite/tree/HEAD/packages/vite)) |
[`5.2.10` ->
`5.2.11`](https://renovatebot.com/diffs/npm/vite/5.2.10/5.2.11) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vite/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/5.2.10/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/5.2.10/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vitest](https://togithub.com/vitest-dev/vitest)
([source](https://togithub.com/vitest-dev/vitest/tree/HEAD/packages/vitest))
| [`1.5.2` ->
`1.6.0`](https://renovatebot.com/diffs/npm/vitest/1.5.2/1.6.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vue](https://togithub.com/vuejs/core/tree/main/packages/vue#readme)
([source](https://togithub.com/vuejs/core)) | [`3.4.25` ->
`3.4.26`](https://renovatebot.com/diffs/npm/vue/3.4.25/3.4.26) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue/3.4.25/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue/3.4.25/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vue-tsc](https://togithub.com/vuejs/language-tools)
([source](https://togithub.com/vuejs/language-tools/tree/HEAD/packages/tsc))
| [`2.0.14` ->
`2.0.16`](https://renovatebot.com/diffs/npm/vue-tsc/2.0.14/2.0.16) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue-tsc/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue-tsc/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue-tsc/2.0.14/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue-tsc/2.0.14/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/coverage-v8)</summary>

###
[`v1.6.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v1.6.0)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v1.5.3...v1.6.0)

#####    🚀 Features

- Support standalone mode  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5565](https://togithub.com/vitest-dev/vitest/issues/5565)
[<samp>(bdce0)</samp>](https://togithub.com/vitest-dev/vitest/commit/bdce0a29)
- Custom "snapshotEnvironment" option  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5449](https://togithub.com/vitest-dev/vitest/issues/5449)
[<samp>(30f72)</samp>](https://togithub.com/vitest-dev/vitest/commit/30f728bc)
- **benchmark**: Support comparing benchmark result  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5398](https://togithub.com/vitest-dev/vitest/issues/5398)
[<samp>(f8d3d)</samp>](https://togithub.com/vitest-dev/vitest/commit/f8d3d22e)
- **browser**: Allow injecting scripts  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5656](https://togithub.com/vitest-dev/vitest/issues/5656)
[<samp>(21e58)</samp>](https://togithub.com/vitest-dev/vitest/commit/21e58bd8)
- **reporter**: Support `includeConsoleOutput` and `addFileAttribute` in
junit  -  by [@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5659](https://togithub.com/vitest-dev/vitest/issues/5659)
[<samp>(2f913)</samp>](https://togithub.com/vitest-dev/vitest/commit/2f913222)
- **ui**: Sort items by file name  -  by
[@&#8203;btea](https://togithub.com/btea) in
[https://github.com/vitest-dev/vitest/issues/5652](https://togithub.com/vitest-dev/vitest/issues/5652)
[<samp>(1f726)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f7268fa)

#####    🐞 Bug Fixes

- Keep order of arguments for .each in custom task collectors  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5640](https://togithub.com/vitest-dev/vitest/issues/5640)
[<samp>(7d57c)</samp>](https://togithub.com/vitest-dev/vitest/commit/7d57c116)
- Call `resolveId('vitest')` after `buildStart`  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5646](https://togithub.com/vitest-dev/vitest/issues/5646)
[<samp>(f5faf)</samp>](https://togithub.com/vitest-dev/vitest/commit/f5faf423)
- Hash the name of the file when caching  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5654](https://togithub.com/vitest-dev/vitest/issues/5654)
[<samp>(c9e68)</samp>](https://togithub.com/vitest-dev/vitest/commit/c9e68ced)
- Don't panic on empty files in node_modules  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(40c29)</samp>](https://togithub.com/vitest-dev/vitest/commit/40c299fe)
- Use `toJSON` for error serialization  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5526](https://togithub.com/vitest-dev/vitest/issues/5526)
[<samp>(19a21)</samp>](https://togithub.com/vitest-dev/vitest/commit/19a21e49)
-   **coverage**:
- Exclude `*.test-d.*` by default  -  by
[@&#8203;MindfulPol](https://togithub.com/MindfulPol) in
[https://github.com/vitest-dev/vitest/issues/5634](https://togithub.com/vitest-dev/vitest/issues/5634)
[<samp>(bfe8a)</samp>](https://togithub.com/vitest-dev/vitest/commit/bfe8ad9d)
- Apply `vite-node`'s wrapper only to executed files  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/5642](https://togithub.com/vitest-dev/vitest/issues/5642)
[<samp>(c9883)</samp>](https://togithub.com/vitest-dev/vitest/commit/c9883f3e)
-   **vm**:
- Support network imports  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5610](https://togithub.com/vitest-dev/vitest/issues/5610)
[<samp>(103a6)</samp>](https://togithub.com/vitest-dev/vitest/commit/103a6002)

#####    🏎 Performance

- Improve performance of forks pool  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5592](https://togithub.com/vitest-dev/vitest/issues/5592)
[<samp>(d8304)</samp>](https://togithub.com/vitest-dev/vitest/commit/d8304bb4)
- Unnecessary rpc call when coverage is disabled  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/5658](https://togithub.com/vitest-dev/vitest/issues/5658)
[<samp>(c5712)</samp>](https://togithub.com/vitest-dev/vitest/commit/c571276a)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v1.5.3...v1.6.0)

###
[`v1.5.3`](https://togithub.com/vitest-dev/vitest/releases/tag/v1.5.3)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v1.5.2...v1.5.3)

#####    🐞 Bug Fixes

- Use package.json name for a workspace project if not provided  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5608](https://togithub.com/vitest-dev/vitest/issues/5608)
[<samp>(48fba)</samp>](https://togithub.com/vitest-dev/vitest/commit/48fba190)
- Backport jest iterable equality within object  -  by
[@&#8203;sukovanej](https://togithub.com/sukovanej) in
[https://github.com/vitest-dev/vitest/issues/5621](https://togithub.com/vitest-dev/vitest/issues/5621)
[<samp>(30e5d)</samp>](https://togithub.com/vitest-dev/vitest/commit/30e5dc1b)
- **browser**: Support benchmark  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5622](https://togithub.com/vitest-dev/vitest/issues/5622)
[<samp>(becab)</samp>](https://togithub.com/vitest-dev/vitest/commit/becabb5e)
- **reporter**: Use default error formatter for JUnit  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5629](https://togithub.com/vitest-dev/vitest/issues/5629)
[<samp>(20060)</samp>](https://togithub.com/vitest-dev/vitest/commit/200609cc)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v1.5.2...v1.5.3)

</details>

<details>
<summary>vitejs/vite (vite)</summary>

###
[`v5.2.11`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

[Compare
Source](https://togithub.com/vitejs/vite/compare/v5.2.10...v5.2.11)

- feat: improve dynamic import variable failure error message
([#&#8203;16519](https://togithub.com/vitejs/vite/issues/16519))
([f8feeea](https://togithub.com/vitejs/vite/commit/f8feeea)), closes
[#&#8203;16519](https://togithub.com/vitejs/vite/issues/16519)
- fix: dynamic-import-vars plugin normalize path issue
([#&#8203;16518](https://togithub.com/vitejs/vite/issues/16518))
([f71ba5b](https://togithub.com/vitejs/vite/commit/f71ba5b)), closes
[#&#8203;16518](https://togithub.com/vitejs/vite/issues/16518)
- fix: scripts and styles were missing from built HTML on Windows
([#&#8203;16421](https://togithub.com/vitejs/vite/issues/16421))
([0e93f58](https://togithub.com/vitejs/vite/commit/0e93f58)), closes
[#&#8203;16421](https://togithub.com/vitejs/vite/issues/16421)
- fix(deps): update all non-major dependencies
([#&#8203;16488](https://togithub.com/vitejs/vite/issues/16488))
([2d50be2](https://togithub.com/vitejs/vite/commit/2d50be2)), closes
[#&#8203;16488](https://togithub.com/vitejs/vite/issues/16488)
- fix(deps): update all non-major dependencies
([#&#8203;16549](https://togithub.com/vitejs/vite/issues/16549))
([2d6a13b](https://togithub.com/vitejs/vite/commit/2d6a13b)), closes
[#&#8203;16549](https://togithub.com/vitejs/vite/issues/16549)
- fix(dev): watch publicDir explicitly to include it outside the root
([#&#8203;16502](https://togithub.com/vitejs/vite/issues/16502))
([4d83eb5](https://togithub.com/vitejs/vite/commit/4d83eb5)), closes
[#&#8203;16502](https://togithub.com/vitejs/vite/issues/16502)
- fix(preload): skip preload for non-static urls
([#&#8203;16556](https://togithub.com/vitejs/vite/issues/16556))
([bb79c9b](https://togithub.com/vitejs/vite/commit/bb79c9b)), closes
[#&#8203;16556](https://togithub.com/vitejs/vite/issues/16556)
- fix(ssr): handle class declaration and expression name scoping
([#&#8203;16569](https://togithub.com/vitejs/vite/issues/16569))
([c071eb3](https://togithub.com/vitejs/vite/commit/c071eb3)), closes
[#&#8203;16569](https://togithub.com/vitejs/vite/issues/16569)
- fix(ssr): handle function expression name scoping
([#&#8203;16563](https://togithub.com/vitejs/vite/issues/16563))
([02db947](https://togithub.com/vitejs/vite/commit/02db947)), closes
[#&#8203;16563](https://togithub.com/vitejs/vite/issues/16563)

</details>

<details>
<summary>vuejs/core (vue)</summary>

###
[`v3.4.26`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#3426-2024-04-29)

[Compare
Source](https://togithub.com/vuejs/core/compare/v3.4.25...v3.4.26)

##### Bug Fixes

- **compiler-core:** fix bail constant for globals
([fefce06](https://togithub.com/vuejs/core/commit/fefce06b41e3b75de3d748dc6399628ec5056e78))
- **compiler-core:** remove unnecessary constant bail check
([09b4df8](https://togithub.com/vuejs/core/commit/09b4df809e59ef5f4bc91acfc56dc8f82a8e243a)),
closes [#&#8203;10807](https://togithub.com/vuejs/core/issues/10807)
- **runtime-core:** attrs should be readonly in functional components
([#&#8203;10767](https://togithub.com/vuejs/core/issues/10767))
([e8fd644](https://togithub.com/vuejs/core/commit/e8fd6446d14a6899e5e8ab1ee394d90088e01844))
- **runtime-core:** ensure slot compiler marker writable
([#&#8203;10825](https://togithub.com/vuejs/core/issues/10825))
([9c2de62](https://togithub.com/vuejs/core/commit/9c2de6244cd44bc5fbfd82b5850c710ce725044f)),
closes [#&#8203;10818](https://togithub.com/vuejs/core/issues/10818)
- **runtime-core:** properly handle inherit transition during clone
VNode ([#&#8203;10809](https://togithub.com/vuejs/core/issues/10809))
([638a79f](https://togithub.com/vuejs/core/commit/638a79f64a7e184f2a2c65e21d764703f4bda561)),
closes [#&#8203;3716](https://togithub.com/vuejs/core/issues/3716)
[#&#8203;10497](https://togithub.com/vuejs/core/issues/10497)
[#&#8203;4091](https://togithub.com/vuejs/core/issues/4091)
- **Transition:** re-fix
[#&#8203;10620](https://togithub.com/vuejs/core/issues/10620)
([#&#8203;10832](https://togithub.com/vuejs/core/issues/10832))
([accf839](https://togithub.com/vuejs/core/commit/accf8396ae1c9dd49759ba0546483f1d2c70c9bc)),
closes [#&#8203;10632](https://togithub.com/vuejs/core/issues/10632)
[#&#8203;10827](https://togithub.com/vuejs/core/issues/10827)

</details>

<details>
<summary>vuejs/language-tools (vue-tsc)</summary>

###
[`v2.0.16`](https://togithub.com/vuejs/language-tools/blob/HEAD/CHANGELOG.md#2016-202451)

[Compare
Source](https://togithub.com/vuejs/language-tools/compare/v2.0.15...v2.0.16)

##### Bug Fixes

- **language-core:** virtual document language ID is not updated when
changing SFC style block lang
- **language-core:** correct logic for `defineSlots` destructuring
([#&#8203;4326](https://togithub.com/vuejs/language-tools/issues/4326))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)
- **language-core:** ObjectDirective does not work with `defineSlots`
([#&#8203;4327](https://togithub.com/vuejs/language-tools/issues/4327))
- **language-service:** emmet not working in postcss style block
([https://github.com/volarjs/volar.js/issues/169](https://togithub.com/volarjs/volar.js/issues/169))

##### Other Changes

- Upgrade to [Volar
2.2](https://togithub.com/volarjs/volar.js/releases/tag/v2.2.0)
- **language-core:** export `VueEmbeddedCode`
([#&#8203;4265](https://togithub.com/vuejs/language-tools/issues/4265))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)
- **typescript-plugin:** expose `FileRegistry` to `project.program`
([#&#8203;3963](https://togithub.com/vuejs/language-tools/issues/3963))
- Thanks [@&#8203;zcf0508](https://togithub.com/zcf0508)
- **vscode:** remove outdated formatters section
([#&#8203;4243](https://togithub.com/vuejs/language-tools/issues/4243))
- Thanks [@&#8203;BBboy01](https://togithub.com/BBboy01)

###
[`v2.0.15`](https://togithub.com/vuejs/language-tools/blob/HEAD/CHANGELOG.md#2015-2024430)

[Compare
Source](https://togithub.com/vuejs/language-tools/compare/v2.0.14...v2.0.15)

##### Features

- Redesign additional extensions, VitePress, PetiteVue support
([#&#8203;4321](https://togithub.com/vuejs/language-tools/issues/4321))
- Fix custom file extensions not working in Hybrid Mode
([#&#8203;4251](https://togithub.com/vuejs/language-tools/issues/4251))
- **vscode:** prompt when Hybrid Mode is explicitly enabled but known
incompatible extensions are installed
- **language-core:** use internal options for directly exposing user
props/emits types
([vuejs/core#10801](https://togithub.com/vuejs/core/pull/10801))
- **language-core:** support defineSlots destructuring
([#&#8203;4312](https://togithub.com/vuejs/language-tools/issues/4312))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)

##### Bug Fixes

- **vscode:** when enabled VitePress support, extension not activated
when opening markdown files
-   **language-core:** auto-complete not working in v-bind

##### Performance

- **language-service:** emmet completion should not be blocked by TS
type evaluation
([#&#8203;4298](https://togithub.com/vuejs/language-tools/issues/4298))
-   **language-core:** simplify virtual code for intrinsic elements

##### Other Changes

-   Upgrade Volar from `v2.2.0-alpha.10` to `v2.2.0-alpha.12`:
    -   Avoid extension crash when workspace TSDK does not exist
- Fix template variables cannot be renamed at the first character in
Hybrid Mode
([#&#8203;4297](https://togithub.com/vuejs/language-tools/issues/4297))
- Fix template virtual code mapping is misaligned in Windows in Hybrid
Mode
([#&#8203;4297](https://togithub.com/vuejs/language-tools/issues/4297))
- Add `svelte.svelte-vscode` (>=108.4.0) to Hybrid Mode compatibility
whitelist
([sveltejs/language-tools#2317](https://togithub.com/sveltejs/language-tools/pull/2317))
-   **component-meta:** convert source code to TS
- **language-core:** export `allCodeFeatures`
([#&#8203;4320](https://togithub.com/vuejs/language-tools/issues/4320))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" in timezone
Europe/Helsinki, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/slipmatio/ui).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNDAuMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNy4zNDAuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot added a commit to slipmatio/toolbelt that referenced this pull request May 6, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node))
| [`20.12.7` ->
`20.12.8`](https://renovatebot.com/diffs/npm/@types%2fnode/20.12.7/20.12.8)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.12.7/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.12.7/20.12.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vitest/coverage-v8](https://togithub.com/vitest-dev/vitest/tree/main/packages/coverage-v8#readme)
([source](https://togithub.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8))
| [`1.5.2` ->
`1.6.0`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-v8/1.5.2/1.6.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fcoverage-v8/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fcoverage-v8/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fcoverage-v8/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fcoverage-v8/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vite](https://vitejs.dev)
([source](https://togithub.com/vitejs/vite/tree/HEAD/packages/vite)) |
[`5.2.10` ->
`5.2.11`](https://renovatebot.com/diffs/npm/vite/5.2.10/5.2.11) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vite/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/5.2.10/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/5.2.10/5.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vitest](https://togithub.com/vitest-dev/vitest)
([source](https://togithub.com/vitest-dev/vitest/tree/HEAD/packages/vitest))
| [`1.5.2` ->
`1.6.0`](https://renovatebot.com/diffs/npm/vitest/1.5.2/1.6.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/1.5.2/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vue](https://togithub.com/vuejs/core/tree/main/packages/vue#readme)
([source](https://togithub.com/vuejs/core)) | [`3.4.25` ->
`3.4.26`](https://renovatebot.com/diffs/npm/vue/3.4.25/3.4.26) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue/3.4.25/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue/3.4.25/3.4.26?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vue-tsc](https://togithub.com/vuejs/language-tools)
([source](https://togithub.com/vuejs/language-tools/tree/HEAD/packages/tsc))
| [`2.0.14` ->
`2.0.16`](https://renovatebot.com/diffs/npm/vue-tsc/2.0.14/2.0.16) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue-tsc/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue-tsc/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue-tsc/2.0.14/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue-tsc/2.0.14/2.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/coverage-v8)</summary>

###
[`v1.6.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v1.6.0)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v1.5.3...v1.6.0)

#####    🚀 Features

- Support standalone mode  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5565](https://togithub.com/vitest-dev/vitest/issues/5565)
[<samp>(bdce0)</samp>](https://togithub.com/vitest-dev/vitest/commit/bdce0a29)
- Custom "snapshotEnvironment" option  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5449](https://togithub.com/vitest-dev/vitest/issues/5449)
[<samp>(30f72)</samp>](https://togithub.com/vitest-dev/vitest/commit/30f728bc)
- **benchmark**: Support comparing benchmark result  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5398](https://togithub.com/vitest-dev/vitest/issues/5398)
[<samp>(f8d3d)</samp>](https://togithub.com/vitest-dev/vitest/commit/f8d3d22e)
- **browser**: Allow injecting scripts  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5656](https://togithub.com/vitest-dev/vitest/issues/5656)
[<samp>(21e58)</samp>](https://togithub.com/vitest-dev/vitest/commit/21e58bd8)
- **reporter**: Support `includeConsoleOutput` and `addFileAttribute` in
junit  -  by [@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5659](https://togithub.com/vitest-dev/vitest/issues/5659)
[<samp>(2f913)</samp>](https://togithub.com/vitest-dev/vitest/commit/2f913222)
- **ui**: Sort items by file name  -  by
[@&#8203;btea](https://togithub.com/btea) in
[https://github.com/vitest-dev/vitest/issues/5652](https://togithub.com/vitest-dev/vitest/issues/5652)
[<samp>(1f726)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f7268fa)

#####    🐞 Bug Fixes

- Keep order of arguments for .each in custom task collectors  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5640](https://togithub.com/vitest-dev/vitest/issues/5640)
[<samp>(7d57c)</samp>](https://togithub.com/vitest-dev/vitest/commit/7d57c116)
- Call `resolveId('vitest')` after `buildStart`  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5646](https://togithub.com/vitest-dev/vitest/issues/5646)
[<samp>(f5faf)</samp>](https://togithub.com/vitest-dev/vitest/commit/f5faf423)
- Hash the name of the file when caching  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5654](https://togithub.com/vitest-dev/vitest/issues/5654)
[<samp>(c9e68)</samp>](https://togithub.com/vitest-dev/vitest/commit/c9e68ced)
- Don't panic on empty files in node_modules  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(40c29)</samp>](https://togithub.com/vitest-dev/vitest/commit/40c299fe)
- Use `toJSON` for error serialization  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5526](https://togithub.com/vitest-dev/vitest/issues/5526)
[<samp>(19a21)</samp>](https://togithub.com/vitest-dev/vitest/commit/19a21e49)
-   **coverage**:
- Exclude `*.test-d.*` by default  -  by
[@&#8203;MindfulPol](https://togithub.com/MindfulPol) in
[https://github.com/vitest-dev/vitest/issues/5634](https://togithub.com/vitest-dev/vitest/issues/5634)
[<samp>(bfe8a)</samp>](https://togithub.com/vitest-dev/vitest/commit/bfe8ad9d)
- Apply `vite-node`'s wrapper only to executed files  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/5642](https://togithub.com/vitest-dev/vitest/issues/5642)
[<samp>(c9883)</samp>](https://togithub.com/vitest-dev/vitest/commit/c9883f3e)
-   **vm**:
- Support network imports  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5610](https://togithub.com/vitest-dev/vitest/issues/5610)
[<samp>(103a6)</samp>](https://togithub.com/vitest-dev/vitest/commit/103a6002)

#####    🏎 Performance

- Improve performance of forks pool  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5592](https://togithub.com/vitest-dev/vitest/issues/5592)
[<samp>(d8304)</samp>](https://togithub.com/vitest-dev/vitest/commit/d8304bb4)
- Unnecessary rpc call when coverage is disabled  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/5658](https://togithub.com/vitest-dev/vitest/issues/5658)
[<samp>(c5712)</samp>](https://togithub.com/vitest-dev/vitest/commit/c571276a)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v1.5.3...v1.6.0)

###
[`v1.5.3`](https://togithub.com/vitest-dev/vitest/releases/tag/v1.5.3)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v1.5.2...v1.5.3)

#####    🐞 Bug Fixes

- Use package.json name for a workspace project if not provided  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/5608](https://togithub.com/vitest-dev/vitest/issues/5608)
[<samp>(48fba)</samp>](https://togithub.com/vitest-dev/vitest/commit/48fba190)
- Backport jest iterable equality within object  -  by
[@&#8203;sukovanej](https://togithub.com/sukovanej) in
[https://github.com/vitest-dev/vitest/issues/5621](https://togithub.com/vitest-dev/vitest/issues/5621)
[<samp>(30e5d)</samp>](https://togithub.com/vitest-dev/vitest/commit/30e5dc1b)
- **browser**: Support benchmark  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5622](https://togithub.com/vitest-dev/vitest/issues/5622)
[<samp>(becab)</samp>](https://togithub.com/vitest-dev/vitest/commit/becabb5e)
- **reporter**: Use default error formatter for JUnit  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[https://github.com/vitest-dev/vitest/issues/5629](https://togithub.com/vitest-dev/vitest/issues/5629)
[<samp>(20060)</samp>](https://togithub.com/vitest-dev/vitest/commit/200609cc)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v1.5.2...v1.5.3)

</details>

<details>
<summary>vitejs/vite (vite)</summary>

###
[`v5.2.11`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

[Compare
Source](https://togithub.com/vitejs/vite/compare/v5.2.10...v5.2.11)

- feat: improve dynamic import variable failure error message
([#&#8203;16519](https://togithub.com/vitejs/vite/issues/16519))
([f8feeea](https://togithub.com/vitejs/vite/commit/f8feeea)), closes
[#&#8203;16519](https://togithub.com/vitejs/vite/issues/16519)
- fix: dynamic-import-vars plugin normalize path issue
([#&#8203;16518](https://togithub.com/vitejs/vite/issues/16518))
([f71ba5b](https://togithub.com/vitejs/vite/commit/f71ba5b)), closes
[#&#8203;16518](https://togithub.com/vitejs/vite/issues/16518)
- fix: scripts and styles were missing from built HTML on Windows
([#&#8203;16421](https://togithub.com/vitejs/vite/issues/16421))
([0e93f58](https://togithub.com/vitejs/vite/commit/0e93f58)), closes
[#&#8203;16421](https://togithub.com/vitejs/vite/issues/16421)
- fix(deps): update all non-major dependencies
([#&#8203;16488](https://togithub.com/vitejs/vite/issues/16488))
([2d50be2](https://togithub.com/vitejs/vite/commit/2d50be2)), closes
[#&#8203;16488](https://togithub.com/vitejs/vite/issues/16488)
- fix(deps): update all non-major dependencies
([#&#8203;16549](https://togithub.com/vitejs/vite/issues/16549))
([2d6a13b](https://togithub.com/vitejs/vite/commit/2d6a13b)), closes
[#&#8203;16549](https://togithub.com/vitejs/vite/issues/16549)
- fix(dev): watch publicDir explicitly to include it outside the root
([#&#8203;16502](https://togithub.com/vitejs/vite/issues/16502))
([4d83eb5](https://togithub.com/vitejs/vite/commit/4d83eb5)), closes
[#&#8203;16502](https://togithub.com/vitejs/vite/issues/16502)
- fix(preload): skip preload for non-static urls
([#&#8203;16556](https://togithub.com/vitejs/vite/issues/16556))
([bb79c9b](https://togithub.com/vitejs/vite/commit/bb79c9b)), closes
[#&#8203;16556](https://togithub.com/vitejs/vite/issues/16556)
- fix(ssr): handle class declaration and expression name scoping
([#&#8203;16569](https://togithub.com/vitejs/vite/issues/16569))
([c071eb3](https://togithub.com/vitejs/vite/commit/c071eb3)), closes
[#&#8203;16569](https://togithub.com/vitejs/vite/issues/16569)
- fix(ssr): handle function expression name scoping
([#&#8203;16563](https://togithub.com/vitejs/vite/issues/16563))
([02db947](https://togithub.com/vitejs/vite/commit/02db947)), closes
[#&#8203;16563](https://togithub.com/vitejs/vite/issues/16563)

</details>

<details>
<summary>vuejs/core (vue)</summary>

###
[`v3.4.26`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#3426-2024-04-29)

[Compare
Source](https://togithub.com/vuejs/core/compare/v3.4.25...v3.4.26)

##### Bug Fixes

- **compiler-core:** fix bail constant for globals
([fefce06](https://togithub.com/vuejs/core/commit/fefce06b41e3b75de3d748dc6399628ec5056e78))
- **compiler-core:** remove unnecessary constant bail check
([09b4df8](https://togithub.com/vuejs/core/commit/09b4df809e59ef5f4bc91acfc56dc8f82a8e243a)),
closes [#&#8203;10807](https://togithub.com/vuejs/core/issues/10807)
- **runtime-core:** attrs should be readonly in functional components
([#&#8203;10767](https://togithub.com/vuejs/core/issues/10767))
([e8fd644](https://togithub.com/vuejs/core/commit/e8fd6446d14a6899e5e8ab1ee394d90088e01844))
- **runtime-core:** ensure slot compiler marker writable
([#&#8203;10825](https://togithub.com/vuejs/core/issues/10825))
([9c2de62](https://togithub.com/vuejs/core/commit/9c2de6244cd44bc5fbfd82b5850c710ce725044f)),
closes [#&#8203;10818](https://togithub.com/vuejs/core/issues/10818)
- **runtime-core:** properly handle inherit transition during clone
VNode ([#&#8203;10809](https://togithub.com/vuejs/core/issues/10809))
([638a79f](https://togithub.com/vuejs/core/commit/638a79f64a7e184f2a2c65e21d764703f4bda561)),
closes [#&#8203;3716](https://togithub.com/vuejs/core/issues/3716)
[#&#8203;10497](https://togithub.com/vuejs/core/issues/10497)
[#&#8203;4091](https://togithub.com/vuejs/core/issues/4091)
- **Transition:** re-fix
[#&#8203;10620](https://togithub.com/vuejs/core/issues/10620)
([#&#8203;10832](https://togithub.com/vuejs/core/issues/10832))
([accf839](https://togithub.com/vuejs/core/commit/accf8396ae1c9dd49759ba0546483f1d2c70c9bc)),
closes [#&#8203;10632](https://togithub.com/vuejs/core/issues/10632)
[#&#8203;10827](https://togithub.com/vuejs/core/issues/10827)

</details>

<details>
<summary>vuejs/language-tools (vue-tsc)</summary>

###
[`v2.0.16`](https://togithub.com/vuejs/language-tools/blob/HEAD/CHANGELOG.md#2016-202451)

[Compare
Source](https://togithub.com/vuejs/language-tools/compare/v2.0.15...v2.0.16)

##### Bug Fixes

- **language-core:** virtual document language ID is not updated when
changing SFC style block lang
- **language-core:** correct logic for `defineSlots` destructuring
([#&#8203;4326](https://togithub.com/vuejs/language-tools/issues/4326))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)
- **language-core:** ObjectDirective does not work with `defineSlots`
([#&#8203;4327](https://togithub.com/vuejs/language-tools/issues/4327))
- **language-service:** emmet not working in postcss style block
([https://github.com/volarjs/volar.js/issues/169](https://togithub.com/volarjs/volar.js/issues/169))

##### Other Changes

- Upgrade to [Volar
2.2](https://togithub.com/volarjs/volar.js/releases/tag/v2.2.0)
- **language-core:** export `VueEmbeddedCode`
([#&#8203;4265](https://togithub.com/vuejs/language-tools/issues/4265))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)
- **typescript-plugin:** expose `FileRegistry` to `project.program`
([#&#8203;3963](https://togithub.com/vuejs/language-tools/issues/3963))
- Thanks [@&#8203;zcf0508](https://togithub.com/zcf0508)
- **vscode:** remove outdated formatters section
([#&#8203;4243](https://togithub.com/vuejs/language-tools/issues/4243))
- Thanks [@&#8203;BBboy01](https://togithub.com/BBboy01)

###
[`v2.0.15`](https://togithub.com/vuejs/language-tools/blob/HEAD/CHANGELOG.md#2015-2024430)

[Compare
Source](https://togithub.com/vuejs/language-tools/compare/v2.0.14...v2.0.15)

##### Features

- Redesign additional extensions, VitePress, PetiteVue support
([#&#8203;4321](https://togithub.com/vuejs/language-tools/issues/4321))
- Fix custom file extensions not working in Hybrid Mode
([#&#8203;4251](https://togithub.com/vuejs/language-tools/issues/4251))
- **vscode:** prompt when Hybrid Mode is explicitly enabled but known
incompatible extensions are installed
- **language-core:** use internal options for directly exposing user
props/emits types
([vuejs/core#10801](https://togithub.com/vuejs/core/pull/10801))
- **language-core:** support defineSlots destructuring
([#&#8203;4312](https://togithub.com/vuejs/language-tools/issues/4312))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)

##### Bug Fixes

- **vscode:** when enabled VitePress support, extension not activated
when opening markdown files
-   **language-core:** auto-complete not working in v-bind

##### Performance

- **language-service:** emmet completion should not be blocked by TS
type evaluation
([#&#8203;4298](https://togithub.com/vuejs/language-tools/issues/4298))
-   **language-core:** simplify virtual code for intrinsic elements

##### Other Changes

-   Upgrade Volar from `v2.2.0-alpha.10` to `v2.2.0-alpha.12`:
    -   Avoid extension crash when workspace TSDK does not exist
- Fix template variables cannot be renamed at the first character in
Hybrid Mode
([#&#8203;4297](https://togithub.com/vuejs/language-tools/issues/4297))
- Fix template virtual code mapping is misaligned in Windows in Hybrid
Mode
([#&#8203;4297](https://togithub.com/vuejs/language-tools/issues/4297))
- Add `svelte.svelte-vscode` (>=108.4.0) to Hybrid Mode compatibility
whitelist
([sveltejs/language-tools#2317](https://togithub.com/sveltejs/language-tools/pull/2317))
-   **component-meta:** convert source code to TS
- **language-core:** export `allCodeFeatures`
([#&#8203;4320](https://togithub.com/vuejs/language-tools/issues/4320))
- Thanks [@&#8203;zhiyuanzmj](https://togithub.com/zhiyuanzmj)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" in timezone
Europe/Helsinki, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/slipmatio/toolbelt).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNDAuMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNy4zNDAuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants