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

feat(types): provide internal options for directly using user types in language tools #10801

Merged
merged 6 commits into from
Apr 27, 2024

Conversation

yyx990803
Copy link
Member

@yyx990803 yyx990803 commented Apr 25, 2024

ref #8952
cc @johnsoncodehk

Did some significant refactoring of defineComponent() types in this PR as well. Previously we used 3 different overloads of defineComponent to handle the cases of (1) no props (2) array props and (3) object props. For each of the overloads we also have an extra ComponentOptionsWith{No|Array|Object}Props type that repeats all the generic arguments.

I started by adding yet another overload for the type-based props case, but found it to be extremely unwieldy to manage all the overloads and duplication in the component options utility types. So I managed to merge all 4 cases into a single defineComponent() signature by picking the right props type source with conditional types. This also makes the previous ComponentOptionsWith{No|Array|Object}Props no longer needed - but they are kept because they were previously exported and may have been used by some libraries.

Copy link

Size Report

Bundles

File Size Gzip Brotli
runtime-dom.global.prod.js 93.9 kB (+3.24 kB) 35.5 kB (+966 B) 32 kB (+877 B)
vue.global.prod.js 151 kB (+3.24 kB) 54.8 kB (+999 B) 48.9 kB (+809 B)

Usages

Name Size Gzip Brotli
createApp 53.9 kB (+3.16 kB) 20.9 kB (+1.01 kB) 18.9 kB (+838 B)
createSSRApp 57.2 kB (+3.16 kB) 22.2 kB (+983 B) 20.1 kB (+802 B)
defineCustomElement 56.2 kB (+3.16 kB) 21.6 kB (+999 B) 19.6 kB (+802 B)
overall 67.7 kB (+3.21 kB) 25.8 kB (+958 B) 23.4 kB (+854 B)

@johnsoncodehk
Copy link
Member

@yyx990803 yyx990803 changed the title feat(types): provide internal options for directly using user prop types in language tools feat(types): provide internal options for directly using user types in language tools Apr 27, 2024
@vue-bot
Copy link
Contributor

vue-bot commented Apr 27, 2024

📝 Ran ecosystem CI: Open

suite result latest scheduled
language-tools failure success
nuxt success success
pinia success success
primevue success success
quasar success success
radix-vue success success
router success success
test-utils success success
vant failure success
vite-plugin-vue success success
vitepress success success
vue-i18n success success
vue-macros success success
vuetify failure failure
vueuse success success
vue-simple-compiler success success

@KaelWD
Copy link
Contributor

KaelWD commented May 2, 2024

@yyx990803 The deprecated legacy types aren't re-exported from runtime-core/index

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.

5 participants