Repository: kumahq/kuma-gui
Pull request #3940: fix(deps): update vue monorepo to ^3.5.14
Author: login: renovate[bot]
Labels: name: dependencies
description: Pull requests that update a dependency file
name: renovate-bot
Created: 2025-05-21T12:06:38Z | Merged: 2025-05-21T15:17:48Z

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@vue/shared](https://redirect.github.com/vuejs/core/tree/main/packages/shared#readme) ([source](https://redirect.github.com/vuejs/core/tree/HEAD/packages/shared)) | [`^3.5.13` -> `^3.5.14`](https://renovatebot.com/diffs/npm/@vue%2fshared/3.5.13/3.5.14) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vue%2fshared/3.5.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vue%2fshared/3.5.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vue%2fshared/3.5.13/3.5.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vue%2fshared/3.5.13/3.5.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [vue](https://redirect.github.com/vuejs/core/tree/main/packages/vue#readme) ([source](https://redirect.github.com/vuejs/core)) | [`^3.5.13` -> `^3.5.14`](https://renovatebot.com/diffs/npm/vue/3.5.13/3.5.14) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vue/3.5.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue/3.5.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue/3.5.13/3.5.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue/3.5.13/3.5.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

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

### [`v3.5.14`](https://redirect.github.com/vuejs/core/blob/HEAD/CHANGELOG.md#3514-2025-05-15)

[Compare Source](https://redirect.github.com/vuejs/core/compare/v3.5.13...v3.5.14)

##### Bug Fixes

-   **compat:** correct deprecation message for v-bind.sync usage ([#&#8203;13137](https://redirect.github.com/vuejs/core/issues/13137)) ([466b30f](https://redirect.github.com/vuejs/core/commit/466b30f4049ec89fb282624ec17d1a93472ab93f)), closes [#&#8203;13133](https://redirect.github.com/vuejs/core/issues/13133)
-   **compiler-core:** remove slot cache from parent renderCache during unmounting ([#&#8203;13215](https://redirect.github.com/vuejs/core/issues/13215)) ([5d166f3](https://redirect.github.com/vuejs/core/commit/5d166f3796a03a497435fc079c6a83a4e9c6cf52))
-   **compiler-sfc:** fix scope handling for props destructure in function parameters and catch clauses ([8e34357](https://redirect.github.com/vuejs/core/commit/8e3435779a667de485cf9efd78667d0ca14c5f84)), closes [#&#8203;12790](https://redirect.github.com/vuejs/core/issues/12790)
-   **compiler-sfc:** treat the return value of `useTemplateRef` as a definite ref ([#&#8203;13197](https://redirect.github.com/vuejs/core/issues/13197)) ([8ae1122](https://redirect.github.com/vuejs/core/commit/8ae11226e8ee938615e17c7b81dc38ae3f7cefb9))
-   **compiler:** fix spelling error in domTagConfig ([#&#8203;13043](https://redirect.github.com/vuejs/core/issues/13043)) ([388295b](https://redirect.github.com/vuejs/core/commit/388295b27f3cc69eba25d325bbe60a36a3df831a))
-   **customFormatter:** properly accessing ref value during debugger ([#&#8203;12948](https://redirect.github.com/vuejs/core/issues/12948)) ([fdbd026](https://redirect.github.com/vuejs/core/commit/fdbd02658301dd794fe0c84f0018d080a07fca9f))
-   **hmr/teleport:** adjust static children traversal for HMR in dev mode ([#&#8203;12819](https://redirect.github.com/vuejs/core/issues/12819)) ([5e37dd0](https://redirect.github.com/vuejs/core/commit/5e37dd009562bcd8080a200c32abde2d6e4f0305)), closes [#&#8203;12816](https://redirect.github.com/vuejs/core/issues/12816)
-   **hmr:** avoid hydration for hmr root reload ([#&#8203;12450](https://redirect.github.com/vuejs/core/issues/12450)) ([1f98a9c](https://redirect.github.com/vuejs/core/commit/1f98a9c493d01c21befa90107f0593bc92a58932)), closes [vitejs/vite-plugin-vue#146](https://redirect.github.com/vitejs/vite-plugin-vue/issues/146) [vitejs/vite-plugin-vue#477](https://redirect.github.com/vitejs/vite-plugin-vue/issues/477)
-   **hmr:** avoid hydration for hmr updating ([#&#8203;12262](https://redirect.github.com/vuejs/core/issues/12262)) ([9c4dbbc](https://redirect.github.com/vuejs/core/commit/9c4dbbc5185125835ad3e49baba303bd54676111)), closes [#&#8203;7706](https://redirect.github.com/vuejs/core/issues/7706) [#&#8203;8170](https://redirect.github.com/vuejs/core/issues/8170)
-   **reactivity:** ensure markRaw objects are not reactive ([#&#8203;12824](https://redirect.github.com/vuejs/core/issues/12824)) ([295b5ec](https://redirect.github.com/vuejs/core/commit/295b5ec19b6a52c4a56652cc4d6e93a4ea7c14ed)), closes [#&#8203;12807](https://redirect.github.com/vuejs/core/issues/12807)
-   **reactivity:** ensure multiple effectScope on() and off() calls maintains correct active scope ([22dcbf3](https://redirect.github.com/vuejs/core/commit/22dcbf3e20eb84f69c8952f6f70d9990136a4a68)), closes [#&#8203;12631](https://redirect.github.com/vuejs/core/issues/12631) [#&#8203;12632](https://redirect.github.com/vuejs/core/issues/12632) [#&#8203;12641](https://redirect.github.com/vuejs/core/issues/12641)
-   **reactivity:** should not recompute if computed does not track reactive data ([#&#8203;12341](https://redirect.github.com/vuejs/core/issues/12341)) ([0b23fd2](https://redirect.github.com/vuejs/core/commit/0b23fd23833cf085e7e112bf4435cfc9b360d072)), closes [#&#8203;12337](https://redirect.github.com/vuejs/core/issues/12337)
-   **runtime-core:**  stop tracking deps in setRef during unmount ([#&#8203;13210](https://redirect.github.com/vuejs/core/issues/13210)) ([016c472](https://redirect.github.com/vuejs/core/commit/016c472bd2e7604b21c69dee1da8545ce26e4d2f))
-   **runtime-core:**  update \__vnode of static nodes when patching along the optimized path ([#&#8203;13223](https://redirect.github.com/vuejs/core/issues/13223)) ([b3ecee3](https://redirect.github.com/vuejs/core/commit/b3ecee3da8ed5c55dea89ce6b4b376b2b722b018))
-   **runtime-core:** inherit comment nodes during block patch in production build  ([#&#8203;10748](https://redirect.github.com/vuejs/core/issues/10748)) ([6264505](https://redirect.github.com/vuejs/core/commit/626450590d81f79117b34d2a73073b1dc8f551bd)), closes [#&#8203;10747](https://redirect.github.com/vuejs/core/issues/10747) [#&#8203;12650](https://redirect.github.com/vuejs/core/issues/12650)
-   **runtime-core:** prevent unmounted vnode from being inserted during transition leave ([#&#8203;12862](https://redirect.github.com/vuejs/core/issues/12862)) ([d6a6ec1](https://redirect.github.com/vuejs/core/commit/d6a6ec13ce521683bfb2a22932778ef7b51f8600)), closes [#&#8203;12860](https://redirect.github.com/vuejs/core/issues/12860)
-   **runtime-core:** respect immutability for readonly reactive arrays in `v-for` ([#&#8203;13091](https://redirect.github.com/vuejs/core/issues/13091)) ([3f27c58](https://redirect.github.com/vuejs/core/commit/3f27c58ffbd4309df369bc89493fdc284dc540bb)), closes [#&#8203;13087](https://redirect.github.com/vuejs/core/issues/13087)
-   **runtime-dom:** always treat autocorrect as attribute ([#&#8203;13001](https://redirect.github.com/vuejs/core/issues/13001)) ([1499135](https://redirect.github.com/vuejs/core/commit/1499135c227236e037bb746beeb777941b0b58ff)), closes [#&#8203;5705](https://redirect.github.com/vuejs/core/issues/5705)
-   **slots:** properly warn if slot invoked in setup ([#&#8203;12195](https://redirect.github.com/vuejs/core/issues/12195)) ([9196222](https://redirect.github.com/vuejs/core/commit/9196222ae1d63b52b35ac5fbf5e71494587ccf05)), closes [#&#8203;12194](https://redirect.github.com/vuejs/core/issues/12194)
-   **ssr:** properly init slots during ssr rendering ([#&#8203;12441](https://redirect.github.com/vuejs/core/issues/12441)) ([2206cd2](https://redirect.github.com/vuejs/core/commit/2206cd235a1627c540e795e378b7564a55b47313)), closes [#&#8203;12438](https://redirect.github.com/vuejs/core/issues/12438)
-   **transition:** fix KeepAlive with transition out-in mode behavior in production ([#&#8203;12468](https://redirect.github.com/vuejs/core/issues/12468)) ([343c891](https://redirect.github.com/vuejs/core/commit/343c89122448719bd6ed6bd9de986dfb2721d6bf)), closes [#&#8203;12465](https://redirect.github.com/vuejs/core/issues/12465)
-   **TransitionGroup:** reset prevChildren to prevent memory leak ([#&#8203;13183](https://redirect.github.com/vuejs/core/issues/13183)) ([8b848cb](https://redirect.github.com/vuejs/core/commit/8b848cbbd2af337d23e19e202f9ab433f8580855)), closes [#&#8203;13181](https://redirect.github.com/vuejs/core/issues/13181)
-   **types:** allow return any for Options API lifecycle hooks ([#&#8203;5914](https://redirect.github.com/vuejs/core/issues/5914)) ([06310e8](https://redirect.github.com/vuejs/core/commit/06310e82f5bed62d1b9733dcb18cd8d6edc988de))
-   **types:** the directive's modifiers should be optional ([#&#8203;12605](https://redirect.github.com/vuejs/core/issues/12605)) ([10e54dc](https://redirect.github.com/vuejs/core/commit/10e54dcc86a7967f3196d96200bcbd1d3d42082f))
-   **typos:** fix comments referencing transformElement.ts ([#&#8203;12551](https://redirect.github.com/vuejs/core/issues/12551))\[ci-skip] ([11c053a](https://redirect.github.com/vuejs/core/commit/11c053a5429ad0d27a0e2c78b6b026ea00ace116))

##### Features

-   **types:** add type TemplateRef ([#&#8203;12645](https://redirect.github.com/vuejs/core/issues/12645)) ([636a861](https://redirect.github.com/vuejs/core/commit/636a8619f06c71dfd79f7f6412fd130c4f84226f))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 5am every weekday" (UTC), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **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 was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/kumahq/kuma-gui).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC4xNi4wIiwidXBkYXRlZEluVmVyIjoiNDAuMTYuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZS1ib3QiXX0=-->



Diff:
diff --git a/package-lock.json b/package-lock.json
index 4930ce3b9d..e547b5a812 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -466,18 +466,18 @@
       }
     },
     "node_modules/@babel/helper-string-parser": {
-      "version": "7.25.9",
-      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz",
-      "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==",
+      "version": "7.27.1",
+      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz",
+      "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==",
       "license": "MIT",
       "engines": {
         "node": ">=6.9.0"
       }
     },
     "node_modules/@babel/helper-validator-identifier": {
-      "version": "7.25.9",
-      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
-      "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==",
+      "version": "7.27.1",
+      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz",
+      "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==",
       "license": "MIT",
       "engines": {
         "node": ">=6.9.0"
@@ -508,12 +508,12 @@
       }
     },
     "node_modules/@babel/parser": {
-      "version": "7.27.0",
-      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz",
-      "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==",
+      "version": "7.27.2",
+      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.2.tgz",
+      "integrity": "sha512-QYLs8299NA7WM/bZAdp+CviYYkVoYXlDW2rzliy3chxd1PQjej7JORuMJDJXJUb9g0TT+B99EwaVLKmX+sPXWw==",
       "license": "MIT",
       "dependencies": {
-        "@babel/types": "^7.27.0"
+        "@babel/types": "^7.27.1"
       },
       "bin": {
         "parser": "bin/babel-parser.js"
@@ -594,13 +594,13 @@
       }
     },
     "node_modules/@babel/types": {
-      "version": "7.27.0",
-      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz",
-      "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==",
+      "version": "7.27.1",
+      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.1.tgz",
+      "integrity": "sha512-+EzkxvLNfiUeKMgy/3luqfsCWFRXLb7U6wNQTk60tovuckwB15B191tJWvpp4HjiQWdJkCxO3Wbvc6jlk3Xb2Q==",
       "license": "MIT",
       "dependencies": {
-        "@babel/helper-string-parser": "^7.25.9",
-        "@babel/helper-validator-identifier": "^7.25.9"
+        "@babel/helper-string-parser": "^7.27.1",
+        "@babel/helper-validator-identifier": "^7.27.1"
       },
       "engines": {
         "node": ">=6.9.0"
@@ -4856,53 +4856,53 @@
       }
     },
     "node_modules/@vue/compiler-core": {
-      "version": "3.5.13",
-      "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz",
-      "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==",
+      "version": "3.5.14",
+      "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.14.tgz",
+      "integrity": "sha512-k7qMHMbKvoCXIxPhquKQVw3Twid3Kg4s7+oYURxLGRd56LiuHJVrvFKI4fm2AM3c8apqODPfVJGoh8nePbXMRA==",
       "license": "MIT",
       "dependencies": {
-        "@babel/parser": "^7.25.3",
-        "@vue/shared": "3.5.13",
+        "@babel/parser": "^7.27.2",
+        "@vue/shared": "3.5.14",
         "entities": "^4.5.0",
         "estree-walker": "^2.0.2",
-        "source-map-js": "^1.2.0"
+        "source-map-js": "^1.2.1"
       }
     },
     "node_modules/@vue/compiler-dom": {
-      "version": "3.5.13",
-      "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz",
-      "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==",
+      "version": "3.5.14",
+      "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.14.tgz",
+      "integrity": "sha512-1aOCSqxGOea5I80U2hQJvXYpPm/aXo95xL/m/mMhgyPUsKe9jhjwWpziNAw7tYRnbz1I61rd9Mld4W9KmmRoug==",
       "license": "MIT",
       "dependencies": {
-        "@vue/compiler-core": "3.5.13",
-        "@vue/shared": "3.5.13"
+        "@vue/compiler-core": "3.5.14",
+        "@vue/shared": "3.5.14"
       }
     },
     "node_modules/@vue/compiler-sfc": {
-      "version": "3.5.13",
-      "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz",
-      "integrity": "sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==",
+      "version": "3.5.14",
+      "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.14.tgz",
+      "integrity": "sha512-9T6m/9mMr81Lj58JpzsiSIjBgv2LiVoWjIVa7kuXHICUi8LiDSIotMpPRXYJsXKqyARrzjT24NAwttrMnMaCXA==",
       "license": "MIT",
       "dependencies": {
-        "@babel/parser": "^7.25.3",
-        "@vue/compiler-core": "3.5.13",
-        "@vue/compiler-dom": "3.5.13",
-        "@vue/compiler-ssr": "3.5.13",
-        "@vue/shared": "3.5.13",
+        "@babel/parser": "^7.27.2",
+        "@vue/compiler-core": "3.5.14",
+        "@vue/compiler-dom": "3.5.14",
+        "@vue/compiler-ssr": "3.5.14",
+        "@vue/shared": "3.5.14",
         "estree-walker": "^2.0.2",
-        "magic-string": "^0.30.11",
-        "postcss": "^8.4.48",
-        "source-map-js": "^1.2.0"
+        "magic-string": "^0.30.17",
+        "postcss": "^8.5.3",
+        "source-map-js": "^1.2.1"
       }
     },
     "node_modules/@vue/compiler-ssr": {
-      "version": "3.5.13",
-      "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz",
-      "integrity": "sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==",
+      "version": "3.5.14",
+      "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.14.tgz",
+      "integrity": "sha512-Y0G7PcBxr1yllnHuS/NxNCSPWnRGH4Ogrp0tsLA5QemDZuJLs99YjAKQ7KqkHE0vCg4QTKlQzXLKCMF7WPSl7Q==",
       "license": "MIT",
       "dependencies": {
-        "@vue/compiler-dom": "3.5.13",
-        "@vue/shared": "3.5.13"
+        "@vue/compiler-dom": "3.5.14",
+        "@vue/shared": "3.5.14"
       }
     },
     "node_modules/@vue/compiler-vue2": {
@@ -4998,53 +4998,53 @@
       }
     },
     "node_modules/@vue/reactivity": {
-      "version": "3.5.13",
-      "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.13.tgz",
-      "integrity": "sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==",
+      "version": "3.5.14",
+      "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.14.tgz",
+      "integrity": "sha512-7cK1Hp343Fu/SUCCO52vCabjvsYu7ZkOqyYu7bXV9P2yyfjUMUXHZafEbq244sP7gf+EZEz+77QixBTuEqkQQw==",
       "license": "MIT",
       "dependencies": {
-        "@vue/shared": "3.5.13"
+        "@vue/shared": "3.5.14"
       }
     },
     "node_modules/@vue/runtime-core": {
-      "version": "3.5.13",
-      "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.13.tgz",
-      "integrity": "sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==",
+      "version": "3.5.14",
+      "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.14.tgz",
+      "integrity": "sha512-w9JWEANwHXNgieAhxPpEpJa+0V5G0hz3NmjAZwlOebtfKyp2hKxKF0+qSh0Xs6/PhfGihuSdqMprMVcQU/E6ag==",
       "license": "MIT",
       "dependencies": {
-        "@vue/reactivity": "3.5.13",
-        "@vue/shared": "3.5.13"
+        "@vue/reactivity": "3.5.14",
+        "@vue/shared": "3.5.14"
       }
     },
     "node_modules/@vue/runtime-dom": {
-      "version": "3.5.13",
-      "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.13.tgz",
-      "integrity": "sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==",
+      "version": "3.5.14",
+      "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.14.tgz",
+      "integrity": "sha512-lCfR++IakeI35TVR80QgOelsUIdcKjd65rWAMfdSlCYnaEY5t3hYwru7vvcWaqmrK+LpI7ZDDYiGU5V3xjMacw==",
       "license": "MIT",
       "dependencies": {
-        "@vue/reactivity": "3.5.13",
-        "@vue/runtime-core": "3.5.13",
-        "@vue/shared": "3.5.13",
+        "@vue/reactivity": "3.5.14",
+        "@vue/runtime-core": "3.5.14",
+        "@vue/shared": "3.5.14",
         "csstype": "^3.1.3"
       }
     },
     "node_modules/@vue/server-renderer": {
-      "version": "3.5.13",
-      "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.13.tgz",
-      "integrity": "sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==",
+      "version": "3.5.14",
+      "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.14.tgz",
+      "integrity": "sha512-Rf/ISLqokIvcySIYnv3tNWq40PLpNLDLSJwwVWzG6MNtyIhfbcrAxo5ZL9nARJhqjZyWWa40oRb2IDuejeuv6w==",
       "license": "MIT",
       "dependencies": {
-        "@vue/compiler-ssr": "3.5.13",
-        "@vue/shared": "3.5.13"
+        "@vue/compiler-ssr": "3.5.14",
+        "@vue/shared": "3.5.14"
       },
       "peerDependencies": {
-        "vue": "3.5.13"
+        "vue": "3.5.14"
       }
     },
     "node_modules/@vue/shared": {
-      "version": "3.5.13",
-      "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz",
-      "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==",
+      "version": "3.5.14",
+      "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.14.tgz",
+      "integrity": "sha512-oXTwNxVfc9EtP1zzXAlSlgARLXNC84frFYkS0HHz0h3E4WZSP9sywqjqzGCP9Y34M8ipNmd380pVgmMuwELDyQ==",
       "license": "MIT"
     },
     "node_modules/@vue/test-utils": {
@@ -16643,16 +16643,16 @@
       "license": "MIT"
     },
     "node_modules/vue": {
-      "version": "3.5.13",
-      "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz",
-      "integrity": "sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==",
+      "version": "3.5.14",
+      "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.14.tgz",
+      "integrity": "sha512-LbOm50/vZFG6Mhy6KscQYXZMQ0LMCC/y40HDJPPvGFQ+i/lUH+PJHR6C3assgOQiXdl6tAfsXHbXYVBZZu65ew==",
       "license": "MIT",
       "dependencies": {
-        "@vue/compiler-dom": "3.5.13",
-        "@vue/compiler-sfc": "3.5.13",
-        "@vue/runtime-dom": "3.5.13",
-        "@vue/server-renderer": "3.5.13",
-        "@vue/shared": "3.5.13"
+        "@vue/compiler-dom": "3.5.14",
+        "@vue/compiler-sfc": "3.5.14",
+        "@vue/runtime-dom": "3.5.14",
+        "@vue/server-renderer": "3.5.14",
+        "@vue/shared": "3.5.14"
       },
       "peerDependencies": {
         "typescript": "*"
@@ -17429,7 +17429,7 @@
         "@kong-ui-public/i18n": "^2.2.10",
         "@kong/icons": "^1.25.0",
         "@kong/kongponents": "^9.31.7",
-        "@vue/shared": "^3.5.13",
+        "@vue/shared": "^3.5.14",
         "@vueuse/core": "^13.2.0",
         "brandi": "^5.0.0",
         "deepmerge": "^4.3.1",
@@ -17441,7 +17441,7 @@
         "set.prototype.difference": "^1.1.7",
         "shiki": "^3.4.2",
         "urlpattern-polyfill": "^10.1.0",
-        "vue": "^3.5.13",
+        "vue": "^3.5.14",
         "vue-github-button": "^3.1.3",
         "vue-global-events": "^3.0.1",
         "vue-router": "^4.5.1"
diff --git a/packages/kuma-gui/package.json b/packages/kuma-gui/package.json
index e8b07b2327..cdc4c67373 100644
--- a/packages/kuma-gui/package.json
+++ b/packages/kuma-gui/package.json
@@ -17,7 +17,7 @@
     "@kong-ui-public/i18n": "^2.2.10",
     "@kong/icons": "^1.25.0",
     "@kong/kongponents": "^9.31.7",
-    "@vue/shared": "^3.5.13",
+    "@vue/shared": "^3.5.14",
     "@vueuse/core": "^13.2.0",
     "brandi": "^5.0.0",
     "deepmerge": "^4.3.1",
@@ -29,7 +29,7 @@
     "set.prototype.difference": "^1.1.7",
     "shiki": "^3.4.2",
     "urlpattern-polyfill": "^10.1.0",
-    "vue": "^3.5.13",
+    "vue": "^3.5.14",
     "vue-github-button": "^3.1.3",
     "vue-global-events": "^3.0.1",
     "vue-router": "^4.5.1"
diff --git a/packages/kuma-gui/src/app/x/directives/style/index.ts b/packages/kuma-gui/src/app/x/directives/style/index.ts
index 0f39aa9011..6d0ecdf97b 100644
--- a/packages/kuma-gui/src/app/x/directives/style/index.ts
+++ b/packages/kuma-gui/src/app/x/directives/style/index.ts
@@ -1,5 +1,7 @@
+import type { Directive } from 'vue'
+
 type DirectiveValue = Record<string, boolean> | string
-type DirectiveModifiers = Record<'next', boolean | undefined>
+type DirectiveModifiers = Partial<Record<'next', boolean>>
 const getDeclarations = (spec: DirectiveValue): string[] => {
   // allow string or { 'prop: value' : boolean }
   return Object.entries(typeof spec === 'string' ? { [spec]: true } : spec)
@@ -52,5 +54,5 @@ export default (map = new WeakMap<HTMLElement, Set<string>>()) => {
     unmounted: ($el: HTMLElement) => {
       map.delete($el)
     },
-  }
+  } satisfies Directive
 }


Reviews:
user: login: schogges
state: DISMISSED
author_association: CONTRIBUTOR
submitted_at: 2025-05-21T13:01:07Z
user: login: johncowen
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-21T15:04:24Z
user: login: schogges
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-21T15:06:15Z
user: login: schogges
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-21T15:07:41Z
user: login: johncowen
body: I kinda had another nit here, but would rather unblock the upgrade 👍 
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-05-21T15:09:51Z

Review comments:
diff_hunk: @@ -1,5 +1,7 @@
+import type { Directive } from 'vue'
+
 type DirectiveValue = Record<string, boolean> | string
-type DirectiveModifiers = Record<'next', boolean | undefined>
+type DirectiveModifiers = Partial<Record<'next', boolean | undefined>>
path: packages/kuma-gui/src/app/x/directives/style/index.ts
user: login: johncowen
body: If its a Partial do we still need the `| undefined`?
created_at: 2025-05-21T15:04:24Z
author_association: CONTRIBUTOR
diff_hunk: @@ -1,5 +1,7 @@
+import type { Directive } from 'vue'
+
 type DirectiveValue = Record<string, boolean> | string
-type DirectiveModifiers = Record<'next', boolean | undefined>
+type DirectiveModifiers = Partial<Record<'next', boolean | undefined>>
path: packages/kuma-gui/src/app/x/directives/style/index.ts
user: login: schogges
body: Not necessarily, I just thought I'm not changing too much. I'll remove it, brb
created_at: 2025-05-21T15:06:15Z
author_association: CONTRIBUTOR
diff_hunk: @@ -1,5 +1,7 @@
+import type { Directive } from 'vue'
+
 type DirectiveValue = Record<string, boolean> | string
-type DirectiveModifiers = Record<'next', boolean | undefined>
+type DirectiveModifiers = Partial<Record<'next', boolean | undefined>>
path: packages/kuma-gui/src/app/x/directives/style/index.ts
user: login: schogges
body: done 🙂 
created_at: 2025-05-21T15:07:41Z
author_association: CONTRIBUTOR

PR comments:
user: login: netlify[bot]
created_at: 2025-05-21T12:09:11Z
body: ### <span aria-hidden="true">✅</span> Deploy Preview for *kuma-gui* ready!


|  Name | Link |
|:-:|------------------------|
|<span aria-hidden="true">🔨</span> Latest commit | f7e42b1f8d03c183d4c1f2d29abb27df7516e2d0 |
|<span aria-hidden="true">🔍</span> Latest deploy log | https://app.netlify.com/projects/kuma-gui/deploys/682dec075f22180008c840a6 |
|<span aria-hidden="true">😎</span> Deploy Preview | [https://deploy-preview-3940--kuma-gui.netlify.app](https://deploy-preview-3940--kuma-gui.netlify.app) |
|<span aria-hidden="true">📱</span> Preview on mobile | <details><summary> Toggle QR Code... </summary><br /><br />![QR Code](https://app.netlify.com/qr-code/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1cmwiOiJodHRwczovL2RlcGxveS1wcmV2aWV3LTM5NDAtLWt1bWEtZ3VpLm5ldGxpZnkuYXBwIn0.HjCMkow_MQNL_fTVHuz56Wc1pKZyN9ZLc_Ep0k-tUek)<br /><br />_Use your smartphone camera to open QR code link._</details> |
---
<!-- [kuma-gui Preview](https://deploy-preview-3940--kuma-gui.netlify.app) -->
_To edit notification comments on pull requests, go to your [Netlify project configuration](https://app.netlify.com/projects/kuma-gui/configuration/notifications#deploy-notifications)._
author_association: NONE
user: login: schogges
created_at: 2025-05-21T13:01:49Z
body: @johncowen need your stamp on this. Had to fix a type error in our style directive:

```
Type '($el: HTMLElement, args_1: { value: DirectiveValue; modifiers: DirectiveModifiers; }) => void' is not assignable to type 'DirectiveHook<any, null, any, string, string>'.
  Types of parameters 'args_1' and 'binding' are incompatible.
    Type 'DirectiveBinding<any, string, string>' is not assignable to type '{ value: DirectiveValue; modifiers: DirectiveModifiers; }'.
      Types of property 'modifiers' are incompatible.
        Property 'next' is missing in type 'Partial<Record<string, boolean>>' but required in type 'DirectiveModifiers'.ts(2322)
```
author_association: CONTRIBUTOR
user: login: schogges
created_at: 2025-05-21T15:13:00Z
body: > I kinda had another nit here, but would rather unblock the upgrade 👍

Lmk 😄 can do a follow-up
author_association: CONTRIBUTOR