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

template => compilerOptions => isCustomElement is not working #322

Closed
8 of 9 tasks
GGBeng1 opened this issue Dec 29, 2023 · 0 comments
Closed
8 of 9 tasks

template => compilerOptions => isCustomElement is not working #322

GGBeng1 opened this issue Dec 29, 2023 · 0 comments
Labels
bug Something isn't working p5-urgent 🔥 Fix build-breaking bugs affecting most users, should be released ASAP (priority)

Comments

@GGBeng1
Copy link

GGBeng1 commented Dec 29, 2023

Related plugins

Describe the bug

image image

Reproduction

https://github.com/GGBeng1/vue3.4.0-bug

Steps to reproduce

No response

System Info

System:
    OS: macOS 14.2.1
    CPU: (10) arm64 Apple M1 Pro
    Memory: 206.53 MB / 32.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.9.0 - ~/.nvm/versions/node/v20.9.0/bin/node
    npm: 10.1.0 - ~/.nvm/versions/node/v20.9.0/bin/npm
    pnpm: 8.13.1 - ~/.nvm/versions/node/v20.9.0/bin/pnpm
    bun: 1.0.3 - ~/.bun/bin/bun
  Browsers:
    Chrome: 120.0.6099.129
    Safari: 17.2.1

Used Package Manager

pnpm

Logs

No response

Validations

@sodatea sodatea added bug Something isn't working p5-urgent 🔥 Fix build-breaking bugs affecting most users, should be released ASAP (priority) and removed pending triage labels Dec 29, 2023
sodatea added a commit that referenced this issue Dec 29, 2023
This reverts commit ba1bab9.

Fixes #322

It seems that the AST returned from https://github.com/vuejs/core/blob/a41c5f1f4367a9f41bcdb8c4e02f54b2378e577d/packages/compiler-sfc/src/parse.ts#L133-L139 gets reused in https://github.com/vitejs/vite-plugin-vue/blob/f75de2e5284af6036efa45d5c9ec37757485e3a0/packages/plugin-vue/src/template.ts#L186-L190, resulting in the second `parse` pass (called with real user
options) being skipped.

TODO: investigate the root cause further later and re-enable the
optimization.
yyx990803 added a commit to vuejs/core that referenced this issue Dec 30, 2023
…sing sfc

- This is released in a patch because it is an relatively internal API
  but required to properly fix vitejs/vite-plugin-vue#322

- `parseExpressions` is now deprecated because it can be passed using
  original template parsing options (`prefixIdentifiers`)
yyx990803 added a commit that referenced this issue Dec 30, 2023
yyx990803 added a commit that referenced this issue Dec 31, 2023
yyx990803 added a commit that referenced this issue Dec 31, 2023
renovate bot added a commit to slipmatio/logger that referenced this issue Jan 1, 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.10.5` ->
`20.10.6`](https://renovatebot.com/diffs/npm/@types%2fnode/20.10.5/20.10.6)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.10.5/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.10.5/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vitejs/plugin-vue](https://togithub.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue#readme)
([source](https://togithub.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue))
| [`4.5.2` ->
`5.0.1`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-vue/4.5.2/5.0.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vitejs%2fplugin-vue/5.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitejs%2fplugin-vue/5.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitejs%2fplugin-vue/4.5.2/5.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitejs%2fplugin-vue/4.5.2/5.0.1?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.3.13` ->
`3.4.1`](https://renovatebot.com/diffs/npm/vue/3.3.13/3.4.1) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue/3.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue/3.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue/3.3.13/3.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue/3.3.13/3.4.1?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))
| [`1.8.26` ->
`1.8.27`](https://renovatebot.com/diffs/npm/vue-tsc/1.8.26/1.8.27) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue-tsc/1.8.27?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue-tsc/1.8.27?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue-tsc/1.8.26/1.8.27?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue-tsc/1.8.26/1.8.27?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitejs/vite-plugin-vue (@&#8203;vitejs/plugin-vue)</summary>

###
[`v5.0.1`](https://togithub.com/vitejs/vite-plugin-vue/blob/HEAD/packages/plugin-vue/CHANGELOG.md#small501-2023-12-29-small)

- fix: Revert "feat: support template AST reuse from Vue 3.4 parser"
([5d68fbd](https://togithub.com/vitejs/vite-plugin-vue/commit/5d68fbd)),
closes
[#&#8203;322](https://togithub.com/vitejs/vite-plugin-vue/issues/322)
[/github.com/vuejs/core/blob/a41c5f1f4367a9f41bcdb8c4e02f54b2378e577d/packages/compiler-sfc/src/parse.ts#L133-L139](https://togithub.com//github.com/vuejs/core/blob/a41c5f1f4367a9f41bcdb8c4e02f54b2378e577d/packages/compiler-sfc/src/parse.ts/issues/L133-L139)
[/github.com/vitejs/vite-plugin-vue/blob/f75de2e5284af6036efa45d5c9ec37757485e3a0/packages/plugin-vue/src/template.ts#L186-L190](https://togithub.com//github.com/vitejs/vite-plugin-vue/blob/f75de2e5284af6036efa45d5c9ec37757485e3a0/packages/plugin-vue/src/template.ts/issues/L186-L190)
- chore: aggregated changelog for 5.0 \[ci skip]
([2b33c32](https://togithub.com/vitejs/vite-plugin-vue/commit/2b33c32))

###
[`v5.0.0`](https://togithub.com/vitejs/vite-plugin-vue/blob/HEAD/packages/plugin-vue/CHANGELOG.md#500-2023-12-25)

-   **Breaking:** drop `reactivityTransform` support
-   **Breaking:** drop Node 14/16 support
-   **Breaking:** drop Vite 4.x support
-   Vue 3.4 template AST reuse support
- Vue 3.4 compile-time flag `__VUE_PROD_HYDRATION_MISMATCH_DETAILS__`
support
-   Added `customElement` option
-   Deprecated `defineModel` option

</details>

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

###
[`v3.4.1`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#341-2023-12-30)

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

##### Bug Fixes

- **compat:** correct enum value for COMPILER_FILTERS feature
([#&#8203;9875](https://togithub.com/vuejs/core/issues/9875))
([77d33e2](https://togithub.com/vuejs/core/commit/77d33e263cf19983caf4e5c53a0eb0bee374843c))
- **defineModel:** always default modifiers to empty object
([9bc3c7e](https://togithub.com/vuejs/core/commit/9bc3c7e29cf15f5ca96703542d10cfd786a3fc55)),
closes [#&#8203;9945](https://togithub.com/vuejs/core/issues/9945)
- **defineModel:** support local mutation when only prop but no listener
is passed
([97ce041](https://togithub.com/vuejs/core/commit/97ce041910b6ca4bef10f939493d6b5a06ea5b07))
- **types:** fix defineModel watch type error
([#&#8203;9942](https://togithub.com/vuejs/core/issues/9942))
([4af8583](https://togithub.com/vuejs/core/commit/4af85835f7e593a7dffa7dc7e99f14877eb70fd1)),
closes [#&#8203;9939](https://togithub.com/vuejs/core/issues/9939)

##### Features

- **compiler-sfc:** support passing template parsing options when
parsing sfc
([6fab855](https://togithub.com/vuejs/core/commit/6fab8551e4aeef4610987640de8b435b1ae321bb))
(necessary to fix
[vitejs/vite-plugin-vue#322)

###
[`v3.4.0`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#340-Slam-Dunk-2023-12-29)

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

> Read [this blog post](https://blog.vuejs.org/posts/vue-3-4) for an
overview of the release highlights.

##### Potential Actions Needed

1. To fully leverage new features in 3.4, it is recommended to also
update the following dependencies when upgrading to 3.4:

    -   Volar / vue-tsc@^1.8.27 (**required**)
-
[@&#8203;vitejs/plugin-vue](https://togithub.com/vitejs/plugin-vue)@&#8203;^5.0.0
(if using Vite)
    -   nuxt@^3.9.0 (if using Nuxt)
    -   vue-loader@^17.4.0 (if using webpack or vue-cli)

2. If using TSX with Vue, check actions needed in [Removed: Global JSX
Namespace](https://blog.vuejs.org/posts/vue-3-4#global-jsx-namespace).

3. Make sure you are no longer using any deprecated features (if you
are, you should have warnings in the console telling you so). They may
have been [removed in
3.4](https://blog.vuejs.org/posts/vue-3-4#other-removed-features).

##### Features

- **general:** MathML support
([#&#8203;7836](https://togithub.com/vuejs/core/issues/7836))
([d42b6ba](https://togithub.com/vuejs/core/commit/d42b6ba3f530746eb1221eb7a4be0f44eb56f7d3)),
closes [#&#8203;7820](https://togithub.com/vuejs/core/issues/7820)
- **reactivity:** more efficient reactivity system
([#&#8203;5912](https://togithub.com/vuejs/core/issues/5912))
([16e06ca](https://togithub.com/vuejs/core/commit/16e06ca08f5a1e2af3fc7fb35de153dbe0c3087d)),
closes [#&#8203;311](https://togithub.com/vuejs/core/issues/311)
[#&#8203;1811](https://togithub.com/vuejs/core/issues/1811)
[#&#8203;6018](https://togithub.com/vuejs/core/issues/6018)
[#&#8203;7160](https://togithub.com/vuejs/core/issues/7160)
[#&#8203;8714](https://togithub.com/vuejs/core/issues/8714)
[#&#8203;9149](https://togithub.com/vuejs/core/issues/9149)
[#&#8203;9419](https://togithub.com/vuejs/core/issues/9419)
[#&#8203;9464](https://togithub.com/vuejs/core/issues/9464)
- **reactivity:** expose last result for computed getter
([#&#8203;9497](https://togithub.com/vuejs/core/issues/9497))
([48b47a1](https://togithub.com/vuejs/core/commit/48b47a1ab63577e2dbd91947eea544e3ef185b85))
- **runtime-core / dx:** link errors to docs in prod build
([#&#8203;9165](https://togithub.com/vuejs/core/issues/9165))
([9f8ba98](https://togithub.com/vuejs/core/commit/9f8ba9821fe166f77e63fa940e9e7e13ec3344fa))
- **runtime-core:** add `once` option to watch
([#&#8203;9034](https://togithub.com/vuejs/core/issues/9034))
([a645e7a](https://togithub.com/vuejs/core/commit/a645e7aa51006516ba668b3a4365d296eb92ee7d))
- **runtime-core:** provide full props to props validator functions
([#&#8203;3258](https://togithub.com/vuejs/core/issues/3258))
([8e27692](https://togithub.com/vuejs/core/commit/8e27692029a4645cd54287f776c0420f2b82740b))
- **compiler-core:** export error message
([#&#8203;8729](https://togithub.com/vuejs/core/issues/8729))
([f7e80ee](https://togithub.com/vuejs/core/commit/f7e80ee4a065a9eaba98720abf415d9e87756cbd))
- **compiler-core:** support specifying root namespace when parsing
([40f72d5](https://togithub.com/vuejs/core/commit/40f72d5e50b389cb11b7ca13461aa2a75ddacdb4))
- **compiler-core:** support v-bind shorthand for key and value with the
same name ([#&#8203;9451](https://togithub.com/vuejs/core/issues/9451))
([26399aa](https://togithub.com/vuejs/core/commit/26399aa6fac1596b294ffeba06bb498d86f5508c))
- **compiler-core:** improve parsing tolerance for language-tools
([41ff68e](https://togithub.com/vuejs/core/commit/41ff68ea579d933333392146625560359acb728a))
- **compiler-core:** support accessing Error as global in template
expressions
([#&#8203;7018](https://togithub.com/vuejs/core/issues/7018))
([bcca475](https://togithub.com/vuejs/core/commit/bcca475dbc58d76434cd8120b94929758cee2825))
- **compiler-core:** lift vnode hooks deprecation warning to error
([8abc754](https://togithub.com/vuejs/core/commit/8abc754d5d86d9dfd5a7927b846f1a743f352364))
- **compiler-core:** export runtime error strings
([#&#8203;9301](https://togithub.com/vuejs/core/issues/9301))
([feb2f2e](https://togithub.com/vuejs/core/commit/feb2f2edce2d91218a5e9a52c81e322e4033296b))
- **compiler-core:** add current filename to TransformContext
([#&#8203;8950](https://togithub.com/vuejs/core/issues/8950))
([638f1ab](https://togithub.com/vuejs/core/commit/638f1abbb632000553e2b7d75e87c95d8ca192d6))
- **compiler-sfc:** analyze import usage in template via AST
([#&#8203;9729](https://togithub.com/vuejs/core/issues/9729))
([e8bbc94](https://togithub.com/vuejs/core/commit/e8bbc946cba6bf74c9da56f938b67d2a04c340ba)),
closes [#&#8203;8897](https://togithub.com/vuejs/core/issues/8897)
[nuxt/nuxt#22416](https://togithub.com/nuxt/nuxt/issues/22416)
- **compiler-sfc:** expose resolve type-based props and emits
([#&#8203;8874](https://togithub.com/vuejs/core/issues/8874))
([9e77580](https://togithub.com/vuejs/core/commit/9e77580c0c2f0d977bd0031a1d43cc334769d433))
- **compiler-sfc:** bump postcss-modules to v6
([2a507e3](https://togithub.com/vuejs/core/commit/2a507e32f0e2ef73813705a568b8633f68bda7a9))
- **compiler-sfc:** promote defineModel stable
([#&#8203;9598](https://togithub.com/vuejs/core/issues/9598))
([ef688ba](https://togithub.com/vuejs/core/commit/ef688ba92bfccbc8b7ea3997eb297665d13e5249))
- **compiler-sfc:** support import attributes and `using` syntax
([#&#8203;8786](https://togithub.com/vuejs/core/issues/8786))
([5b2bd1d](https://togithub.com/vuejs/core/commit/5b2bd1df78e8ff524c3a184adaa284681aba6574))
- **compiler-sfc:** `defineModel` support local mutation by default,
remove local option
([f74785b](https://togithub.com/vuejs/core/commit/f74785bc4ad351102dde17fdfd2c7276b823111f)),
closes
[/github.com/vuejs/rfcs/discussions/503#discussioncomment-7566278](https://togithub.com//github.com/vuejs/rfcs/discussions/503/issues/discussioncomment-7566278)
- **ssr:** add `__VUE_PROD_HYDRATION_MISMATCH_DETAILS__` feature flag
([#&#8203;9550](https://togithub.com/vuejs/core/issues/9550))
([bc7698d](https://togithub.com/vuejs/core/commit/bc7698dbfed9b5327a93565f9df336ae5a94d605))
- **ssr:** improve ssr hydration mismatch checks
([#&#8203;5953](https://togithub.com/vuejs/core/issues/5953))
([2ffc1e8](https://togithub.com/vuejs/core/commit/2ffc1e8cfdc6ec9c45c4a4dd8e3081b2aa138f1e)),
closes [#&#8203;5063](https://togithub.com/vuejs/core/issues/5063)
- **types:** use enum to replace const enum
([#&#8203;9261](https://togithub.com/vuejs/core/issues/9261))
([fff7b86](https://togithub.com/vuejs/core/commit/fff7b864f4292d0430ba2bda7098ad43876b0210)),
closes [#&#8203;1228](https://togithub.com/vuejs/core/issues/1228)
- **types:** add emits and slots type to `FunctionalComponent`
([#&#8203;8644](https://togithub.com/vuejs/core/issues/8644))
([927ab17](https://togithub.com/vuejs/core/commit/927ab17cfc645e82d061fdf227c34689491268e1))
- **types:** export `AriaAttributes` type
([#&#8203;8909](https://togithub.com/vuejs/core/issues/8909))
([fd0b6ba](https://togithub.com/vuejs/core/commit/fd0b6ba01660499fa07b0cf360eefaac8cca8287))
- **types:** export `ObjectPlugin` and `FunctionPlugin` types
([#&#8203;8946](https://togithub.com/vuejs/core/issues/8946))
([fa4969e](https://togithub.com/vuejs/core/commit/fa4969e7a3aefa6863203f9294fc5e769ddf6d8f)),
closes [#&#8203;8577](https://togithub.com/vuejs/core/issues/8577)
- **types:** expose `DefineProps` type
([096ba81](https://togithub.com/vuejs/core/commit/096ba81817b7da15f61bc55fc1a93f72ac9586e0))
- **types:** expose `PublicProps` type
([#&#8203;2403](https://togithub.com/vuejs/core/issues/2403))
([44135dc](https://togithub.com/vuejs/core/commit/44135dc95fb8fea26b84d1433839d28b8c21f708))
- **types:** improve event type inference when using `h` with native
elements ([#&#8203;9756](https://togithub.com/vuejs/core/issues/9756))
([a625376](https://togithub.com/vuejs/core/commit/a625376ac8901eea81bf3c66cb531f2157f073ef))
- **types:** provide `ComponentInstance` type
([#&#8203;5408](https://togithub.com/vuejs/core/issues/5408))
([bfb8565](https://togithub.com/vuejs/core/commit/bfb856565d3105db4b18991ae9e404e7cc989b25))
- **types:** support passing generics when registering global directives
([#&#8203;9660](https://togithub.com/vuejs/core/issues/9660))
([a41409e](https://togithub.com/vuejs/core/commit/a41409ed02a8c7220e637f56caf6813edeb077f8))

##### Performance Improvements

- **compiler-sfc:** avoid sfc source map unnecessary serialization and
parsing
([f15d2f6](https://togithub.com/vuejs/core/commit/f15d2f6cf69c0c39f8dfb5c33122790c68bf92e2))
- **compiler-sfc:** remove magic-string trim on script
([e8e3ec6](https://togithub.com/vuejs/core/commit/e8e3ec6ca7392e43975c75b56eaaa711d5ea9410))
- **compiler-sfc:** use faster source map addMapping
([50cde7c](https://togithub.com/vuejs/core/commit/50cde7cfbcc49022ba88f5f69fa9b930b483c282))
- **compiler-core:** optimize away isBuiltInType
([66c0ed0](https://togithub.com/vuejs/core/commit/66c0ed0a3c1c6f37dafc6b1c52b75c6bf60e3136))
- **compiler-core:** optimize position cloning
([2073236](https://togithub.com/vuejs/core/commit/20732366b9b3530d33b842cf1fc985919afb9317))
- **codegen:** optimize line / column calculation during codegen
([3be53d9](https://togithub.com/vuejs/core/commit/3be53d9b974dae1a10eb795cade71ae765e17574))
- **codegen:** optimize source map generation
([c11002f](https://togithub.com/vuejs/core/commit/c11002f16afd243a2b15b546816e73882eea9e4d))
- **shared:** optimize makeMap
([ae6fba9](https://togithub.com/vuejs/core/commit/ae6fba94954bac6430902f77b0d1113a98a75b18))

##### BREAKING CHANGES

##### Global JSX Registration Removed

Starting in 3.4, Vue no longer registers the global `JSX` namespace by
default. This is necessary to avoid global namespace collision with
React so that TSX of both libs can co-exist in the same project. This
should not affect SFC-only users with latest version of Volar.

If you are using TSX, there are two options:

1. Explicitly set
[jsxImportSource](https://www.typescriptlang.org/tsconfig#jsxImportSource)
to `'vue'` in `tsconfig.json` before upgrading to 3.4. You can also
opt-in per file by adding a `/* @&#8203;jsxImportSource vue */` comment
at the top of the file.

2. If you have code that depends on the presence of the global `JSX`
namespace, e.g. usage of types like `JSX.Element` etc., you can retain
the exact pre-3.4 global behavior by explicitly referencing `vue/jsx`,
which registers the global `JSX` namespace.

Note that this is a type-only breaking change in a minor release, which
adheres to our [release
policy](https://vuejs.org/about/releases.html#semantic-versioning-edge-cases).

##### Deprecated Features Removed

- [Reactivity
Transform](https://vuejs.org/guide/extras/reactivity-transform.html) was
marked deprecated in 3.3 and is now removed in 3.4. This change does not
require a major due to the feature being experimental. Users who wish to
continue using the feature can do so via the [Vue Macros
plugin](https://vue-macros.dev/features/reactivity-transform.html).
- `app.config.unwrapInjectedRef` has been removed. It was deprecated and
enabled by default in 3.3. In 3.4 it is no longer possible to disable
this behavior.
- `@vnodeXXX` event listeners in templates are now a compiler error
instead of a deprecation warning. Use `@vue:XXX` listeners instead.
- `v-is` directive has been removed. It was deprecated in 3.3. Use the
[`is` attribute with `vue:`
prefix](https://vuejs.org/api/built-in-special-attributes.html#is)
instead.

</details>

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

###
[`v1.8.27`](https://togithub.com/vuejs/language-tools/compare/5849cada166bbd3faa03f21efd4d3cc2a2836d11...v1.8.27)

[Compare
Source](https://togithub.com/vuejs/language-tools/compare/5849cada166bbd3faa03f21efd4d3cc2a2836d11...v1.8.27)

</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:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMDMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjEwMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot added a commit to slipmatio/toolbelt that referenced this issue Jan 1, 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.10.5` ->
`20.10.6`](https://renovatebot.com/diffs/npm/@types%2fnode/20.10.5/20.10.6)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.10.5/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.10.5/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vitejs/plugin-vue](https://togithub.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue#readme)
([source](https://togithub.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue))
| [`4.5.2` ->
`5.0.2`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-vue/4.5.2/5.0.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vitejs%2fplugin-vue/5.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitejs%2fplugin-vue/5.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitejs%2fplugin-vue/4.5.2/5.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitejs%2fplugin-vue/4.5.2/5.0.2?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.3.13` ->
`3.4.3`](https://renovatebot.com/diffs/npm/vue/3.3.13/3.4.3) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue/3.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue/3.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue/3.3.13/3.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue/3.3.13/3.4.3?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))
| [`1.8.26` ->
`1.8.27`](https://renovatebot.com/diffs/npm/vue-tsc/1.8.26/1.8.27) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue-tsc/1.8.27?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue-tsc/1.8.27?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue-tsc/1.8.26/1.8.27?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue-tsc/1.8.26/1.8.27?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitejs/vite-plugin-vue (@&#8203;vitejs/plugin-vue)</summary>

###
[`v5.0.2`](https://togithub.com/vitejs/vite-plugin-vue/blob/HEAD/packages/plugin-vue/CHANGELOG.md#small502-2023-12-30-small)

- fix: ensure consistent user template options when reusing AST
([bc0ad64](https://togithub.com/vitejs/vite-plugin-vue/commit/bc0ad64)),
closes
[#&#8203;322](https://togithub.com/vitejs/vite-plugin-vue/issues/322)
- fix: only enable ast reuse for vue 3.4.3+
([4a53b6f](https://togithub.com/vitejs/vite-plugin-vue/commit/4a53b6f))
- chore: bump vue to 3.4.2
([97002e1](https://togithub.com/vitejs/vite-plugin-vue/commit/97002e1))

###
[`v5.0.1`](https://togithub.com/vitejs/vite-plugin-vue/blob/HEAD/packages/plugin-vue/CHANGELOG.md#small501-2023-12-29-small)

- fix: Revert "feat: support template AST reuse from Vue 3.4 parser"
([5d68fbd](https://togithub.com/vitejs/vite-plugin-vue/commit/5d68fbd)),
closes
[#&#8203;322](https://togithub.com/vitejs/vite-plugin-vue/issues/322)
[/github.com/vuejs/core/blob/a41c5f1f4367a9f41bcdb8c4e02f54b2378e577d/packages/compiler-sfc/src/parse.ts#L133-L139](https://togithub.com//github.com/vuejs/core/blob/a41c5f1f4367a9f41bcdb8c4e02f54b2378e577d/packages/compiler-sfc/src/parse.ts/issues/L133-L139)
[/github.com/vitejs/vite-plugin-vue/blob/f75de2e5284af6036efa45d5c9ec37757485e3a0/packages/plugin-vue/src/template.ts#L186-L190](https://togithub.com//github.com/vitejs/vite-plugin-vue/blob/f75de2e5284af6036efa45d5c9ec37757485e3a0/packages/plugin-vue/src/template.ts/issues/L186-L190)
- chore: aggregated changelog for 5.0 \[ci skip]
([2b33c32](https://togithub.com/vitejs/vite-plugin-vue/commit/2b33c32))

###
[`v5.0.0`](https://togithub.com/vitejs/vite-plugin-vue/blob/HEAD/packages/plugin-vue/CHANGELOG.md#500-2023-12-25)

-   **Breaking:** drop `reactivityTransform` support
-   **Breaking:** drop Node 14/16 support
-   **Breaking:** drop Vite 4.x support
-   Vue 3.4 template AST reuse support
- Vue 3.4 compile-time flag `__VUE_PROD_HYDRATION_MISMATCH_DETAILS__`
support
-   Added `customElement` option
-   Deprecated `defineModel` option

</details>

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

###
[`v3.4.3`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#343-2023-12-30)

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

##### Bug Fixes

- **compiler-sfc:** respect sfc parse options in cache key
([b8d58ec](https://togithub.com/vuejs/core/commit/b8d58ec4f42cbeb9443bf06138add46158db9af0))

###
[`v3.4.2`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#342-2023-12-30)

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

##### Bug Fixes

- **compiler-sfc:** fix dev regression for dot / namespace component
usage
([dce99c1](https://togithub.com/vuejs/core/commit/dce99c12df981ca45a4d848c37ba8b16496025f0)),
closes [#&#8203;9947](https://togithub.com/vuejs/core/issues/9947)
- **runtime-core:** support deep: false when watch reactive
([#&#8203;9928](https://togithub.com/vuejs/core/issues/9928))
([4f703d1](https://togithub.com/vuejs/core/commit/4f703d120d76d711084346f73ea295c73e6ef6b6)),
closes [#&#8203;9916](https://togithub.com/vuejs/core/issues/9916)
- **ssr:** fix hydration error for slot outlet inside transition-group
([#&#8203;9937](https://togithub.com/vuejs/core/issues/9937))
([6cb00ed](https://togithub.com/vuejs/core/commit/6cb00ed0f9b64428ec18fada0f68467d6a813fde)),
closes [#&#8203;9933](https://togithub.com/vuejs/core/issues/9933)

###
[`v3.4.1`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#341-2023-12-30)

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

##### Bug Fixes

- **compat:** correct enum value for COMPILER_FILTERS feature
([#&#8203;9875](https://togithub.com/vuejs/core/issues/9875))
([77d33e2](https://togithub.com/vuejs/core/commit/77d33e263cf19983caf4e5c53a0eb0bee374843c))
- **defineModel:** always default modifiers to empty object
([9bc3c7e](https://togithub.com/vuejs/core/commit/9bc3c7e29cf15f5ca96703542d10cfd786a3fc55)),
closes [#&#8203;9945](https://togithub.com/vuejs/core/issues/9945)
- **defineModel:** support local mutation when only prop but no listener
is passed
([97ce041](https://togithub.com/vuejs/core/commit/97ce041910b6ca4bef10f939493d6b5a06ea5b07))
- **types:** fix defineModel watch type error
([#&#8203;9942](https://togithub.com/vuejs/core/issues/9942))
([4af8583](https://togithub.com/vuejs/core/commit/4af85835f7e593a7dffa7dc7e99f14877eb70fd1)),
closes [#&#8203;9939](https://togithub.com/vuejs/core/issues/9939)

##### Features

- **compiler-sfc:** support passing template parsing options when
parsing sfc
([6fab855](https://togithub.com/vuejs/core/commit/6fab8551e4aeef4610987640de8b435b1ae321bb))
(necessary to fix
[vitejs/vite-plugin-vue#322)

###
[`v3.4.0`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#340-Slam-Dunk-2023-12-29)

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

> Read [this blog post](https://blog.vuejs.org/posts/vue-3-4) for an
overview of the release highlights.

##### Potential Actions Needed

1. To fully leverage new features in 3.4, it is recommended to also
update the following dependencies when upgrading to 3.4:

    -   Volar / vue-tsc@^1.8.27 (**required**)
-
[@&#8203;vitejs/plugin-vue](https://togithub.com/vitejs/plugin-vue)@&#8203;^5.0.0
(if using Vite)
    -   nuxt@^3.9.0 (if using Nuxt)
    -   vue-loader@^17.4.0 (if using webpack or vue-cli)

2. If using TSX with Vue, check actions needed in [Removed: Global JSX
Namespace](https://blog.vuejs.org/posts/vue-3-4#global-jsx-namespace).

3. Make sure you are no longer using any deprecated features (if you
are, you should have warnings in the console telling you so). They may
have been [removed in
3.4](https://blog.vuejs.org/posts/vue-3-4#other-removed-features).

##### Features

- **general:** MathML support
([#&#8203;7836](https://togithub.com/vuejs/core/issues/7836))
([d42b6ba](https://togithub.com/vuejs/core/commit/d42b6ba3f530746eb1221eb7a4be0f44eb56f7d3)),
closes [#&#8203;7820](https://togithub.com/vuejs/core/issues/7820)
- **reactivity:** more efficient reactivity system
([#&#8203;5912](https://togithub.com/vuejs/core/issues/5912))
([16e06ca](https://togithub.com/vuejs/core/commit/16e06ca08f5a1e2af3fc7fb35de153dbe0c3087d)),
closes [#&#8203;311](https://togithub.com/vuejs/core/issues/311)
[#&#8203;1811](https://togithub.com/vuejs/core/issues/1811)
[#&#8203;6018](https://togithub.com/vuejs/core/issues/6018)
[#&#8203;7160](https://togithub.com/vuejs/core/issues/7160)
[#&#8203;8714](https://togithub.com/vuejs/core/issues/8714)
[#&#8203;9149](https://togithub.com/vuejs/core/issues/9149)
[#&#8203;9419](https://togithub.com/vuejs/core/issues/9419)
[#&#8203;9464](https://togithub.com/vuejs/core/issues/9464)
- **reactivity:** expose last result for computed getter
([#&#8203;9497](https://togithub.com/vuejs/core/issues/9497))
([48b47a1](https://togithub.com/vuejs/core/commit/48b47a1ab63577e2dbd91947eea544e3ef185b85))
- **runtime-core / dx:** link errors to docs in prod build
([#&#8203;9165](https://togithub.com/vuejs/core/issues/9165))
([9f8ba98](https://togithub.com/vuejs/core/commit/9f8ba9821fe166f77e63fa940e9e7e13ec3344fa))
- **runtime-core:** add `once` option to watch
([#&#8203;9034](https://togithub.com/vuejs/core/issues/9034))
([a645e7a](https://togithub.com/vuejs/core/commit/a645e7aa51006516ba668b3a4365d296eb92ee7d))
- **runtime-core:** provide full props to props validator functions
([#&#8203;3258](https://togithub.com/vuejs/core/issues/3258))
([8e27692](https://togithub.com/vuejs/core/commit/8e27692029a4645cd54287f776c0420f2b82740b))
- **compiler-core:** export error message
([#&#8203;8729](https://togithub.com/vuejs/core/issues/8729))
([f7e80ee](https://togithub.com/vuejs/core/commit/f7e80ee4a065a9eaba98720abf415d9e87756cbd))
- **compiler-core:** support specifying root namespace when parsing
([40f72d5](https://togithub.com/vuejs/core/commit/40f72d5e50b389cb11b7ca13461aa2a75ddacdb4))
- **compiler-core:** support v-bind shorthand for key and value with the
same name ([#&#8203;9451](https://togithub.com/vuejs/core/issues/9451))
([26399aa](https://togithub.com/vuejs/core/commit/26399aa6fac1596b294ffeba06bb498d86f5508c))
- **compiler-core:** improve parsing tolerance for language-tools
([41ff68e](https://togithub.com/vuejs/core/commit/41ff68ea579d933333392146625560359acb728a))
- **compiler-core:** support accessing Error as global in template
expressions
([#&#8203;7018](https://togithub.com/vuejs/core/issues/7018))
([bcca475](https://togithub.com/vuejs/core/commit/bcca475dbc58d76434cd8120b94929758cee2825))
- **compiler-core:** lift vnode hooks deprecation warning to error
([8abc754](https://togithub.com/vuejs/core/commit/8abc754d5d86d9dfd5a7927b846f1a743f352364))
- **compiler-core:** export runtime error strings
([#&#8203;9301](https://togithub.com/vuejs/core/issues/9301))
([feb2f2e](https://togithub.com/vuejs/core/commit/feb2f2edce2d91218a5e9a52c81e322e4033296b))
- **compiler-core:** add current filename to TransformContext
([#&#8203;8950](https://togithub.com/vuejs/core/issues/8950))
([638f1ab](https://togithub.com/vuejs/core/commit/638f1abbb632000553e2b7d75e87c95d8ca192d6))
- **compiler-sfc:** analyze import usage in template via AST
([#&#8203;9729](https://togithub.com/vuejs/core/issues/9729))
([e8bbc94](https://togithub.com/vuejs/core/commit/e8bbc946cba6bf74c9da56f938b67d2a04c340ba)),
closes [#&#8203;8897](https://togithub.com/vuejs/core/issues/8897)
[nuxt/nuxt#22416](https://togithub.com/nuxt/nuxt/issues/22416)
- **compiler-sfc:** expose resolve type-based props and emits
([#&#8203;8874](https://togithub.com/vuejs/core/issues/8874))
([9e77580](https://togithub.com/vuejs/core/commit/9e77580c0c2f0d977bd0031a1d43cc334769d433))
- **compiler-sfc:** bump postcss-modules to v6
([2a507e3](https://togithub.com/vuejs/core/commit/2a507e32f0e2ef73813705a568b8633f68bda7a9))
- **compiler-sfc:** promote defineModel stable
([#&#8203;9598](https://togithub.com/vuejs/core/issues/9598))
([ef688ba](https://togithub.com/vuejs/core/commit/ef688ba92bfccbc8b7ea3997eb297665d13e5249))
- **compiler-sfc:** support import attributes and `using` syntax
([#&#8203;8786](https://togithub.com/vuejs/core/issues/8786))
([5b2bd1d](https://togithub.com/vuejs/core/commit/5b2bd1df78e8ff524c3a184adaa284681aba6574))
- **compiler-sfc:** `defineModel` support local mutation by default,
remove local option
([f74785b](https://togithub.com/vuejs/core/commit/f74785bc4ad351102dde17fdfd2c7276b823111f)),
closes
[/github.com/vuejs/rfcs/discussions/503#discussioncomment-7566278](https://togithub.com//github.com/vuejs/rfcs/discussions/503/issues/discussioncomment-7566278)
- **ssr:** add `__VUE_PROD_HYDRATION_MISMATCH_DETAILS__` feature flag
([#&#8203;9550](https://togithub.com/vuejs/core/issues/9550))
([bc7698d](https://togithub.com/vuejs/core/commit/bc7698dbfed9b5327a93565f9df336ae5a94d605))
- **ssr:** improve ssr hydration mismatch checks
([#&#8203;5953](https://togithub.com/vuejs/core/issues/5953))
([2ffc1e8](https://togithub.com/vuejs/core/commit/2ffc1e8cfdc6ec9c45c4a4dd8e3081b2aa138f1e)),
closes [#&#8203;5063](https://togithub.com/vuejs/core/issues/5063)
- **types:** use enum to replace const enum
([#&#8203;9261](https://togithub.com/vuejs/core/issues/9261))
([fff7b86](https://togithub.com/vuejs/core/commit/fff7b864f4292d0430ba2bda7098ad43876b0210)),
closes [#&#8203;1228](https://togithub.com/vuejs/core/issues/1228)
- **types:** add emits and slots type to `FunctionalComponent`
([#&#8203;8644](https://togithub.com/vuejs/core/issues/8644))
([927ab17](https://togithub.com/vuejs/core/commit/927ab17cfc645e82d061fdf227c34689491268e1))
- **types:** export `AriaAttributes` type
([#&#8203;8909](https://togithub.com/vuejs/core/issues/8909))
([fd0b6ba](https://togithub.com/vuejs/core/commit/fd0b6ba01660499fa07b0cf360eefaac8cca8287))
- **types:** export `ObjectPlugin` and `FunctionPlugin` types
([#&#8203;8946](https://togithub.com/vuejs/core/issues/8946))
([fa4969e](https://togithub.com/vuejs/core/commit/fa4969e7a3aefa6863203f9294fc5e769ddf6d8f)),
closes [#&#8203;8577](https://togithub.com/vuejs/core/issues/8577)
- **types:** expose `DefineProps` type
([096ba81](https://togithub.com/vuejs/core/commit/096ba81817b7da15f61bc55fc1a93f72ac9586e0))
- **types:** expose `PublicProps` type
([#&#8203;2403](https://togithub.com/vuejs/core/issues/2403))
([44135dc](https://togithub.com/vuejs/core/commit/44135dc95fb8fea26b84d1433839d28b8c21f708))
- **types:** improve event type inference when using `h` with native
elements ([#&#8203;9756](https://togithub.com/vuejs/core/issues/9756))
([a625376](https://togithub.com/vuejs/core/commit/a625376ac8901eea81bf3c66cb531f2157f073ef))
- **types:** provide `ComponentInstance` type
([#&#8203;5408](https://togithub.com/vuejs/core/issues/5408))
([bfb8565](https://togithub.com/vuejs/core/commit/bfb856565d3105db4b18991ae9e404e7cc989b25))
- **types:** support passing generics when registering global directives
([#&#8203;9660](https://togithub.com/vuejs/core/issues/9660))
([a41409e](https://togithub.com/vuejs/core/commit/a41409ed02a8c7220e637f56caf6813edeb077f8))

##### Performance Improvements

- **compiler-sfc:** avoid sfc source map unnecessary serialization and
parsing
([f15d2f6](https://togithub.com/vuejs/core/commit/f15d2f6cf69c0c39f8dfb5c33122790c68bf92e2))
- **compiler-sfc:** remove magic-string trim on script
([e8e3ec6](https://togithub.com/vuejs/core/commit/e8e3ec6ca7392e43975c75b56eaaa711d5ea9410))
- **compiler-sfc:** use faster source map addMapping
([50cde7c](https://togithub.com/vuejs/core/commit/50cde7cfbcc49022ba88f5f69fa9b930b483c282))
- **compiler-core:** optimize away isBuiltInType
([66c0ed0](https://togithub.com/vuejs/core/commit/66c0ed0a3c1c6f37dafc6b1c52b75c6bf60e3136))
- **compiler-core:** optimize position cloning
([2073236](https://togithub.com/vuejs/core/commit/20732366b9b3530d33b842cf1fc985919afb9317))
- **codegen:** optimize line / column calculation during codegen
([3be53d9](https://togithub.com/vuejs/core/commit/3be53d9b974dae1a10eb795cade71ae765e17574))
- **codegen:** optimize source map generation
([c11002f](https://togithub.com/vuejs/core/commit/c11002f16afd243a2b15b546816e73882eea9e4d))
- **shared:** optimize makeMap
([ae6fba9](https://togithub.com/vuejs/core/commit/ae6fba94954bac6430902f77b0d1113a98a75b18))

##### BREAKING CHANGES

##### Global JSX Registration Removed

Starting in 3.4, Vue no longer registers the global `JSX` namespace by
default. This is necessary to avoid global namespace collision with
React so that TSX of both libs can co-exist in the same project. This
should not affect SFC-only users with latest version of Volar.

If you are using TSX, there are two options:

1. Explicitly set
[jsxImportSource](https://www.typescriptlang.org/tsconfig#jsxImportSource)
to `'vue'` in `tsconfig.json` before upgrading to 3.4. You can also
opt-in per file by adding a `/* @&#8203;jsxImportSource vue */` comment
at the top of the file.

2. If you have code that depends on the presence of the global `JSX`
namespace, e.g. usage of types like `JSX.Element` etc., you can retain
the exact pre-3.4 global behavior by explicitly referencing `vue/jsx`,
which registers the global `JSX` namespace.

Note that this is a type-only breaking change in a minor release, which
adheres to our [release
policy](https://vuejs.org/about/releases.html#semantic-versioning-edge-cases).

##### Deprecated Features Removed

- [Reactivity
Transform](https://vuejs.org/guide/extras/reactivity-transform.html) was
marked deprecated in 3.3 and is now removed in 3.4. This change does not
require a major due to the feature being experimental. Users who wish to
continue using the feature can do so via the [Vue Macros
plugin](https://vue-macros.dev/features/reactivity-transform.html).
- `app.config.unwrapInjectedRef` has been removed. It was deprecated and
enabled by default in 3.3. In 3.4 it is no longer possible to disable
this behavior.
- `@vnodeXXX` event listeners in templates are now a compiler error
instead of a deprecation warning. Use `@vue:XXX` listeners instead.
- `v-is` directive has been removed. It was deprecated in 3.3. Use the
[`is` attribute with `vue:`
prefix](https://vuejs.org/api/built-in-special-attributes.html#is)
instead.

</details>

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

###
[`v1.8.27`](https://togithub.com/vuejs/language-tools/blob/HEAD/CHANGELOG.md#1827-20231226)

[Compare
Source](https://togithub.com/vuejs/language-tools/compare/5849cada166bbd3faa03f21efd4d3cc2a2836d11...v1.8.27)

- fix(language-core): remove misuse of `JSX.Element` for compatible with
vue 3.4
([vuejs/core#9923)

</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:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMDMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjEwMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
fwouts added a commit to fwouts/previewjs that referenced this issue Jan 4, 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 |
|---|---|---|---|---|---|
|
[@vue/compiler-core](https://togithub.com/vuejs/core/tree/main/packages/compiler-core#readme)
([source](https://togithub.com/vuejs/core/tree/HEAD/packages/compiler-core))
| [`^3.3.13` ->
`^3.4.4`](https://renovatebot.com/diffs/npm/@vue%2fcompiler-core/3.3.13/3.4.4)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vue%2fcompiler-core/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vue%2fcompiler-core/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vue%2fcompiler-core/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vue%2fcompiler-core/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vue/compiler-sfc](https://togithub.com/vuejs/core/tree/main/packages/compiler-sfc#readme)
([source](https://togithub.com/vuejs/core/tree/HEAD/packages/compiler-sfc))
| [`^3.3.13` ->
`^3.4.4`](https://renovatebot.com/diffs/npm/@vue%2fcompiler-sfc/3.3.13/3.4.4)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vue%2fcompiler-sfc/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vue%2fcompiler-sfc/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vue%2fcompiler-sfc/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vue%2fcompiler-sfc/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vue/reactivity](https://togithub.com/vuejs/core/tree/main/packages/reactivity#readme)
([source](https://togithub.com/vuejs/core/tree/HEAD/packages/reactivity))
| [`^3.3.13` ->
`^3.4.4`](https://renovatebot.com/diffs/npm/@vue%2freactivity/3.3.13/3.4.4)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vue%2freactivity/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vue%2freactivity/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vue%2freactivity/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vue%2freactivity/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vue/runtime-core](https://togithub.com/vuejs/core/tree/main/packages/runtime-core#readme)
([source](https://togithub.com/vuejs/core/tree/HEAD/packages/runtime-core))
| [`^3.3.13` ->
`^3.4.4`](https://renovatebot.com/diffs/npm/@vue%2fruntime-core/3.3.13/3.4.4)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vue%2fruntime-core/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vue%2fruntime-core/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vue%2fruntime-core/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vue%2fruntime-core/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vue/runtime-dom](https://togithub.com/vuejs/core/tree/main/packages/runtime-dom#readme)
([source](https://togithub.com/vuejs/core/tree/HEAD/packages/runtime-dom))
| [`^3.3.13` ->
`^3.4.4`](https://renovatebot.com/diffs/npm/@vue%2fruntime-dom/3.3.13/3.4.4)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vue%2fruntime-dom/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vue%2fruntime-dom/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vue%2fruntime-dom/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vue%2fruntime-dom/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vue/shared](https://togithub.com/vuejs/core/tree/main/packages/shared#readme)
([source](https://togithub.com/vuejs/core/tree/HEAD/packages/shared)) |
[`^3.3.13` ->
`^3.4.4`](https://renovatebot.com/diffs/npm/@vue%2fshared/3.3.13/3.4.4)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vue%2fshared/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vue%2fshared/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vue%2fshared/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vue%2fshared/3.3.13/3.4.4?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.3.13` ->
`^3.4.4`](https://renovatebot.com/diffs/npm/vue/3.3.13/3.4.4) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue/3.3.13/3.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vuejs/core (@&#8203;vue/compiler-core)</summary>

###
[`v3.4.4`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#344-2024-01-03)

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

##### Bug Fixes

- **compiler-sfc:** fix scss source map regression
([71d3121](https://togithub.com/vuejs/core/commit/71d3121b72c449351e718ee1539bdfa35b68bb32)),
closes [#&#8203;9970](https://togithub.com/vuejs/core/issues/9970)
[#&#8203;9969](https://togithub.com/vuejs/core/issues/9969)
- **compiler-sfc:** use compilerOptions when re-parsing consumed AST
([d94d8d4](https://togithub.com/vuejs/core/commit/d94d8d4bffd1daf171a655b292745ffc3e63052d))
- **defineModel:** support kebab-case/camelCase mismatches
([#&#8203;9950](https://togithub.com/vuejs/core/issues/9950))
([10ccb9b](https://togithub.com/vuejs/core/commit/10ccb9bfa0f5f3016207fc32b9611bab98e6f090))
- **runtime-core:** correctly assign suspenseId to avoid conflicts with
the default id
([#&#8203;9966](https://togithub.com/vuejs/core/issues/9966))
([0648804](https://togithub.com/vuejs/core/commit/06488047c184dae3070d0008379716690edceb46)),
closes [#&#8203;9944](https://togithub.com/vuejs/core/issues/9944)
- **ssr:** avoid rendering transition-group slot content as a fragment
([#&#8203;9961](https://togithub.com/vuejs/core/issues/9961))
([0160264](https://togithub.com/vuejs/core/commit/0160264d677478ee928e8e851f39a9e94f97e337)),
closes [#&#8203;9933](https://togithub.com/vuejs/core/issues/9933)
- **watch:** remove instance unmounted short circuit in getter of
`watchEffect`
([#&#8203;9948](https://togithub.com/vuejs/core/issues/9948))
([f300a40](https://togithub.com/vuejs/core/commit/f300a4001ec40cadef2520267eb5841ab48cf005))
- **watch:** revert watch behavior when watching shallow reactive
objects
([a9f781a](https://togithub.com/vuejs/core/commit/a9f781a92cbc7de7b25c9e3d5b1295ca99eb6d86)),
closes [#&#8203;9965](https://togithub.com/vuejs/core/issues/9965)

##### Performance Improvements

- **watch:** avoid double traverse for reactive source
([24d77c2](https://togithub.com/vuejs/core/commit/24d77c25ce5d5356adb5367beef1d23e6e340b35))

###
[`v3.4.3`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#343-2023-12-30)

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

##### Bug Fixes

- **compiler-sfc:** respect sfc parse options in cache key
([b8d58ec](https://togithub.com/vuejs/core/commit/b8d58ec4f42cbeb9443bf06138add46158db9af0))

###
[`v3.4.2`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#342-2023-12-30)

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

##### Bug Fixes

- **compiler-sfc:** fix dev regression for dot / namespace component
usage
([dce99c1](https://togithub.com/vuejs/core/commit/dce99c12df981ca45a4d848c37ba8b16496025f0)),
closes [#&#8203;9947](https://togithub.com/vuejs/core/issues/9947)
- **runtime-core:** support deep: false when watch reactive
([#&#8203;9928](https://togithub.com/vuejs/core/issues/9928))
([4f703d1](https://togithub.com/vuejs/core/commit/4f703d120d76d711084346f73ea295c73e6ef6b6)),
closes [#&#8203;9916](https://togithub.com/vuejs/core/issues/9916)
- **ssr:** fix hydration error for slot outlet inside transition-group
([#&#8203;9937](https://togithub.com/vuejs/core/issues/9937))
([6cb00ed](https://togithub.com/vuejs/core/commit/6cb00ed0f9b64428ec18fada0f68467d6a813fde)),
closes [#&#8203;9933](https://togithub.com/vuejs/core/issues/9933)

###
[`v3.4.1`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#341-2023-12-30)

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

##### Bug Fixes

- **compat:** correct enum value for COMPILER_FILTERS feature
([#&#8203;9875](https://togithub.com/vuejs/core/issues/9875))
([77d33e2](https://togithub.com/vuejs/core/commit/77d33e263cf19983caf4e5c53a0eb0bee374843c))
- **defineModel:** always default modifiers to empty object
([9bc3c7e](https://togithub.com/vuejs/core/commit/9bc3c7e29cf15f5ca96703542d10cfd786a3fc55)),
closes [#&#8203;9945](https://togithub.com/vuejs/core/issues/9945)
- **defineModel:** support local mutation when only prop but no listener
is passed
([97ce041](https://togithub.com/vuejs/core/commit/97ce041910b6ca4bef10f939493d6b5a06ea5b07))
- **types:** fix defineModel watch type error
([#&#8203;9942](https://togithub.com/vuejs/core/issues/9942))
([4af8583](https://togithub.com/vuejs/core/commit/4af85835f7e593a7dffa7dc7e99f14877eb70fd1)),
closes [#&#8203;9939](https://togithub.com/vuejs/core/issues/9939)

##### Features

- **compiler-sfc:** support passing template parsing options when
parsing sfc
([6fab855](https://togithub.com/vuejs/core/commit/6fab8551e4aeef4610987640de8b435b1ae321bb))
(necessary to fix
[vitejs/vite-plugin-vue#322)

###
[`v3.4.0`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#340-Slam-Dunk-2023-12-29)

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

> Read [this blog post](https://blog.vuejs.org/posts/vue-3-4) for an
overview of the release highlights.

##### Potential Actions Needed

1. To fully leverage new features in 3.4, it is recommended to also
update the following dependencies when upgrading to 3.4:

    -   Volar / vue-tsc@^1.8.27 (**required**)
-
[@&#8203;vitejs/plugin-vue](https://togithub.com/vitejs/plugin-vue)@&#8203;^5.0.0
(if using Vite)
    -   nuxt@^3.9.0 (if using Nuxt)
    -   vue-loader@^17.4.0 (if using webpack or vue-cli)

2. If using TSX with Vue, check actions needed in [Removed: Global JSX
Namespace](https://blog.vuejs.org/posts/vue-3-4#global-jsx-namespace).

3. Make sure you are no longer using any deprecated features (if you
are, you should have warnings in the console telling you so). They may
have been [removed in
3.4](https://blog.vuejs.org/posts/vue-3-4#other-removed-features).

##### Features

- **general:** MathML support
([#&#8203;7836](https://togithub.com/vuejs/core/issues/7836))
([d42b6ba](https://togithub.com/vuejs/core/commit/d42b6ba3f530746eb1221eb7a4be0f44eb56f7d3)),
closes [#&#8203;7820](https://togithub.com/vuejs/core/issues/7820)
- **reactivity:** more efficient reactivity system
([#&#8203;5912](https://togithub.com/vuejs/core/issues/5912))
([16e06ca](https://togithub.com/vuejs/core/commit/16e06ca08f5a1e2af3fc7fb35de153dbe0c3087d)),
closes [#&#8203;311](https://togithub.com/vuejs/core/issues/311)
[#&#8203;1811](https://togithub.com/vuejs/core/issues/1811)
[#&#8203;6018](https://togithub.com/vuejs/core/issues/6018)
[#&#8203;7160](https://togithub.com/vuejs/core/issues/7160)
[#&#8203;8714](https://togithub.com/vuejs/core/issues/8714)
[#&#8203;9149](https://togithub.com/vuejs/core/issues/9149)
[#&#8203;9419](https://togithub.com/vuejs/core/issues/9419)
[#&#8203;9464](https://togithub.com/vuejs/core/issues/9464)
- **reactivity:** expose last result for computed getter
([#&#8203;9497](https://togithub.com/vuejs/core/issues/9497))
([48b47a1](https://togithub.com/vuejs/core/commit/48b47a1ab63577e2dbd91947eea544e3ef185b85))
- **runtime-core / dx:** link errors to docs in prod build
([#&#8203;9165](https://togithub.com/vuejs/core/issues/9165))
([9f8ba98](https://togithub.com/vuejs/core/commit/9f8ba9821fe166f77e63fa940e9e7e13ec3344fa))
- **runtime-core:** add `once` option to watch
([#&#8203;9034](https://togithub.com/vuejs/core/issues/9034))
([a645e7a](https://togithub.com/vuejs/core/commit/a645e7aa51006516ba668b3a4365d296eb92ee7d))
- **runtime-core:** provide full props to props validator functions
([#&#8203;3258](https://togithub.com/vuejs/core/issues/3258))
([8e27692](https://togithub.com/vuejs/core/commit/8e27692029a4645cd54287f776c0420f2b82740b))
- **compiler-core:** export error message
([#&#8203;8729](https://togithub.com/vuejs/core/issues/8729))
([f7e80ee](https://togithub.com/vuejs/core/commit/f7e80ee4a065a9eaba98720abf415d9e87756cbd))
- **compiler-core:** support specifying root namespace when parsing
([40f72d5](https://togithub.com/vuejs/core/commit/40f72d5e50b389cb11b7ca13461aa2a75ddacdb4))
- **compiler-core:** support v-bind shorthand for key and value with the
same name ([#&#8203;9451](https://togithub.com/vuejs/core/issues/9451))
([26399aa](https://togithub.com/vuejs/core/commit/26399aa6fac1596b294ffeba06bb498d86f5508c))
- **compiler-core:** improve parsing tolerance for language-tools
([41ff68e](https://togithub.com/vuejs/core/commit/41ff68ea579d933333392146625560359acb728a))
- **compiler-core:** support accessing Error as global in template
expressions
([#&#8203;7018](https://togithub.com/vuejs/core/issues/7018))
([bcca475](https://togithub.com/vuejs/core/commit/bcca475dbc58d76434cd8120b94929758cee2825))
- **compiler-core:** lift vnode hooks deprecation warning to error
([8abc754](https://togithub.com/vuejs/core/commit/8abc754d5d86d9dfd5a7927b846f1a743f352364))
- **compiler-core:** export runtime error strings
([#&#8203;9301](https://togithub.com/vuejs/core/issues/9301))
([feb2f2e](https://togithub.com/vuejs/core/commit/feb2f2edce2d91218a5e9a52c81e322e4033296b))
- **compiler-core:** add current filename to TransformContext
([#&#8203;8950](https://togithub.com/vuejs/core/issues/8950))
([638f1ab](https://togithub.com/vuejs/core/commit/638f1abbb632000553e2b7d75e87c95d8ca192d6))
- **compiler-sfc:** analyze import usage in template via AST
([#&#8203;9729](https://togithub.com/vuejs/core/issues/9729))
([e8bbc94](https://togithub.com/vuejs/core/commit/e8bbc946cba6bf74c9da56f938b67d2a04c340ba)),
closes [#&#8203;8897](https://togithub.com/vuejs/core/issues/8897)
[nuxt/nuxt#22416](https://togithub.com/nuxt/nuxt/issues/22416)
- **compiler-sfc:** expose resolve type-based props and emits
([#&#8203;8874](https://togithub.com/vuejs/core/issues/8874))
([9e77580](https://togithub.com/vuejs/core/commit/9e77580c0c2f0d977bd0031a1d43cc334769d433))
- **compiler-sfc:** bump postcss-modules to v6
([2a507e3](https://togithub.com/vuejs/core/commit/2a507e32f0e2ef73813705a568b8633f68bda7a9))
- **compiler-sfc:** promote defineModel stable
([#&#8203;9598](https://togithub.com/vuejs/core/issues/9598))
([ef688ba](https://togithub.com/vuejs/core/commit/ef688ba92bfccbc8b7ea3997eb297665d13e5249))
- **compiler-sfc:** support import attributes and `using` syntax
([#&#8203;8786](https://togithub.com/vuejs/core/issues/8786))
([5b2bd1d](https://togithub.com/vuejs/core/commit/5b2bd1df78e8ff524c3a184adaa284681aba6574))
- **compiler-sfc:** `defineModel` support local mutation by default,
remove local option
([f74785b](https://togithub.com/vuejs/core/commit/f74785bc4ad351102dde17fdfd2c7276b823111f)),
closes
[/github.com/vuejs/rfcs/discussions/503#discussioncomment-7566278](https://togithub.com//github.com/vuejs/rfcs/discussions/503/issues/discussioncomment-7566278)
- **ssr:** add `__VUE_PROD_HYDRATION_MISMATCH_DETAILS__` feature flag
([#&#8203;9550](https://togithub.com/vuejs/core/issues/9550))
([bc7698d](https://togithub.com/vuejs/core/commit/bc7698dbfed9b5327a93565f9df336ae5a94d605))
- **ssr:** improve ssr hydration mismatch checks
([#&#8203;5953](https://togithub.com/vuejs/core/issues/5953))
([2ffc1e8](https://togithub.com/vuejs/core/commit/2ffc1e8cfdc6ec9c45c4a4dd8e3081b2aa138f1e)),
closes [#&#8203;5063](https://togithub.com/vuejs/core/issues/5063)
- **types:** use enum to replace const enum
([#&#8203;9261](https://togithub.com/vuejs/core/issues/9261))
([fff7b86](https://togithub.com/vuejs/core/commit/fff7b864f4292d0430ba2bda7098ad43876b0210)),
closes [#&#8203;1228](https://togithub.com/vuejs/core/issues/1228)
- **types:** add emits and slots type to `FunctionalComponent`
([#&#8203;8644](https://togithub.com/vuejs/core/issues/8644))
([927ab17](https://togithub.com/vuejs/core/commit/927ab17cfc645e82d061fdf227c34689491268e1))
- **types:** export `AriaAttributes` type
([#&#8203;8909](https://togithub.com/vuejs/core/issues/8909))
([fd0b6ba](https://togithub.com/vuejs/core/commit/fd0b6ba01660499fa07b0cf360eefaac8cca8287))
- **types:** export `ObjectPlugin` and `FunctionPlugin` types
([#&#8203;8946](https://togithub.com/vuejs/core/issues/8946))
([fa4969e](https://togithub.com/vuejs/core/commit/fa4969e7a3aefa6863203f9294fc5e769ddf6d8f)),
closes [#&#8203;8577](https://togithub.com/vuejs/core/issues/8577)
- **types:** expose `DefineProps` type
([096ba81](https://togithub.com/vuejs/core/commit/096ba81817b7da15f61bc55fc1a93f72ac9586e0))
- **types:** expose `PublicProps` type
([#&#8203;2403](https://togithub.com/vuejs/core/issues/2403))
([44135dc](https://togithub.com/vuejs/core/commit/44135dc95fb8fea26b84d1433839d28b8c21f708))
- **types:** improve event type inference when using `h` with native
elements ([#&#8203;9756](https://togithub.com/vuejs/core/issues/9756))
([a625376](https://togithub.com/vuejs/core/commit/a625376ac8901eea81bf3c66cb531f2157f073ef))
- **types:** provide `ComponentInstance` type
([#&#8203;5408](https://togithub.com/vuejs/core/issues/5408))
([bfb8565](https://togithub.com/vuejs/core/commit/bfb856565d3105db4b18991ae9e404e7cc989b25))
- **types:** support passing generics when registering global directives
([#&#8203;9660](https://togithub.com/vuejs/core/issues/9660))
([a41409e](https://togithub.com/vuejs/core/commit/a41409ed02a8c7220e637f56caf6813edeb077f8))

##### Performance Improvements

- **compiler-sfc:** avoid sfc source map unnecessary serialization and
parsing
([f15d2f6](https://togithub.com/vuejs/core/commit/f15d2f6cf69c0c39f8dfb5c33122790c68bf92e2))
- **compiler-sfc:** remove magic-string trim on script
([e8e3ec6](https://togithub.com/vuejs/core/commit/e8e3ec6ca7392e43975c75b56eaaa711d5ea9410))
- **compiler-sfc:** use faster source map addMapping
([50cde7c](https://togithub.com/vuejs/core/commit/50cde7cfbcc49022ba88f5f69fa9b930b483c282))
- **compiler-core:** optimize away isBuiltInType
([66c0ed0](https://togithub.com/vuejs/core/commit/66c0ed0a3c1c6f37dafc6b1c52b75c6bf60e3136))
- **compiler-core:** optimize position cloning
([2073236](https://togithub.com/vuejs/core/commit/20732366b9b3530d33b842cf1fc985919afb9317))
- **codegen:** optimize line / column calculation during codegen
([3be53d9](https://togithub.com/vuejs/core/commit/3be53d9b974dae1a10eb795cade71ae765e17574))
- **codegen:** optimize source map generation
([c11002f](https://togithub.com/vuejs/core/commit/c11002f16afd243a2b15b546816e73882eea9e4d))
- **shared:** optimize makeMap
([ae6fba9](https://togithub.com/vuejs/core/commit/ae6fba94954bac6430902f77b0d1113a98a75b18))

##### BREAKING CHANGES

##### Global JSX Registration Removed

Starting in 3.4, Vue no longer registers the global `JSX` namespace by
default. This is necessary to avoid global namespace collision with
React so that TSX of both libs can co-exist in the same project. This
should not affect SFC-only users with latest version of Volar.

If you are using TSX, there are two options:

1. Explicitly set
[jsxImportSource](https://www.typescriptlang.org/tsconfig#jsxImportSource)
to `'vue'` in `tsconfig.json` before upgrading to 3.4. You can also
opt-in per file by adding a `/* @&#8203;jsxImportSource vue */` comment
at the top of the file.

2. If you have code that depends on the presence of the global `JSX`
namespace, e.g. usage of types like `JSX.Element` etc., you can retain
the exact pre-3.4 global behavior by explicitly referencing `vue/jsx`,
which registers the global `JSX` namespace.

Note that this is a type-only breaking change in a minor release, which
adheres to our [release
policy](https://vuejs.org/about/releases.html#semantic-versioning-edge-cases).

##### Deprecated Features Removed

- [Reactivity
Transform](https://vuejs.org/guide/extras/reactivity-transform.html) was
marked deprecated in 3.3 and is now removed in 3.4. This change does not
require a major due to the feature being experimental. Users who wish to
continue using the feature can do so via the [Vue Macros
plugin](https://vue-macros.dev/features/reactivity-transform.html).
- `app.config.unwrapInjectedRef` has been removed. It was deprecated and
enabled by default in 3.3. In 3.4 it is no longer possible to disable
this behavior.
- `@vnodeXXX` event listeners in templates are now a compiler error
instead of a deprecation warning. Use `@vue:XXX` listeners instead.
- `v-is` directive has been removed. It was deprecated in 3.3. Use the
[`is` attribute with `vue:`
prefix](https://vuejs.org/api/built-in-special-attributes.html#is)
instead.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- 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/fwouts/previewjs).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMDMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjEwMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: François Wouts <f@zenc.io>
renovate bot added a commit to slipmatio/ui that referenced this issue Jan 8, 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.10.5` ->
`20.10.6`](https://renovatebot.com/diffs/npm/@types%2fnode/20.10.5/20.10.6)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.10.5/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.10.5/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vitejs/plugin-vue](https://togithub.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue#readme)
([source](https://togithub.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue))
| [`5.0.1` ->
`5.0.2`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-vue/5.0.1/5.0.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vitejs%2fplugin-vue/5.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitejs%2fplugin-vue/5.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitejs%2fplugin-vue/5.0.1/5.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitejs%2fplugin-vue/5.0.1/5.0.2?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.1.0` ->
`1.1.3`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-v8/1.1.0/1.1.3)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fcoverage-v8/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fcoverage-v8/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fcoverage-v8/1.1.0/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fcoverage-v8/1.1.0/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [postcss](https://postcss.org/)
([source](https://togithub.com/postcss/postcss)) | [`8.4.32` ->
`8.4.33`](https://renovatebot.com/diffs/npm/postcss/8.4.32/8.4.33) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/postcss/8.4.33?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/postcss/8.4.33?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/postcss/8.4.32/8.4.33?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/postcss/8.4.32/8.4.33?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [tailwindcss](https://tailwindcss.com)
([source](https://togithub.com/tailwindlabs/tailwindcss)) | [`3.4.0` ->
`3.4.1`](https://renovatebot.com/diffs/npm/tailwindcss/3.4.0/3.4.1) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/3.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwindcss/3.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwindcss/3.4.0/3.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/3.4.0/3.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vite](https://vitejs.dev)
([source](https://togithub.com/vitejs/vite/tree/HEAD/packages/vite)) |
[`5.0.10` ->
`5.0.11`](https://renovatebot.com/diffs/npm/vite/5.0.10/5.0.11) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vite/5.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/5.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/5.0.10/5.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/5.0.10/5.0.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.1.0` ->
`1.1.3`](https://renovatebot.com/diffs/npm/vitest/1.1.0/1.1.3) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/1.1.0/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/1.1.0/1.1.3?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.0` ->
`3.4.5`](https://renovatebot.com/diffs/npm/vue/3.4.0/3.4.5) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue/3.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue/3.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue/3.4.0/3.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue/3.4.0/3.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitejs/vite-plugin-vue (@&#8203;vitejs/plugin-vue)</summary>

###
[`v5.0.2`](https://togithub.com/vitejs/vite-plugin-vue/blob/HEAD/packages/plugin-vue/CHANGELOG.md#small502-2023-12-30-small)

- fix: ensure consistent user template options when reusing AST
([bc0ad64](https://togithub.com/vitejs/vite-plugin-vue/commit/bc0ad64)),
closes
[#&#8203;322](https://togithub.com/vitejs/vite-plugin-vue/issues/322)
- fix: only enable ast reuse for vue 3.4.3+
([4a53b6f](https://togithub.com/vitejs/vite-plugin-vue/commit/4a53b6f))
- chore: bump vue to 3.4.2
([97002e1](https://togithub.com/vitejs/vite-plugin-vue/commit/97002e1))

</details>

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

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

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

#####    🐞 Bug Fixes

-   **vitest**:
- Vi.mock breaks tests when using imported variables inside the factory
 -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) and
**Dunqing** in
[vitest-dev/vitest#4873
[<samp>(7719e)</samp>](https://togithub.com/vitest-dev/vitest/commit/7719e79e)
- Apply `slowTestThreshold` to all reporters  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[vitest-dev/vitest#4876
[<samp>(1769c)</samp>](https://togithub.com/vitest-dev/vitest/commit/1769c796)

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

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

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

#####    🐞 Bug Fixes

- Remove internal flag from UI option in the config  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(7b4a2)</samp>](https://togithub.com/vitest-dev/vitest/commit/7b4a2fce)
-   **browser**:
- Avoid safaridriver collision  -  by
[@&#8203;mbland](https://togithub.com/mbland) in
[vitest-dev/vitest#4863
[<samp>(345a2)</samp>](https://togithub.com/vitest-dev/vitest/commit/345a25d6)
- Resolved failure to find arbitrarily-named snapshot files when using
`expect(...).toMatchFileSnapshot()` matcher.  -  by
[@&#8203;zmullett](https://togithub.com/zmullett), **Zac Mullett** and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#4839
[<samp>(b8140)</samp>](https://togithub.com/vitest-dev/vitest/commit/b8140fca)
- Handle config.base  -  by
[@&#8203;mbland](https://togithub.com/mbland) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#4686
and
[vitest-dev/vitest#4692
[<samp>(9e345)</samp>](https://togithub.com/vitest-dev/vitest/commit/9e34557e)
-   **deps**:
- Update dependency acorn-walk to ^8.3.1  -  by
[@&#8203;renovate](https://togithub.com/renovate)\[bot]
in[vitest-dev/vitest#4837
[<samp>(47bc2)</samp>](https://togithub.com/vitest-dev/vitest/commit/47bc233d)
- Update dependency sirv to ^2.0.4  -  by
[@&#8203;renovate](https://togithub.com/renovate)\[bot]
in[vitest-dev/vitest#4838
[<samp>(df261)</samp>](https://togithub.com/vitest-dev/vitest/commit/df261ae1)
-   **runner**:
- Fix fixture cleanup for concurrent tests  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[vitest-dev/vitest#4827
[<samp>(1fee6)</samp>](https://togithub.com/vitest-dev/vitest/commit/1fee63f2)
-   **spy**:
- Don't allow Promise in mockImplementation  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#4859
[<samp>(072e0)</samp>](https://togithub.com/vitest-dev/vitest/commit/072e02bf)
-   **vite-node**:
- Correctly return cached result  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#4870
[<samp>(15bbb)</samp>](https://togithub.com/vitest-dev/vitest/commit/15bbbf81)
-   **vitest**:
- Throw an error if mock was already loaded when vi.mock is called  - 
by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#4862
[<samp>(e12a5)</samp>](https://togithub.com/vitest-dev/vitest/commit/e12a5a36)
- Correctly rerun test files on change if server was restarted  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#4871
[<samp>(6088b)</samp>](https://togithub.com/vitest-dev/vitest/commit/6088b372)
-   **vm-threads**:
- Don't crash on percentage based `memoryLimit`  -  by
[@&#8203;inottn](https://togithub.com/inottn) and
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#4802
[<samp>(70e8a)</samp>](https://togithub.com/vitest-dev/vitest/commit/70e8a389)

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

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

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

#####    🐞 Bug Fixes

- Don't crash when using happy-dom or jsdom environment on Yarn PnP
workspaces  -  by [@&#8203;wojtekmaj](https://togithub.com/wojtekmaj)
and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#4698
[<samp>(ee8b4)</samp>](https://togithub.com/vitest-dev/vitest/commit/ee8b46db)
- Don't fail if `inline: true` is set  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#4815
[<samp>(8f622)</samp>](https://togithub.com/vitest-dev/vitest/commit/8f6225b8)
- Correct option name `--no-parallelism`  -  by
[@&#8203;bonyuta0204](https://togithub.com/bonyuta0204) in
[vitest-dev/vitest#4831
[<samp>(5053a)</samp>](https://togithub.com/vitest-dev/vitest/commit/5053a5dd)
- Match jest json output by making json reporter output
ndjson-compatible  -  by [@&#8203;bard](https://togithub.com/bard) in
[vitest-dev/vitest#4824
[<samp>(7e6a6)</samp>](https://togithub.com/vitest-dev/vitest/commit/7e6a62af)
-   **runner**:
- Reset "current test" state on dynamic `skip`  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[vitest-dev/vitest#4814
[<samp>(19faf)</samp>](https://togithub.com/vitest-dev/vitest/commit/19faf00e)
-   **vitest**:
- Don't hang when mocking files with cyclic dependencies  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#4811
[<samp>(e8ca6)</samp>](https://togithub.com/vitest-dev/vitest/commit/e8ca6437)
- Initialize snapshot state only once for each file suite  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[vitest-dev/vitest#4796
[<samp>(957da)</samp>](https://togithub.com/vitest-dev/vitest/commit/957daa32)
- Fix file snapshots in skipped suites considered obsolete  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[vitest-dev/vitest#4795
[<samp>(06c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/06c14f7d)
- Show `beforeAll/afterAll` errors in junit reporter  -  by
[@&#8203;hi-ogawa](https://togithub.com/hi-ogawa) in
[vitest-dev/vitest#4819
[<samp>(2baea)</samp>](https://togithub.com/vitest-dev/vitest/commit/2baea35e)
-   **vm-threads**:
- Tests not cancelled on key press, cancelled tests shown twice  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#4781
[<samp>(cf53d)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf53d4be)

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

</details>

<details>
<summary>postcss/postcss (postcss)</summary>

###
[`v8.4.33`](https://togithub.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8433)

[Compare
Source](https://togithub.com/postcss/postcss/compare/8.4.32...8.4.33)

- Fixed `NoWorkResult` behavior difference with normal mode (by Romain
Menke).
- Fixed `NoWorkResult` usage conditions (by
[@&#8203;ahmdammarr](https://togithub.com/ahmdammarr)).

</details>

<details>
<summary>tailwindlabs/tailwindcss (tailwindcss)</summary>

###
[`v3.4.1`](https://togithub.com/tailwindlabs/tailwindcss/releases/tag/v3.4.1)

[Compare
Source](https://togithub.com/tailwindlabs/tailwindcss/compare/v3.4.0...v3.4.1)

##### Fixed

- Don't remove keyframe stops when using important utilities
([#&#8203;12639](https://togithub.com/tailwindlabs/tailwindcss/pull/12639))
- Don't add spaces to gradients and grid track names when followed by
`calc()`
([#&#8203;12704](https://togithub.com/tailwindlabs/tailwindcss/pull/12704))
- Restore old behavior for `class` dark mode strategy
([#&#8203;12717](https://togithub.com/tailwindlabs/tailwindcss/pull/12717))

##### Added

- Add new `selector` and `variant` strategies for dark mode
([#&#8203;12717](https://togithub.com/tailwindlabs/tailwindcss/pull/12717))

##### Changed

- Support `rtl` and `ltr` variants on same element as `dir` attribute
([#&#8203;12717](https://togithub.com/tailwindlabs/tailwindcss/pull/12717))

</details>

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

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

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

- fix: don't pretransform classic script links
([#&#8203;15361](https://togithub.com/vitejs/vite/issues/15361))
([19e3c9a](https://togithub.com/vitejs/vite/commit/19e3c9a)), closes
[#&#8203;15361](https://togithub.com/vitejs/vite/issues/15361)
- fix: inject `__vite__mapDeps` code before sourcemap file comment
([#&#8203;15483](https://togithub.com/vitejs/vite/issues/15483))
([d2aa096](https://togithub.com/vitejs/vite/commit/d2aa096)), closes
[#&#8203;15483](https://togithub.com/vitejs/vite/issues/15483)
- fix(assets): avoid splitting `,` inside base64 value of `srcset`
attribute
([#&#8203;15422](https://togithub.com/vitejs/vite/issues/15422))
([8de7bd2](https://togithub.com/vitejs/vite/commit/8de7bd2)), closes
[#&#8203;15422](https://togithub.com/vitejs/vite/issues/15422)
- fix(html): handle offset magic-string slice error
([#&#8203;15435](https://togithub.com/vitejs/vite/issues/15435))
([5ea9edb](https://togithub.com/vitejs/vite/commit/5ea9edb)), closes
[#&#8203;15435](https://togithub.com/vitejs/vite/issues/15435)
- chore(deps): update dependency strip-literal to v2
([#&#8203;15475](https://togithub.com/vitejs/vite/issues/15475))
([49d21fe](https://togithub.com/vitejs/vite/commit/49d21fe)), closes
[#&#8203;15475](https://togithub.com/vitejs/vite/issues/15475)
- chore(deps): update tj-actions/changed-files action to v41
([#&#8203;15476](https://togithub.com/vitejs/vite/issues/15476))
([2a540ee](https://togithub.com/vitejs/vite/commit/2a540ee)), closes
[#&#8203;15476](https://togithub.com/vitejs/vite/issues/15476)

</details>

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

###
[`v3.4.5`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#345-2024-01-04)

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

##### Bug Fixes

- **compiler-sfc:** fix co-usage of defineModel transform options and
props destructure
([b20350d](https://togithub.com/vuejs/core/commit/b20350ded562d27e5901f308d0bc13344f840c4a)),
closes [#&#8203;9972](https://togithub.com/vuejs/core/issues/9972)
- **compiler-sfc:** fix sfc template unref rewrite for class
instantiation
([ae60a91](https://togithub.com/vuejs/core/commit/ae60a91cc23424493071ad9088782763eb1e8ff7)),
closes [#&#8203;6483](https://togithub.com/vuejs/core/issues/6483)
[#&#8203;6491](https://togithub.com/vuejs/core/issues/6491)
- **compiler-ssr:** fix node clone edge case caused by AST reuse
([#&#8203;9983](https://togithub.com/vuejs/core/issues/9983))
([7dbdb3e](https://togithub.com/vuejs/core/commit/7dbdb3edf0ab648965331ca42f069387c97a1c8a)),
closes [#&#8203;9981](https://togithub.com/vuejs/core/issues/9981)
- **watch:** cleanup watcher effect from scope when manually stopped
([#&#8203;9978](https://togithub.com/vuejs/core/issues/9978))
([d2d8955](https://togithub.com/vuejs/core/commit/d2d89551bb06dc05cb7ae0496b8f345ae0de78ed))

###
[`v3.4.4`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#344-2024-01-03)

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

##### Bug Fixes

- **compiler-sfc:** fix scss source map regression
([71d3121](https://togithub.com/vuejs/core/commit/71d3121b72c449351e718ee1539bdfa35b68bb32)),
closes [#&#8203;9970](https://togithub.com/vuejs/core/issues/9970)
[#&#8203;9969](https://togithub.com/vuejs/core/issues/9969)
- **compiler-sfc:** use compilerOptions when re-parsing consumed AST
([d94d8d4](https://togithub.com/vuejs/core/commit/d94d8d4bffd1daf171a655b292745ffc3e63052d))
- **defineModel:** support kebab-case/camelCase mismatches
([#&#8203;9950](https://togithub.com/vuejs/core/issues/9950))
([10ccb9b](https://togithub.com/vuejs/core/commit/10ccb9bfa0f5f3016207fc32b9611bab98e6f090))
- **runtime-core:** correctly assign suspenseId to avoid conflicts with
the default id
([#&#8203;9966](https://togithub.com/vuejs/core/issues/9966))
([0648804](https://togithub.com/vuejs/core/commit/06488047c184dae3070d0008379716690edceb46)),
closes [#&#8203;9944](https://togithub.com/vuejs/core/issues/9944)
- **ssr:** avoid rendering transition-group slot content as a fragment
([#&#8203;9961](https://togithub.com/vuejs/core/issues/9961))
([0160264](https://togithub.com/vuejs/core/commit/0160264d677478ee928e8e851f39a9e94f97e337)),
closes [#&#8203;9933](https://togithub.com/vuejs/core/issues/9933)
- **watch:** remove instance unmounted short circuit in getter of
`watchEffect`
([#&#8203;9948](https://togithub.com/vuejs/core/issues/9948))
([f300a40](https://togithub.com/vuejs/core/commit/f300a4001ec40cadef2520267eb5841ab48cf005))
- **watch:** revert watch behavior when watching shallow reactive
objects
([a9f781a](https://togithub.com/vuejs/core/commit/a9f781a92cbc7de7b25c9e3d5b1295ca99eb6d86)),
closes [#&#8203;9965](https://togithub.com/vuejs/core/issues/9965)

##### Performance Improvements

- **watch:** avoid double traverse for reactive source
([24d77c2](https://togithub.com/vuejs/core/commit/24d77c25ce5d5356adb5367beef1d23e6e340b35))

###
[`v3.4.3`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#343-2023-12-30)

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

##### Bug Fixes

- **compiler-sfc:** respect sfc parse options in cache key
([b8d58ec](https://togithub.com/vuejs/core/commit/b8d58ec4f42cbeb9443bf06138add46158db9af0))

###
[`v3.4.2`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#342-2023-12-30)

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

##### Bug Fixes

- **compiler-sfc:** fix dev regression for dot / namespace component
usage
([dce99c1](https://togithub.com/vuejs/core/commit/dce99c12df981ca45a4d848c37ba8b16496025f0)),
closes [#&#8203;9947](https://togithub.com/vuejs/core/issues/9947)
- **runtime-core:** support deep: false when watch reactive
([#&#8203;9928](https://togithub.com/vuejs/core/issues/9928))
([4f703d1](https://togithub.com/vuejs/core/commit/4f703d120d76d711084346f73ea295c73e6ef6b6)),
closes [#&#8203;9916](https://togithub.com/vuejs/core/issues/9916)
- **ssr:** fix hydration error for slot outlet inside transition-group
([#&#8203;9937](https://togithub.com/vuejs/core/issues/9937))
([6cb00ed](https://togithub.com/vuejs/core/commit/6cb00ed0f9b64428ec18fada0f68467d6a813fde)),
closes [#&#8203;9933](https://togithub.com/vuejs/core/issues/9933)

###
[`v3.4.1`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#341-2023-12-30)

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

##### Bug Fixes

- **compat:** correct enum value for COMPILER_FILTERS feature
([#&#8203;9875](https://togithub.com/vuejs/core/issues/9875))
([77d33e2](https://togithub.com/vuejs/core/commit/77d33e263cf19983caf4e5c53a0eb0bee374843c))
- **defineModel:** always default modifiers to empty object
([9bc3c7e](https://togithub.com/vuejs/core/commit/9bc3c7e29cf15f5ca96703542d10cfd786a3fc55)),
closes [#&#8203;9945](https://togithub.com/vuejs/core/issues/9945)
- **defineModel:** support local mutation when only prop but no listener
is passed
([97ce041](https://togithub.com/vuejs/core/commit/97ce041910b6ca4bef10f939493d6b5a06ea5b07))
- **types:** fix defineModel watch type error
([#&#8203;9942](https://togithub.com/vuejs/core/issues/9942))
([4af8583](https://togithub.com/vuejs/core/commit/4af85835f7e593a7dffa7dc7e99f14877eb70fd1)),
closes [#&#8203;9939](https://togithub.com/vuejs/core/issues/9939)

##### Features

- **compiler-sfc:** support passing template parsing options when
parsing sfc
([6fab855](https://togithub.com/vuejs/core/commit/6fab8551e4aeef4610987640de8b435b1ae321bb))
(necessary to fix
[vitejs/vite-plugin-vue#322)

</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:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMjEuMCIsInVwZGF0ZWRJblZlciI6IjM3LjEyMS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@github-actions github-actions bot locked and limited conversation to collaborators Jan 13, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working p5-urgent 🔥 Fix build-breaking bugs affecting most users, should be released ASAP (priority)
Projects
None yet
Development

No branches or pull requests

2 participants