]> git.ipfire.org Git - thirdparty/vuejs/core.git/commitdiff
chore: Merge branch 'vapor' into edison/feat/vaporKeepAlive
authordaiwei <daiwei521@126.com>
Fri, 20 Jun 2025 03:06:55 +0000 (11:06 +0800)
committerdaiwei <daiwei521@126.com>
Fri, 20 Jun 2025 03:06:55 +0000 (11:06 +0800)
1  2 
packages/compiler-vapor/src/generators/component.ts
packages/compiler-vapor/src/transforms/transformElement.ts
packages/runtime-core/src/apiCreateApp.ts
packages/runtime-core/src/component.ts
packages/runtime-core/src/index.ts
packages/runtime-core/src/renderer.ts
packages/runtime-vapor/src/component.ts
packages/runtime-vapor/src/vdomInterop.ts
pnpm-lock.yaml

index 474f3ed4a301c602d6cf46b0b1c9f6ddfc20ebdf,1ed6f21df7769a695a0643a6c27c38eaeaf30eef..99a054cd7698d8db9b8ded458aa3d9cd1cf06fb0
@@@ -557,21 -557,7 +557,25 @@@ export { startMeasure, endMeasure } fro
   * @internal
   */
  export { initFeatureFlags } from './featureFlags'
 +/**
 + * @internal
 + */
 +export { getComponentName } from './component'
 +/**
 + * @internal
 + */
 +export {
 +  matches,
 +  isKeepAlive,
 +  resetShapeFlag,
 +  activate,
 +  deactivate,
 +} from './components/KeepAlive'
 +/**
 + * @internal
 + */
 +export { devtoolsComponentAdded } from './devtools'
+ /**
+  * @internal
+  */
+ export { createInternalObject } from './internalObject'
Simple merge
index e7d9db5de6c3d13c87ed7a50397888ad5b992a70,af15133dbe54f7510deb7abc2bf85e88f76f6250..3f1e8e1acbb2a38d0971c36c6b4b44add9360eec
@@@ -66,8 -59,11 +66,12 @@@ import 
  } from './componentSlots'
  import { hmrReload, hmrRerender } from './hmr'
  import { isHydrating, locateHydrationNode } from './dom/hydration'
- import { insertionAnchor, insertionParent } from './insertionState'
 +import type { KeepAliveInstance } from './components/KeepAlive'
+ import {
+   insertionAnchor,
+   insertionParent,
+   resetInsertionState,
+ } from './insertionState'
  
  export { currentInstance } from '@vue/runtime-dom'
  
@@@ -150,21 -146,10 +154,23 @@@ export function createComponent
    const _insertionAnchor = insertionAnchor
    if (isHydrating) {
      locateHydrationNode()
+   } else {
+     resetInsertionState()
    }
  
 +  // keep-alive
 +  if (
 +    currentInstance &&
 +    currentInstance.vapor &&
 +    isKeepAlive(currentInstance)
 +  ) {
 +    const cached = (currentInstance as KeepAliveInstance).getCachedComponent(
 +      component,
 +    )
 +    // @ts-expect-error cached may be a fragment
 +    if (cached) return cached
 +  }
 +
    // vdom interop enabled and component is not an explicit vapor component
    if (appContext.vapor && !component.__vapor) {
      const frag = appContext.vapor.vdomMount(
        rawProps,
        rawSlots,
      )
-     // TODO: problem is `frag.insert` will be called multiple times
-     // if used in v-if
-     if (!isHydrating && _insertionParent && !isKeepAlive(currentInstance)) {
++
+     if (!isHydrating && _insertionParent) {
        insert(frag, _insertionParent, _insertionAnchor)
      }
      return frag
index 8ec4652ddda14930c6628487398123b8c307f136,b916a2c8ebb0106b1d7542db2a83c17005c2649e..cb52d304842add995c118f8dc0db92b88108ead5
@@@ -12,7 -13,7 +13,8 @@@ import 
    createVNode,
    currentInstance,
    ensureRenderer,
+   isEmitListener,
 +  isKeepAlive,
    onScopeDispose,
    renderSlot,
    shallowRef,
diff --cc pnpm-lock.yaml
index c72eaa1ab1994564cdca35de0215739974529e3c,a8c6e9bb4262c1780a6bacccbb2b0b97bf476424..d7991df6ff3c646168d4c9fbccb286a938f72d60
@@@ -1216,74 -1218,63 +1218,64 @@@ packages
      cpu: [x64]
      os: [freebsd]
  
-   '@rollup/rollup-linux-arm-gnueabihf@4.37.0':
-     resolution: {integrity: sha512-hhAALKJPidCwZcj+g+iN+38SIOkhK2a9bqtJR+EtyxrKKSt1ynCBeqrQy31z0oWU6thRZzdx53hVgEbRkuI19w==}
+   '@rollup/rollup-linux-arm-gnueabihf@4.44.0':
+     resolution: {integrity: sha512-x+e/Z9H0RAWckn4V2OZZl6EmV0L2diuX3QB0uM1r6BvhUIv6xBPL5mrAX2E3e8N8rEHVPwFfz/ETUbV4oW9+lQ==}
      cpu: [arm]
      os: [linux]
-     libc: [glibc]
  
-   '@rollup/rollup-linux-arm-musleabihf@4.37.0':
-     resolution: {integrity: sha512-jUb/kmn/Gd8epbHKEqkRAxq5c2EwRt0DqhSGWjPFxLeFvldFdHQs/n8lQ9x85oAeVb6bHcS8irhTJX2FCOd8Ag==}
+   '@rollup/rollup-linux-arm-musleabihf@4.44.0':
+     resolution: {integrity: sha512-1exwiBFf4PU/8HvI8s80icyCcnAIB86MCBdst51fwFmH5dyeoWVPVgmQPcKrMtBQ0W5pAs7jBCWuRXgEpRzSCg==}
      cpu: [arm]
      os: [linux]
-     libc: [musl]
  
-   '@rollup/rollup-linux-arm64-gnu@4.37.0':
-     resolution: {integrity: sha512-oNrJxcQT9IcbcmKlkF+Yz2tmOxZgG9D9GRq+1OE6XCQwCVwxixYAa38Z8qqPzQvzt1FCfmrHX03E0pWoXm1DqA==}
+   '@rollup/rollup-linux-arm64-gnu@4.44.0':
+     resolution: {integrity: sha512-ZTR2mxBHb4tK4wGf9b8SYg0Y6KQPjGpR4UWwTFdnmjB4qRtoATZ5dWn3KsDwGa5Z2ZBOE7K52L36J9LueKBdOQ==}
      cpu: [arm64]
      os: [linux]
-     libc: [glibc]
  
-   '@rollup/rollup-linux-arm64-musl@4.37.0':
-     resolution: {integrity: sha512-pfxLBMls+28Ey2enpX3JvjEjaJMBX5XlPCZNGxj4kdJyHduPBXtxYeb8alo0a7bqOoWZW2uKynhHxF/MWoHaGQ==}
+   '@rollup/rollup-linux-arm64-musl@4.44.0':
+     resolution: {integrity: sha512-GFWfAhVhWGd4r6UxmnKRTBwP1qmModHtd5gkraeW2G490BpFOZkFtem8yuX2NyafIP/mGpRJgTJ2PwohQkUY/Q==}
      cpu: [arm64]
      os: [linux]
-     libc: [musl]
  
-   '@rollup/rollup-linux-loongarch64-gnu@4.37.0':
-     resolution: {integrity: sha512-yCE0NnutTC/7IGUq/PUHmoeZbIwq3KRh02e9SfFh7Vmc1Z7atuJRYWhRME5fKgT8aS20mwi1RyChA23qSyRGpA==}
+   '@rollup/rollup-linux-loongarch64-gnu@4.44.0':
+     resolution: {integrity: sha512-xw+FTGcov/ejdusVOqKgMGW3c4+AgqrfvzWEVXcNP6zq2ue+lsYUgJ+5Rtn/OTJf7e2CbgTFvzLW2j0YAtj0Gg==}
      cpu: [loong64]
      os: [linux]
-     libc: [glibc]
  
-   '@rollup/rollup-linux-powerpc64le-gnu@4.37.0':
-     resolution: {integrity: sha512-NxcICptHk06E2Lh3a4Pu+2PEdZ6ahNHuK7o6Np9zcWkrBMuv21j10SQDJW3C9Yf/A/P7cutWoC/DptNLVsZ0VQ==}
+   '@rollup/rollup-linux-powerpc64le-gnu@4.44.0':
+     resolution: {integrity: sha512-bKGibTr9IdF0zr21kMvkZT4K6NV+jjRnBoVMt2uNMG0BYWm3qOVmYnXKzx7UhwrviKnmK46IKMByMgvpdQlyJQ==}
      cpu: [ppc64]
      os: [linux]
-     libc: [glibc]
  
-   '@rollup/rollup-linux-riscv64-gnu@4.37.0':
-     resolution: {integrity: sha512-PpWwHMPCVpFZLTfLq7EWJWvrmEuLdGn1GMYcm5MV7PaRgwCEYJAwiN94uBuZev0/J/hFIIJCsYw4nLmXA9J7Pw==}
+   '@rollup/rollup-linux-riscv64-gnu@4.44.0':
+     resolution: {integrity: sha512-vV3cL48U5kDaKZtXrti12YRa7TyxgKAIDoYdqSIOMOFBXqFj2XbChHAtXquEn2+n78ciFgr4KIqEbydEGPxXgA==}
      cpu: [riscv64]
      os: [linux]
-     libc: [glibc]
  
-   '@rollup/rollup-linux-riscv64-musl@4.37.0':
-     resolution: {integrity: sha512-DTNwl6a3CfhGTAOYZ4KtYbdS8b+275LSLqJVJIrPa5/JuIufWWZ/QFvkxp52gpmguN95eujrM68ZG+zVxa8zHA==}
+   '@rollup/rollup-linux-riscv64-musl@4.44.0':
+     resolution: {integrity: sha512-TDKO8KlHJuvTEdfw5YYFBjhFts2TR0VpZsnLLSYmB7AaohJhM8ctDSdDnUGq77hUh4m/djRafw+9zQpkOanE2Q==}
      cpu: [riscv64]
      os: [linux]
-     libc: [musl]
++    libc: [glibc]
  
-   '@rollup/rollup-linux-s390x-gnu@4.37.0':
-     resolution: {integrity: sha512-hZDDU5fgWvDdHFuExN1gBOhCuzo/8TMpidfOR+1cPZJflcEzXdCy1LjnklQdW8/Et9sryOPJAKAQRw8Jq7Tg+A==}
+   '@rollup/rollup-linux-s390x-gnu@4.44.0':
+     resolution: {integrity: sha512-8541GEyktXaw4lvnGp9m84KENcxInhAt6vPWJ9RodsB/iGjHoMB2Pp5MVBCiKIRxrxzJhGCxmNzdu+oDQ7kwRA==}
      cpu: [s390x]
      os: [linux]
-     libc: [glibc]
  
-   '@rollup/rollup-linux-x64-gnu@4.37.0':
-     resolution: {integrity: sha512-pKivGpgJM5g8dwj0ywBwe/HeVAUSuVVJhUTa/URXjxvoyTT/AxsLTAbkHkDHG7qQxLoW2s3apEIl26uUe08LVQ==}
+   '@rollup/rollup-linux-x64-gnu@4.44.0':
+     resolution: {integrity: sha512-iUVJc3c0o8l9Sa/qlDL2Z9UP92UZZW1+EmQ4xfjTc1akr0iUFZNfxrXJ/R1T90h/ILm9iXEY6+iPrmYB3pXKjw==}
      cpu: [x64]
      os: [linux]
-     libc: [glibc]
  
-   '@rollup/rollup-linux-x64-musl@4.37.0':
-     resolution: {integrity: sha512-E2lPrLKE8sQbY/2bEkVTGDEk4/49UYRVWgj90MY8yPjpnGBQ+Xi1Qnr7b7UIWw1NOggdFQFOLZ8+5CzCiz143w==}
+   '@rollup/rollup-linux-x64-musl@4.44.0':
+     resolution: {integrity: sha512-PQUobbhLTQT5yz/SPg116VJBgz+XOtXt8D1ck+sfJJhuEsMj2jSej5yTdp8CvWBSceu+WW+ibVL6dm0ptG5fcA==}
      cpu: [x64]
      os: [linux]
-     libc: [musl]
  
-   '@rollup/rollup-win32-arm64-msvc@4.37.0':
-     resolution: {integrity: sha512-Jm7biMazjNzTU4PrQtr7VS8ibeys9Pn29/1bm4ph7CP2kf21950LgN+BaE2mJ1QujnvOc6p54eWWiVvn05SOBg==}
+   '@rollup/rollup-win32-arm64-msvc@4.44.0':
+     resolution: {integrity: sha512-M0CpcHf8TWn+4oTxJfh7LQuTuaYeXGbk0eageVjQCKzYLsajWS/lFC94qlRqOlyC2KvRT90ZrfXULYmukeIy7w==}
      cpu: [arm64]
      os: [win32]
  
      cpu: [arm]
      os: [linux]
  
-   '@unrs/rspack-resolver-binding-linux-arm64-gnu@1.2.2':
-     resolution: {integrity: sha512-fp4Azi8kHz6TX8SFmKfyScZrMLfp++uRm2srpqRjsRZIIBzH74NtSkdEUHImR4G7f7XJ+sVZjCc6KDDK04YEpQ==}
+   '@unrs/resolver-binding-linux-arm-musleabihf@1.9.0':
+     resolution: {integrity: sha512-uT6E7UBIrTdCsFQ+y0tQd3g5oudmrS/hds5pbU3h4s2t/1vsGWbbSKhBSCD9mcqaqkBwoqlECpUrRJCmldl8PA==}
+     cpu: [arm]
+     os: [linux]
+   '@unrs/resolver-binding-linux-arm64-gnu@1.9.0':
+     resolution: {integrity: sha512-vdqBh911wc5awE2bX2zx3eflbyv8U9xbE/jVKAm425eRoOVv/VseGZsqi3A3SykckSpF4wSROkbQPvbQFn8EsA==}
      cpu: [arm64]
      os: [linux]
 +    libc: [glibc]
  
-   '@unrs/rspack-resolver-binding-linux-arm64-musl@1.2.2':
-     resolution: {integrity: sha512-gMiG3DCFioJxdGBzhlL86KcFgt9HGz0iDhw0YVYPsShItpN5pqIkNrI+L/Q/0gfDiGrfcE0X3VANSYIPmqEAlQ==}
+   '@unrs/resolver-binding-linux-arm64-musl@1.9.0':
+     resolution: {integrity: sha512-/8JFZ/SnuDr1lLEVsxsuVwrsGquTvT51RZGvyDB/dOK3oYK2UqeXzgeyq6Otp8FZXQcEYqJwxb9v+gtdXn03eQ==}
      cpu: [arm64]
      os: [linux]
 +    libc: [musl]
  
-   '@unrs/rspack-resolver-binding-linux-x64-gnu@1.2.2':
-     resolution: {integrity: sha512-n/4n2CxaUF9tcaJxEaZm+lqvaw2gflfWQ1R9I7WQgYkKEKbRKbpG/R3hopYdUmLSRI4xaW1Cy0Bz40eS2Yi4Sw==}
+   '@unrs/resolver-binding-linux-ppc64-gnu@1.9.0':
+     resolution: {integrity: sha512-FkJjybtrl+rajTw4loI3L6YqSOpeZfDls4SstL/5lsP2bka9TiHUjgMBjygeZEis1oC8LfJTS8FSgpKPaQx2tQ==}
+     cpu: [ppc64]
+     os: [linux]
+   '@unrs/resolver-binding-linux-riscv64-gnu@1.9.0':
+     resolution: {integrity: sha512-w/NZfHNeDusbqSZ8r/hp8iL4S39h4+vQMc9/vvzuIKMWKppyUGKm3IST0Qv0aOZ1rzIbl9SrDeIqK86ZpUK37w==}
+     cpu: [riscv64]
+     os: [linux]
+   '@unrs/resolver-binding-linux-riscv64-musl@1.9.0':
+     resolution: {integrity: sha512-bEPBosut8/8KQbUixPry8zg/fOzVOWyvwzOfz0C0Rw6dp+wIBseyiHKjkcSyZKv/98edrbMknBaMNJfA/UEdqw==}
+     cpu: [riscv64]
+     os: [linux]
+   '@unrs/resolver-binding-linux-s390x-gnu@1.9.0':
+     resolution: {integrity: sha512-LDtMT7moE3gK753gG4pc31AAqGUC86j3AplaFusc717EUGF9ZFJ356sdQzzZzkBk1XzMdxFyZ4f/i35NKM/lFA==}
+     cpu: [s390x]
+     os: [linux]
+   '@unrs/resolver-binding-linux-x64-gnu@1.9.0':
+     resolution: {integrity: sha512-WmFd5KINHIXj8o1mPaT8QRjA9HgSXhN1gl9Da4IZihARihEnOylu4co7i/yeaIpcfsI6sYs33cNZKyHYDh0lrA==}
      cpu: [x64]
      os: [linux]
 +    libc: [glibc]
  
-   '@unrs/rspack-resolver-binding-linux-x64-musl@1.2.2':
-     resolution: {integrity: sha512-cHyhAr6rlYYbon1L2Ag449YCj3p6XMfcYTP0AQX+KkQo025d1y/VFtPWvjMhuEsE2lLvtHm7GdJozj6BOMtzVg==}
+   '@unrs/resolver-binding-linux-x64-musl@1.9.0':
+     resolution: {integrity: sha512-CYuXbANW+WgzVRIl8/QvZmDaZxrqvOldOwlbUjIM4pQ46FJ0W5cinJ/Ghwa/Ng1ZPMJMk1VFdsD/XwmCGIXBWg==}
      cpu: [x64]
      os: [linux]
 +    libc: [musl]
  
-   '@unrs/rspack-resolver-binding-wasm32-wasi@1.2.2':
-     resolution: {integrity: sha512-eogDKuICghDLGc32FtP+WniG38IB1RcGOGz0G3z8406dUdjJvxfHGuGs/dSlM9YEp/v0lEqhJ4mBu6X2nL9pog==}
+   '@unrs/resolver-binding-wasm32-wasi@1.9.0':
+     resolution: {integrity: sha512-6Rp2WH0OoitMYR57Z6VE8Y6corX8C6QEMWLgOV6qXiJIeZ1F9WGXY/yQ8yDC4iTraotyLOeJ2Asea0urWj2fKQ==}
      engines: {node: '>=14.0.0'}
      cpu: [wasm32]
  
      resolution: {integrity: sha512-oTyUE+QHIzLw2PpV14GD/c7EohDyP64xCniWTcqcEmTd699eFqTIwOmtDYjcO1j3QgdXoJEoWv1/cCdLrRoOfg==}
      engines: {node: '>= 0.12.0'}
  
-   '@vue/reactivity@3.5.13':
-     resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==}
+   '@vue/reactivity@3.5.14':
+     resolution: {integrity: sha512-7cK1Hp343Fu/SUCCO52vCabjvsYu7ZkOqyYu7bXV9P2yyfjUMUXHZafEbq244sP7gf+EZEz+77QixBTuEqkQQw==}
+   '@vue/repl@4.6.1':
+     resolution: {integrity: sha512-tgeEa+QXzqbFsAIbq/dCXzOJxIW2Nq1F79KXRjbKyPt1ODpCx86bDbFgNzFcBEK3In2/mjPTMpN7fSD6Ig0Qsw==}
+   '@vue/runtime-core@3.5.14':
+     resolution: {integrity: sha512-w9JWEANwHXNgieAhxPpEpJa+0V5G0hz3NmjAZwlOebtfKyp2hKxKF0+qSh0Xs6/PhfGihuSdqMprMVcQU/E6ag==}
+   '@vue/runtime-dom@3.5.14':
+     resolution: {integrity: sha512-lCfR++IakeI35TVR80QgOelsUIdcKjd65rWAMfdSlCYnaEY5t3hYwru7vvcWaqmrK+LpI7ZDDYiGU5V3xjMacw==}
  
-   '@vue/repl@4.5.1':
-     resolution: {integrity: sha512-YYXvFue2GOrZ6EWnoA8yQVKzdCIn45+tpwJHzMof1uwrgyYAVY9ynxCsDYeAuWcpaAeylg/nybhFuqiFy2uvYA==}
+   '@vue/server-renderer@3.5.14':
+     resolution: {integrity: sha512-Rf/ISLqokIvcySIYnv3tNWq40PLpNLDLSJwwVWzG6MNtyIhfbcrAxo5ZL9nARJhqjZyWWa40oRb2IDuejeuv6w==}
+     peerDependencies:
+       vue: 3.5.14
+   '@vue/shared@3.5.14':
+     resolution: {integrity: sha512-oXTwNxVfc9EtP1zzXAlSlgARLXNC84frFYkS0HHz0h3E4WZSP9sywqjqzGCP9Y34M8ipNmd380pVgmMuwELDyQ==}
+   '@vueuse/core@11.3.0':
+     resolution: {integrity: sha512-7OC4Rl1f9G8IT6rUfi9JrKiXy4bfmHhZ5x2Ceojy0jnd3mHNEvV4JaRygH362ror6/NZ+Nl+n13LPzGiPN8cKA==}
+   '@vueuse/metadata@11.3.0':
+     resolution: {integrity: sha512-pwDnDspTqtTo2HwfLw4Rp6yywuuBdYnPYDq+mO38ZYKGebCUQC/nVj/PXSiK9HX5otxLz8Fn7ECPbjiRz2CC3g==}
+   '@vueuse/shared@11.3.0':
+     resolution: {integrity: sha512-P8gSSWQeucH5821ek2mn/ciCk+MS/zoRKqdQIM3bHq6p7GXDAJLmnRRKmF5F65sAVJIfzQlwR3aDzwCn10s8hA==}
  
 +  '@vue/runtime-core@3.5.13':
 +    resolution: {integrity: sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==}
 +
 +  '@vue/runtime-dom@3.5.13':
 +    resolution: {integrity: sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==}
 +
 +  '@vue/server-renderer@3.5.13':
 +    resolution: {integrity: sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==}
 +    peerDependencies:
 +      vue: 3.5.13
 +
 +  '@vue/shared@3.5.13':
 +    resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==}
 +
 +  '@vueuse/core@11.3.0':
 +    resolution: {integrity: sha512-7OC4Rl1f9G8IT6rUfi9JrKiXy4bfmHhZ5x2Ceojy0jnd3mHNEvV4JaRygH362ror6/NZ+Nl+n13LPzGiPN8cKA==}
 +
 +  '@vueuse/metadata@11.3.0':
 +    resolution: {integrity: sha512-pwDnDspTqtTo2HwfLw4Rp6yywuuBdYnPYDq+mO38ZYKGebCUQC/nVj/PXSiK9HX5otxLz8Fn7ECPbjiRz2CC3g==}
 +
 +  '@vueuse/shared@11.3.0':
 +    resolution: {integrity: sha512-P8gSSWQeucH5821ek2mn/ciCk+MS/zoRKqdQIM3bHq6p7GXDAJLmnRRKmF5F65sAVJIfzQlwR3aDzwCn10s8hA==}
 +
    '@zeit/schemas@2.36.0':
      resolution: {integrity: sha512-7kjMwcChYEzMKjeex9ZFXkt1AyNov9R5HZtjBKVsmVpw7pa7ZtlCGvCBC2vnnXctaYN+aRI61HjIqeetZW5ROg==}
  
@@@ -4840,32 -4855,32 +4883,71 @@@ snapshots
  
    '@vue/consolidate@1.0.0': {}
  
-   '@vue/reactivity@3.5.13':
+   '@vue/reactivity@3.5.14':
      dependencies:
-       '@vue/shared': 3.5.13
+       '@vue/shared': 3.5.14
+   '@vue/repl@4.6.1': {}
  
-   '@vue/repl@4.5.1': {}
+   '@vue/runtime-core@3.5.14':
+     dependencies:
+       '@vue/reactivity': 3.5.14
+       '@vue/shared': 3.5.14
+   '@vue/runtime-dom@3.5.14':
+     dependencies:
+       '@vue/reactivity': 3.5.14
+       '@vue/runtime-core': 3.5.14
+       '@vue/shared': 3.5.14
+       csstype: 3.1.3
+   '@vue/server-renderer@3.5.14(vue@3.5.14(typescript@5.6.3))':
+     dependencies:
+       '@vue/compiler-ssr': 3.5.14
+       '@vue/shared': 3.5.14
+       vue: 3.5.14(typescript@5.6.3)
+   '@vue/shared@3.5.14': {}
++  '@vueuse/core@11.3.0(vue@packages+vue)':
++    dependencies:
++      '@types/web-bluetooth': 0.0.20
++      '@vueuse/metadata': 11.3.0
++      '@vueuse/shared': 11.3.0(vue@packages+vue)
++      vue-demi: 0.14.10(vue@packages+vue)
++    transitivePeerDependencies:
++      - '@vue/composition-api'
++      - vue
++
++  '@vueuse/metadata@11.3.0': {}
++
++  '@vueuse/shared@11.3.0(vue@packages+vue)':
++    dependencies:
++      vue-demi: 0.14.10(vue@packages+vue)
++    transitivePeerDependencies:
++      - '@vue/composition-api'
++      - vue
 +
 +  '@vue/runtime-core@3.5.13':
 +    dependencies:
 +      '@vue/reactivity': 3.5.13
 +      '@vue/shared': 3.5.13
 +
 +  '@vue/runtime-dom@3.5.13':
 +    dependencies:
 +      '@vue/reactivity': 3.5.13
 +      '@vue/runtime-core': 3.5.13
 +      '@vue/shared': 3.5.13
 +      csstype: 3.1.3
 +
 +  '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.6.2))':
 +    dependencies:
 +      '@vue/compiler-ssr': 3.5.13
 +      '@vue/shared': 3.5.13
 +      vue: 3.5.13(typescript@5.6.2)
 +
 +  '@vue/shared@3.5.13': {}
 +
    '@vueuse/core@11.3.0(vue@packages+vue)':
      dependencies:
        '@types/web-bluetooth': 0.0.20