From c3f46aa47df14b0a4710db7d507d1166e9a56d5e Mon Sep 17 00:00:00 2001
From: Jungzl <13jungzl@gmail.com>
Date: Tue, 5 Aug 2025 17:32:45 +0800
Subject: [PATCH 1/3] test: add `unocss-vue-scoped`
---
playground/unocss-vue-scoped/App.vue | 7 +
playground/unocss-vue-scoped/HelloUnoCSS.vue | 3 +
.../__tests__/unocss.spec.ts | 26 +
playground/unocss-vue-scoped/index.html | 7 +
playground/unocss-vue-scoped/package.json | 20 +
playground/unocss-vue-scoped/uno.config.ts | 5 +
playground/unocss-vue-scoped/vite.config.ts | 11 +
pnpm-lock.yaml | 533 ++++++++++++++++--
8 files changed, 564 insertions(+), 48 deletions(-)
create mode 100644 playground/unocss-vue-scoped/App.vue
create mode 100644 playground/unocss-vue-scoped/HelloUnoCSS.vue
create mode 100644 playground/unocss-vue-scoped/__tests__/unocss.spec.ts
create mode 100644 playground/unocss-vue-scoped/index.html
create mode 100644 playground/unocss-vue-scoped/package.json
create mode 100644 playground/unocss-vue-scoped/uno.config.ts
create mode 100644 playground/unocss-vue-scoped/vite.config.ts
diff --git a/playground/unocss-vue-scoped/App.vue b/playground/unocss-vue-scoped/App.vue
new file mode 100644
index 00000000..5c4cb9d6
--- /dev/null
+++ b/playground/unocss-vue-scoped/App.vue
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/playground/unocss-vue-scoped/HelloUnoCSS.vue b/playground/unocss-vue-scoped/HelloUnoCSS.vue
new file mode 100644
index 00000000..bd19e39e
--- /dev/null
+++ b/playground/unocss-vue-scoped/HelloUnoCSS.vue
@@ -0,0 +1,3 @@
+
+ UnoCSS
+
diff --git a/playground/unocss-vue-scoped/__tests__/unocss.spec.ts b/playground/unocss-vue-scoped/__tests__/unocss.spec.ts
new file mode 100644
index 00000000..2127fc94
--- /dev/null
+++ b/playground/unocss-vue-scoped/__tests__/unocss.spec.ts
@@ -0,0 +1,26 @@
+import { expect, test } from 'vitest'
+import {
+ editFile,
+ getBgColor,
+ isServe,
+ page,
+ untilBrowserLogAfter,
+} from '~utils'
+
+test.runIf(isServe)('regenerate CSS and HMR', async () => {
+ const el = await page.$('.uno')
+ expect(await getBgColor(el)).toBe('rgb(187, 247, 208)')
+
+ await untilBrowserLogAfter(
+ () =>
+ editFile('HelloUnoCSS.vue', (code) =>
+ code.replace('bg-green-200', 'bg-red-200'),
+ ),
+ [
+ '[vite] hot updated: /HelloUnoCSS.vue',
+ '[vite] hot updated: /HelloUnoCSS.vue?vue&type=style&index=0&scoped=468ceaae&lang.css',
+ ],
+ false,
+ )
+ await expect.poll(() => getBgColor(el)).toMatch('rgb(254, 202, 202)')
+})
diff --git a/playground/unocss-vue-scoped/index.html b/playground/unocss-vue-scoped/index.html
new file mode 100644
index 00000000..dc3f47db
--- /dev/null
+++ b/playground/unocss-vue-scoped/index.html
@@ -0,0 +1,7 @@
+
+
diff --git a/playground/unocss-vue-scoped/package.json b/playground/unocss-vue-scoped/package.json
new file mode 100644
index 00000000..6e07e14a
--- /dev/null
+++ b/playground/unocss-vue-scoped/package.json
@@ -0,0 +1,20 @@
+{
+ "name": "@vitejs/test-unocss-vue-scoped",
+ "private": true,
+ "version": "0.0.0",
+ "type": "module",
+ "scripts": {
+ "dev": "vite",
+ "build": "vite build",
+ "debug": "node --inspect-brk ../../packages/vite/bin/vite",
+ "preview": "vite preview"
+ },
+ "dependencies": {
+ "unocss": "^66.4.1",
+ "vue": "catalog:"
+ },
+ "devDependencies": {
+ "@types/node": "^22.16.5",
+ "@vitejs/plugin-vue": "workspace:*"
+ }
+}
diff --git a/playground/unocss-vue-scoped/uno.config.ts b/playground/unocss-vue-scoped/uno.config.ts
new file mode 100644
index 00000000..68ca5780
--- /dev/null
+++ b/playground/unocss-vue-scoped/uno.config.ts
@@ -0,0 +1,5 @@
+import { defineConfig, presetWind3 } from 'unocss'
+
+export default defineConfig({
+ presets: [presetWind3()],
+})
diff --git a/playground/unocss-vue-scoped/vite.config.ts b/playground/unocss-vue-scoped/vite.config.ts
new file mode 100644
index 00000000..2803af9b
--- /dev/null
+++ b/playground/unocss-vue-scoped/vite.config.ts
@@ -0,0 +1,11 @@
+import { defineConfig } from 'vite'
+import vue from '@vitejs/plugin-vue'
+import UnoCSS from 'unocss/vite'
+
+export default defineConfig({
+ plugins: [vue(), UnoCSS({ mode: 'vue-scoped' })],
+ build: {
+ // to make tests faster
+ minify: false,
+ },
+})
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index bbe90c8d..1e5a2e7f 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -255,6 +255,22 @@ importers:
specifier: ^10.9.2
version: 10.9.2(@types/node@22.16.5)(typescript@5.8.3)
+ playground/unocss-vue-scoped:
+ dependencies:
+ unocss:
+ specifier: ^66.4.1
+ version: 66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
+ vue:
+ specifier: 'catalog:'
+ version: 3.5.18(typescript@5.8.3)
+ devDependencies:
+ '@types/node':
+ specifier: ^22.16.5
+ version: 22.16.5
+ '@vitejs/plugin-vue':
+ specifier: workspace:*
+ version: link:../../packages/plugin-vue
+
playground/vue:
dependencies:
lodash-es:
@@ -381,6 +397,12 @@ packages:
resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
engines: {node: '>=6.0.0'}
+ '@antfu/install-pkg@1.1.0':
+ resolution: {integrity: sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==}
+
+ '@antfu/utils@8.1.1':
+ resolution: {integrity: sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ==}
+
'@babel/code-frame@7.27.1':
resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
engines: {node: '>=6.9.0'}
@@ -1191,6 +1213,12 @@ packages:
resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==}
engines: {node: '>=18.18'}
+ '@iconify/types@2.0.0':
+ resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
+
+ '@iconify/utils@2.3.0':
+ resolution: {integrity: sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==}
+
'@isaacs/cliui@8.0.2':
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
@@ -1326,6 +1354,9 @@ packages:
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
+ '@polka/url@1.0.0-next.29':
+ resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==}
+
'@publint/pack@0.1.2':
resolution: {integrity: sha512-S+9ANAvUmjutrshV4jZjaiG8XQyuJIZ8a4utWmN/vW1sgQ9IfBnPndwkmQYw53QmouOIytT874u65HEmu6H5jw==}
engines: {node: '>=18'}
@@ -1738,6 +1769,90 @@ packages:
resolution: {integrity: sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@unocss/astro@66.4.1':
+ resolution: {integrity: sha512-UPfpg1FGf8lMugnMYuFxpVqNvO9cIVdi7e3yXpBnzf0uQ4Pib7KvOTPB4VOAVoqDK2A0kPxCzeR9MxCk4c+wxw==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0
+ peerDependenciesMeta:
+ vite:
+ optional: true
+
+ '@unocss/cli@66.4.1':
+ resolution: {integrity: sha512-rf6udln8CY70tRP2BU1zorJZjzhDVIO3JzmxvH+q4W7MZBQ2ZRfZkWKUFa6ZiyjIj8lxEWlmT6zvu3aSJXbHTg==}
+ engines: {node: '>=14'}
+ hasBin: true
+
+ '@unocss/config@66.4.1':
+ resolution: {integrity: sha512-ABiYEN9febHAfvpxzjrqdCrkomcDpcjCL1OPrWXLHOecfi2qZkj5sTASAfGUvqrV2WtZTPDQii6Nz1OisitRQQ==}
+ engines: {node: '>=14'}
+
+ '@unocss/core@66.4.1':
+ resolution: {integrity: sha512-2QMthvEmH0215zqIIL5WCodQ9lYShYDzziF4N1MMdcoRvCumGq9MMBFPxC54gNDrO3+/Olhp++YYmXkdZ89qrA==}
+
+ '@unocss/extractor-arbitrary-variants@66.4.1':
+ resolution: {integrity: sha512-1iG2egoarrpht56AMoccUMc5iEMPLOQY0iwPumGtwTFqFAYntAQLHbFL//BCOD7DRrHMvGLVNt+uKEGXYIvW6w==}
+
+ '@unocss/inspector@66.4.1':
+ resolution: {integrity: sha512-QS2zOaJaddDFQ7g3BRlFnxqyPYEa5XtE6cwo58hgeZwFDak8IAyPBYpFbINfCQzXhguqGO4MyMRX6NXzgKQ1Cw==}
+
+ '@unocss/postcss@66.4.1':
+ resolution: {integrity: sha512-UcpMqOJ+ADn9uGetWgmIV+Ctu6Y/W828bJKGRPn6u+c+kporLWfkV5nwSqo1C3o1ADkChwpzs0Ikpz3emxM7yQ==}
+ engines: {node: '>=14'}
+
+ '@unocss/preset-attributify@66.4.1':
+ resolution: {integrity: sha512-HTJd/4bEie6EsCwqq9hK+GJwoFp0rx6k3GTz9jHXMwhGpUGYPrrccw8cazYmJq7lMHnPbh/spxHH24eTISwojg==}
+
+ '@unocss/preset-icons@66.4.1':
+ resolution: {integrity: sha512-2XONpwvWcedBRmGangrTcHKGcXN46tZicZIVBa9QCDZ+VsAzOdHzvHWl4QinoYnBhCs6yE+sxZ0sETfFwjOsEg==}
+
+ '@unocss/preset-mini@66.4.1':
+ resolution: {integrity: sha512-3yzpUty02AGgZRBlcRhgpEEsG+GJYvweh1TqWql0bAiW3GJWx0oNuvy2jEQjgllvRYRAErIW4/doOljGNQwwjw==}
+
+ '@unocss/preset-tagify@66.4.1':
+ resolution: {integrity: sha512-PGlC8NwojPc1mj5cvYq5JmBaK7wigcElAItGS+uVQW6goC5kyeiiB0vNw1iyfG542yzXJpPkb3d6B4wZpjl21w==}
+
+ '@unocss/preset-typography@66.4.1':
+ resolution: {integrity: sha512-V7al6aFsmLcj/eyXuvyf2RIlmTpnUJvWnG4A/LZd8UNsLCndFecE0sTR9VYG1JgNj9aywtJT2w6MSSFnN7Jf5g==}
+
+ '@unocss/preset-uno@66.4.1':
+ resolution: {integrity: sha512-iRx0GSSCQFL0rjQs9/rNM+igoBup44kCe+yHcB86/nUaRodQbWU2287xoXZcnzcg7/MTjtEtQWu220EY940pmg==}
+
+ '@unocss/preset-web-fonts@66.4.1':
+ resolution: {integrity: sha512-+wVO+kZTZVREDXtD4/0sJQIBfid+bim40AF4mYp5wA85aeWCCZIqvXzPeF4BWvGFqqrQDHEO1TcUbnOoP8V8UQ==}
+
+ '@unocss/preset-wind3@66.4.1':
+ resolution: {integrity: sha512-GB2evqTAYw3Z9MImIl3JN5T1of8BO40X9zXnpsVQ4w/v/TOUdVzhfsc4XTVOr8/VVO6Z7VNczgpsd6lZhbrcyg==}
+
+ '@unocss/preset-wind4@66.4.1':
+ resolution: {integrity: sha512-mDomSDXAWqnKTbmgEws9WxUxfvGoEzhy/NmpmHRX7R7wm1LAD7FGUl7pF11N51Wf6Z5in8iTzqSFcs0YfUfYng==}
+
+ '@unocss/preset-wind@66.4.1':
+ resolution: {integrity: sha512-r/dUy+0G20/UO6bcZFnNXoRu/6KdRzVdfbeH5TjgO8riI7U44ckLQjDhCMUgUgYldIHewazyiDfMWBcYs5QF5w==}
+
+ '@unocss/reset@66.4.1':
+ resolution: {integrity: sha512-f0t2YIRF7uVUwEB0aDR6yPMqBO+QgGdgACWQmCrZ84Kir9HV+5d50tK5tXDflHmFTu9mqS9MUG4Ba3sPp44vZw==}
+
+ '@unocss/rule-utils@66.4.1':
+ resolution: {integrity: sha512-iYbx4ab3aTMrcJSyBoGvwsbUM5BmRQef4rzGOjL312r/0RDZM+i2ikPxcFXpp/9P+Gp22gSXDMlzwY+VfJ2Llw==}
+ engines: {node: '>=14'}
+
+ '@unocss/transformer-attributify-jsx@66.4.1':
+ resolution: {integrity: sha512-5aICECaco87n1p/8/vzvtgIly3lu1htd/n2SdfA1t6gtUO7PMX2CEZGSw4VxnMTrjNZRXUqxD7MACJIEg/kzRw==}
+
+ '@unocss/transformer-compile-class@66.4.1':
+ resolution: {integrity: sha512-xf6W+zLbFwOvlNNxV0S73ggevlmiBhqtWBI4xdd463IdiJJ1VU/hTmXJ0r39hVHwVEPYGtechUODGtky47M59Q==}
+
+ '@unocss/transformer-directives@66.4.1':
+ resolution: {integrity: sha512-3PiYgq0/TYeCLoUm6K+XbsHcd03l3TN2U2fSeda4PIZoZ/ioH0kJd0tVg98DzO8ekgqtUwKFZjgBa0ezQJwfPQ==}
+
+ '@unocss/transformer-variant-group@66.4.1':
+ resolution: {integrity: sha512-stFDCkPeZYBRpKmmF8dOBgAZEh8ydzSrBnc4Uiakgn0LXrhAKNgxR/kC8urgMhu+HcyNsWlLEEIeQyPj72IAHA==}
+
+ '@unocss/vite@66.4.1':
+ resolution: {integrity: sha512-oXXh9FKaxHUbd9GaiVg+CKtVDoWubQNKtHOLExXU3GgZ/jHATPawR2LXoOtPl/9qq6lT6Dl+o4el2AauUQqo7g==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0
+
'@unrs/resolver-binding-android-arm-eabi@1.9.0':
resolution: {integrity: sha512-h1T2c2Di49ekF2TE8ZCoJkb+jwETKUIPDJ/nO3tJBKlLFPu+fyd93f0rGP/BvArKx2k2HlRM4kqkNarj3dvZlg==}
cpu: [arm]
@@ -1983,27 +2098,15 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0-0
- '@vue/compiler-core@3.5.17':
- resolution: {integrity: sha512-Xe+AittLbAyV0pabcN7cP7/BenRBNcteM4aSDCtRvGw0d9OL+HG1u/XHLY/kt1q4fyMeZYXyIYrsHuPSiDPosA==}
-
'@vue/compiler-core@3.5.18':
resolution: {integrity: sha512-3slwjQrrV1TO8MoXgy3aynDQ7lslj5UqDxuHnrzHtpON5CBinhWjJETciPngpin/T3OuW3tXUf86tEurusnztw==}
- '@vue/compiler-dom@3.5.17':
- resolution: {integrity: sha512-+2UgfLKoaNLhgfhV5Ihnk6wB4ljyW1/7wUIog2puUqajiC29Lp5R/IKDdkebh9jTbTogTbsgB+OY9cEWzG95JQ==}
-
'@vue/compiler-dom@3.5.18':
resolution: {integrity: sha512-RMbU6NTU70++B1JyVJbNbeFkK+A+Q7y9XKE2EM4NLGm2WFR8x9MbAtWxPPLdm0wUkuZv9trpwfSlL6tjdIa1+A==}
- '@vue/compiler-sfc@3.5.17':
- resolution: {integrity: sha512-rQQxbRJMgTqwRugtjw0cnyQv9cP4/4BxWfTdRBkqsTfLOHWykLzbOc3C4GGzAmdMDxhzU/1Ija5bTjMVrddqww==}
-
'@vue/compiler-sfc@3.5.18':
resolution: {integrity: sha512-5aBjvGqsWs+MoxswZPoTB9nSDb3dhd1x30xrrltKujlCxo48j8HGDNj3QPhF4VIS0VQDUrA1xUfp2hEa+FNyXA==}
- '@vue/compiler-ssr@3.5.17':
- resolution: {integrity: sha512-hkDbA0Q20ZzGgpj5uZjb9rBzQtIHLS78mMilwrlpWk2Ep37DYntUz0PonQ6kr113vfOEdM+zTBuJDaceNIW0tQ==}
-
'@vue/compiler-ssr@3.5.18':
resolution: {integrity: sha512-xM16Ak7rSWHkM3m22NlmcdIM+K4BMyFARAfV9hYFl+SFuRzrZ3uGMNW05kA5pmeMa0X9X963Kgou7ufdbpOP9g==}
@@ -2036,9 +2139,6 @@ packages:
'@vue/shared@3.5.13':
resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==}
- '@vue/shared@3.5.17':
- resolution: {integrity: sha512-CabR+UN630VnsJO/jHWYBC1YVXyMq94KKp6iF5MQgZJs5I8cmjw6oVMO1oDbtBkENSHSSn/UadWlW/OAgdmKrg==}
-
'@vue/shared@3.5.18':
resolution: {integrity: sha512-cZy8Dq+uuIXbxCZpuLd2GJdeSO/lIzIspC2WtkqIpje5QyFbvLaI5wZtdUjLHjGZrlVX6GilejatWwVYYRc8tA==}
@@ -2313,6 +2413,16 @@ packages:
concat-map@0.0.1:
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
+ confbox@0.1.8:
+ resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==}
+
+ confbox@0.2.2:
+ resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==}
+
+ consola@3.4.2:
+ resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==}
+ engines: {node: ^14.18.0 || >=16.10.0}
+
constantinople@4.0.1:
resolution: {integrity: sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==}
@@ -2385,6 +2495,10 @@ packages:
css-color-names@1.0.1:
resolution: {integrity: sha512-/loXYOch1qU1biStIFsHH8SxTmOseh1IJqFvy8IujXOm1h+QjUdDhkzOrR5HG8K8mlxREj0yfi8ewCHx0eMxzA==}
+ css-tree@3.1.0:
+ resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==}
+ engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
+
cssesc@3.0.0:
resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
engines: {node: '>=4'}
@@ -2428,6 +2542,9 @@ packages:
resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
engines: {node: '>= 0.8'}
+ destr@2.0.5:
+ resolution: {integrity: sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==}
+
detect-libc@1.0.3:
resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==}
engines: {node: '>=0.10'}
@@ -2471,6 +2588,9 @@ packages:
resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
engines: {node: '>= 0.4'}
+ duplexer@0.1.2:
+ resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
+
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
@@ -2690,6 +2810,9 @@ packages:
resolution: {integrity: sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA==}
engines: {node: '>= 18'}
+ exsolve@1.0.7:
+ resolution: {integrity: sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==}
+
fast-deep-equal@3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
@@ -2829,6 +2952,10 @@ packages:
resolution: {integrity: sha512-1+gLErljJFhbOVyaetcwJiJ4+eLe45S2E7P5UiZ9xGfeq3ATQf5DOv9G7MH3gGbKQLkzmNh2DxfZwLdw+j6oTQ==}
engines: {node: '>=18'}
+ globals@15.15.0:
+ resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==}
+ engines: {node: '>=18'}
+
globrex@0.1.2:
resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
@@ -2845,6 +2972,10 @@ packages:
graphemer@1.4.0:
resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+ gzip-size@6.0.0:
+ resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==}
+ engines: {node: '>=10'}
+
handlebars@4.7.8:
resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==}
engines: {node: '>=0.4.7'}
@@ -3077,6 +3208,9 @@ packages:
resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
engines: {node: '>=6'}
+ kolorist@1.8.0:
+ resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
+
less@4.4.0:
resolution: {integrity: sha512-kdTwsyRuncDfjEs0DlRILWNvxhDG/Zij4YLO4TMJgDLW+8OzpfkdPnRgrsRuY1o+oaxJGWsps5f/RVBgGmmN0w==}
engines: {node: '>=14'}
@@ -3166,6 +3300,10 @@ packages:
resolution: {integrity: sha512-LWzX2KsqcB1wqQ4AHgYb4RsDXauQiqhjLk+6hjbaeHG4zpjjVAB6wC/gz6X0l+Du1cN3pUB5ZlrvTbhGSNnUQQ==}
engines: {node: '>=18.0.0'}
+ local-pkg@1.1.1:
+ resolution: {integrity: sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg==}
+ engines: {node: '>=14'}
+
locate-path@6.0.0:
resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
engines: {node: '>=10'}
@@ -3209,6 +3347,9 @@ packages:
resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
engines: {node: '>= 0.4'}
+ mdn-data@2.12.2:
+ resolution: {integrity: sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==}
+
media-typer@1.1.0:
resolution: {integrity: sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==}
engines: {node: '>= 0.8'}
@@ -3283,10 +3424,17 @@ packages:
engines: {node: '>=10'}
hasBin: true
+ mlly@1.7.4:
+ resolution: {integrity: sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==}
+
mri@1.2.0:
resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
engines: {node: '>=4'}
+ mrmime@2.0.1:
+ resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==}
+ engines: {node: '>=10'}
+
ms@2.0.0:
resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
@@ -3337,6 +3485,9 @@ packages:
node-addon-api@7.1.1:
resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==}
+ node-fetch-native@1.6.7:
+ resolution: {integrity: sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==}
+
node-releases@2.0.19:
resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==}
@@ -3372,6 +3523,9 @@ packages:
resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==}
engines: {node: '>= 0.4'}
+ ofetch@1.4.1:
+ resolution: {integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==}
+
on-finished@2.4.1:
resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==}
engines: {node: '>= 0.8'}
@@ -3499,6 +3653,12 @@ packages:
resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==}
engines: {node: '>= 6'}
+ pkg-types@1.3.1:
+ resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==}
+
+ pkg-types@2.2.0:
+ resolution: {integrity: sha512-2SM/GZGAEkPp3KWORxQZns4M+WSeXbC2HEvmOIJe3Cmiv6ieAJvdVhDldtHqM5J1Y7MrR1XhkBT/rMlhh9FdqQ==}
+
playwright-chromium@1.54.1:
resolution: {integrity: sha512-1tOND4/hyQsYng5NLkLm+Ntew+CWBsvVZCcEZ0wafF5BAd9DBQHAT9SO95+QFk5iL5IBEdB6vFdsHf9Ma72vzQ==}
engines: {node: '>=18'}
@@ -3841,6 +4001,10 @@ packages:
resolution: {integrity: sha512-N+goiLxlkHJlyaYEglFypzVNMaNplPAk5syu0+OPp/Bk6dwVoXF6FfOw2vO0Dp+JHsBaI+w6cm8TnFl2Hw6tDA==}
hasBin: true
+ sirv@3.0.1:
+ resolution: {integrity: sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==}
+ engines: {node: '>=18'}
+
sisteransi@1.0.5:
resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
@@ -4025,6 +4189,10 @@ packages:
token-stream@1.0.0:
resolution: {integrity: sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==}
+ totalist@3.0.1:
+ resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
+ engines: {node: '>=6'}
+
ts-api-utils@2.1.0:
resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==}
engines: {node: '>=18.12'}
@@ -4103,6 +4271,9 @@ packages:
engines: {node: '>=14.17'}
hasBin: true
+ ufo@1.6.1:
+ resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==}
+
uglify-js@3.19.3:
resolution: {integrity: sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==}
engines: {node: '>=0.8.0'}
@@ -4138,10 +4309,26 @@ packages:
resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
engines: {node: '>= 10.0.0'}
+ unocss@66.4.1:
+ resolution: {integrity: sha512-9nZRafw74usdYIHnfBzCtYlPZUjmLOZZ4fxcohMaQtQon+A9P5KiJoaX+9Z2PxVqnArB3drQ1KiRxFPMHJN3+A==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@unocss/webpack': 66.4.1
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0
+ peerDependenciesMeta:
+ '@unocss/webpack':
+ optional: true
+ vite:
+ optional: true
+
unpipe@1.0.0:
resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
engines: {node: '>= 0.8'}
+ unplugin-utils@0.2.4:
+ resolution: {integrity: sha512-8U/MtpkPkkk3Atewj1+RcKIjb5WBimZ/WSLhhR3w6SsIj8XJuKTacSP8g+2JhfSGw0Cb125Y+2zA/IzJZDVbhA==}
+ engines: {node: '>=18.12.0'}
+
unrs-resolver@1.9.0:
resolution: {integrity: sha512-wqaRu4UnzBD2ABTC1kLfBjAqIDZ5YUTr/MLGa7By47JV1bJDSW7jq/ZSLigB7enLe7ubNaJhtnBXgrc/50cEhg==}
@@ -4253,6 +4440,9 @@ packages:
resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==}
engines: {node: '>=0.10.0'}
+ vue-flow-layout@0.2.0:
+ resolution: {integrity: sha512-zKgsWWkXq0xrus7H4Mc+uFs1ESrmdTXlO0YNbR6wMdPaFvosL3fMB8N7uTV308UhGy9UvTrGhIY7mVz9eN+L0Q==}
+
vue-router@4.5.1:
resolution: {integrity: sha512-ogAF3P97NPm8fJsE4by9dwSYtDwXIY1nFY9T6DyQnGHd1E2Da94w9JIolpe42LJGIl0DwOHBi8TcRPlPGwbTtw==}
peerDependencies:
@@ -4345,6 +4535,13 @@ snapshots:
'@jridgewell/gen-mapping': 0.3.12
'@jridgewell/trace-mapping': 0.3.29
+ '@antfu/install-pkg@1.1.0':
+ dependencies:
+ package-manager-detector: 1.3.0
+ tinyexec: 1.0.1
+
+ '@antfu/utils@8.1.1': {}
+
'@babel/code-frame@7.27.1':
dependencies:
'@babel/helper-validator-identifier': 7.27.1
@@ -5286,6 +5483,21 @@ snapshots:
'@humanwhocodes/retry@0.4.2': {}
+ '@iconify/types@2.0.0': {}
+
+ '@iconify/utils@2.3.0':
+ dependencies:
+ '@antfu/install-pkg': 1.1.0
+ '@antfu/utils': 8.1.1
+ '@iconify/types': 2.0.0
+ debug: 4.4.1
+ globals: 15.15.0
+ kolorist: 1.8.0
+ local-pkg: 1.1.1
+ mlly: 1.7.4
+ transitivePeerDependencies:
+ - supports-color
+
'@isaacs/cliui@8.0.2':
dependencies:
string-width: 5.1.2
@@ -5412,6 +5624,8 @@ snapshots:
'@pkgjs/parseargs@0.11.0':
optional: true
+ '@polka/url@1.0.0-next.29': {}
+
'@publint/pack@0.1.2': {}
'@quansync/fs@0.1.3':
@@ -5775,6 +5989,156 @@ snapshots:
'@typescript-eslint/types': 8.38.0
eslint-visitor-keys: 4.2.1
+ '@unocss/astro@66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))':
+ dependencies:
+ '@unocss/core': 66.4.1
+ '@unocss/reset': 66.4.1
+ '@unocss/vite': 66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
+ optionalDependencies:
+ vite: 7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0)
+
+ '@unocss/cli@66.4.1':
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@unocss/config': 66.4.1
+ '@unocss/core': 66.4.1
+ '@unocss/preset-uno': 66.4.1
+ cac: 6.7.14
+ chokidar: 3.6.0
+ colorette: 2.0.20
+ consola: 3.4.2
+ magic-string: 0.30.17
+ pathe: 2.0.3
+ perfect-debounce: 1.0.0
+ tinyglobby: 0.2.14
+ unplugin-utils: 0.2.4
+
+ '@unocss/config@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ unconfig: 7.3.2
+
+ '@unocss/core@66.4.1': {}
+
+ '@unocss/extractor-arbitrary-variants@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+
+ '@unocss/inspector@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ '@unocss/rule-utils': 66.4.1
+ colorette: 2.0.20
+ gzip-size: 6.0.0
+ sirv: 3.0.1
+ vue-flow-layout: 0.2.0
+
+ '@unocss/postcss@66.4.1':
+ dependencies:
+ '@unocss/config': 66.4.1
+ '@unocss/core': 66.4.1
+ '@unocss/rule-utils': 66.4.1
+ css-tree: 3.1.0
+ postcss: 8.5.6
+ tinyglobby: 0.2.14
+
+ '@unocss/preset-attributify@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+
+ '@unocss/preset-icons@66.4.1':
+ dependencies:
+ '@iconify/utils': 2.3.0
+ '@unocss/core': 66.4.1
+ ofetch: 1.4.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@unocss/preset-mini@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ '@unocss/extractor-arbitrary-variants': 66.4.1
+ '@unocss/rule-utils': 66.4.1
+
+ '@unocss/preset-tagify@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+
+ '@unocss/preset-typography@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ '@unocss/preset-mini': 66.4.1
+ '@unocss/rule-utils': 66.4.1
+
+ '@unocss/preset-uno@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ '@unocss/preset-wind3': 66.4.1
+
+ '@unocss/preset-web-fonts@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ ofetch: 1.4.1
+
+ '@unocss/preset-wind3@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ '@unocss/preset-mini': 66.4.1
+ '@unocss/rule-utils': 66.4.1
+
+ '@unocss/preset-wind4@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ '@unocss/extractor-arbitrary-variants': 66.4.1
+ '@unocss/rule-utils': 66.4.1
+
+ '@unocss/preset-wind@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ '@unocss/preset-wind3': 66.4.1
+
+ '@unocss/reset@66.4.1': {}
+
+ '@unocss/rule-utils@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ magic-string: 0.30.17
+
+ '@unocss/transformer-attributify-jsx@66.4.1':
+ dependencies:
+ '@babel/parser': 7.28.0
+ '@babel/traverse': 7.28.0
+ '@unocss/core': 66.4.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@unocss/transformer-compile-class@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+
+ '@unocss/transformer-directives@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+ '@unocss/rule-utils': 66.4.1
+ css-tree: 3.1.0
+
+ '@unocss/transformer-variant-group@66.4.1':
+ dependencies:
+ '@unocss/core': 66.4.1
+
+ '@unocss/vite@66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))':
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@unocss/config': 66.4.1
+ '@unocss/core': 66.4.1
+ '@unocss/inspector': 66.4.1
+ chokidar: 3.6.0
+ magic-string: 0.30.17
+ pathe: 2.0.3
+ tinyglobby: 0.2.14
+ unplugin-utils: 0.2.4
+ vite: 7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0)
+
'@unrs/resolver-binding-android-arm-eabi@1.9.0':
optional: true
@@ -5991,18 +6355,10 @@ snapshots:
'@babel/helper-module-imports': 7.27.1
'@babel/helper-plugin-utils': 7.26.5
'@babel/parser': 7.27.2
- '@vue/compiler-sfc': 3.5.17
+ '@vue/compiler-sfc': 3.5.18
transitivePeerDependencies:
- supports-color
- '@vue/compiler-core@3.5.17':
- dependencies:
- '@babel/parser': 7.28.0
- '@vue/shared': 3.5.17
- entities: 4.5.0
- estree-walker: 2.0.2
- source-map-js: 1.2.1
-
'@vue/compiler-core@3.5.18':
dependencies:
'@babel/parser': 7.28.0
@@ -6011,28 +6367,11 @@ snapshots:
estree-walker: 2.0.2
source-map-js: 1.2.1
- '@vue/compiler-dom@3.5.17':
- dependencies:
- '@vue/compiler-core': 3.5.17
- '@vue/shared': 3.5.17
-
'@vue/compiler-dom@3.5.18':
dependencies:
'@vue/compiler-core': 3.5.18
'@vue/shared': 3.5.18
- '@vue/compiler-sfc@3.5.17':
- dependencies:
- '@babel/parser': 7.27.7
- '@vue/compiler-core': 3.5.17
- '@vue/compiler-dom': 3.5.17
- '@vue/compiler-ssr': 3.5.17
- '@vue/shared': 3.5.17
- estree-walker: 2.0.2
- magic-string: 0.30.17
- postcss: 8.5.6
- source-map-js: 1.2.1
-
'@vue/compiler-sfc@3.5.18':
dependencies:
'@babel/parser': 7.28.0
@@ -6045,11 +6384,6 @@ snapshots:
postcss: 8.5.6
source-map-js: 1.2.1
- '@vue/compiler-ssr@3.5.17':
- dependencies:
- '@vue/compiler-dom': 3.5.17
- '@vue/shared': 3.5.17
-
'@vue/compiler-ssr@3.5.18':
dependencies:
'@vue/compiler-dom': 3.5.18
@@ -6099,8 +6433,6 @@ snapshots:
'@vue/shared@3.5.13': {}
- '@vue/shared@3.5.17': {}
-
'@vue/shared@3.5.18': {}
accepts@2.0.0:
@@ -6382,6 +6714,12 @@ snapshots:
concat-map@0.0.1: {}
+ confbox@0.1.8: {}
+
+ confbox@0.2.2: {}
+
+ consola@3.4.2: {}
+
constantinople@4.0.1:
dependencies:
'@babel/parser': 7.28.0
@@ -6455,6 +6793,11 @@ snapshots:
css-color-names@1.0.1: {}
+ css-tree@3.1.0:
+ dependencies:
+ mdn-data: 2.12.2
+ source-map-js: 1.2.1
+
cssesc@3.0.0: {}
csstype@3.1.3: {}
@@ -6481,6 +6824,8 @@ snapshots:
depd@2.0.0: {}
+ destr@2.0.5: {}
+
detect-libc@1.0.3:
optional: true
@@ -6508,6 +6853,8 @@ snapshots:
es-errors: 1.3.0
gopd: 1.2.0
+ duplexer@0.1.2: {}
+
eastasianwidth@0.2.0: {}
ee-first@1.1.1: {}
@@ -6812,6 +7159,8 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ exsolve@1.0.7: {}
+
fast-deep-equal@3.1.3: {}
fast-glob@3.3.2:
@@ -6965,6 +7314,8 @@ snapshots:
globals@15.12.0: {}
+ globals@15.15.0: {}
+
globrex@0.1.2: {}
gopd@1.0.1:
@@ -6977,6 +7328,10 @@ snapshots:
graphemer@1.4.0: {}
+ gzip-size@6.0.0:
+ dependencies:
+ duplexer: 0.1.2
+
handlebars@4.7.8:
dependencies:
minimist: 1.2.8
@@ -7164,6 +7519,8 @@ snapshots:
kleur@3.0.3: {}
+ kolorist@1.8.0: {}
+
less@4.4.0:
dependencies:
copy-anything: 2.0.6
@@ -7256,6 +7613,12 @@ snapshots:
rfdc: 1.4.1
wrap-ansi: 9.0.0
+ local-pkg@1.1.1:
+ dependencies:
+ mlly: 1.7.4
+ pkg-types: 2.2.0
+ quansync: 0.2.10
+
locate-path@6.0.0:
dependencies:
p-locate: 5.0.0
@@ -7298,6 +7661,8 @@ snapshots:
math-intrinsics@1.1.0: {}
+ mdn-data@2.12.2: {}
+
media-typer@1.1.0: {}
meow@13.2.0: {}
@@ -7350,8 +7715,17 @@ snapshots:
mkdirp@3.0.1: {}
+ mlly@1.7.4:
+ dependencies:
+ acorn: 8.15.0
+ pathe: 2.0.3
+ pkg-types: 1.3.1
+ ufo: 1.6.1
+
mri@1.2.0: {}
+ mrmime@2.0.1: {}
+
ms@2.0.0: {}
ms@2.1.3: {}
@@ -7387,6 +7761,8 @@ snapshots:
node-addon-api@7.1.1:
optional: true
+ node-fetch-native@1.6.7: {}
+
node-releases@2.0.19: {}
normalize-package-data@7.0.0:
@@ -7414,6 +7790,12 @@ snapshots:
object-inspect@1.13.4: {}
+ ofetch@1.4.1:
+ dependencies:
+ destr: 2.0.5
+ node-fetch-native: 1.6.7
+ ufo: 1.6.1
+
on-finished@2.4.1:
dependencies:
ee-first: 1.1.1
@@ -7508,6 +7890,18 @@ snapshots:
pirates@4.0.7: {}
+ pkg-types@1.3.1:
+ dependencies:
+ confbox: 0.1.8
+ mlly: 1.7.4
+ pathe: 2.0.3
+
+ pkg-types@2.2.0:
+ dependencies:
+ confbox: 0.2.2
+ exsolve: 1.0.7
+ pathe: 2.0.3
+
playwright-chromium@1.54.1:
dependencies:
playwright-core: 1.54.1
@@ -7941,6 +8335,12 @@ snapshots:
simple-git-hooks@2.13.0: {}
+ sirv@3.0.1:
+ dependencies:
+ '@polka/url': 1.0.0-next.29
+ mrmime: 2.0.1
+ totalist: 3.0.1
+
sisteransi@1.0.5: {}
slash@5.1.0: {}
@@ -8130,6 +8530,8 @@ snapshots:
token-stream@1.0.0: {}
+ totalist@3.0.1: {}
+
ts-api-utils@2.1.0(typescript@5.8.3):
dependencies:
typescript: 5.8.3
@@ -8215,6 +8617,8 @@ snapshots:
typescript@5.8.3: {}
+ ufo@1.6.1: {}
+
uglify-js@3.19.3:
optional: true
@@ -8242,8 +8646,39 @@ snapshots:
universalify@2.0.1: {}
+ unocss@66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0)):
+ dependencies:
+ '@unocss/astro': 66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
+ '@unocss/cli': 66.4.1
+ '@unocss/core': 66.4.1
+ '@unocss/postcss': 66.4.1
+ '@unocss/preset-attributify': 66.4.1
+ '@unocss/preset-icons': 66.4.1
+ '@unocss/preset-mini': 66.4.1
+ '@unocss/preset-tagify': 66.4.1
+ '@unocss/preset-typography': 66.4.1
+ '@unocss/preset-uno': 66.4.1
+ '@unocss/preset-web-fonts': 66.4.1
+ '@unocss/preset-wind': 66.4.1
+ '@unocss/preset-wind3': 66.4.1
+ '@unocss/preset-wind4': 66.4.1
+ '@unocss/transformer-attributify-jsx': 66.4.1
+ '@unocss/transformer-compile-class': 66.4.1
+ '@unocss/transformer-directives': 66.4.1
+ '@unocss/transformer-variant-group': 66.4.1
+ '@unocss/vite': 66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
+ optionalDependencies:
+ vite: 7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0)
+ transitivePeerDependencies:
+ - supports-color
+
unpipe@1.0.0: {}
+ unplugin-utils@0.2.4:
+ dependencies:
+ pathe: 2.0.3
+ picomatch: 4.0.3
+
unrs-resolver@1.9.0:
dependencies:
napi-postinstall: 0.2.3
@@ -8403,6 +8838,8 @@ snapshots:
void-elements@3.1.0: {}
+ vue-flow-layout@0.2.0: {}
+
vue-router@4.5.1(vue@3.5.18(typescript@5.8.3)):
dependencies:
'@vue/devtools-api': 6.6.4
From 88979383d2c40db1a5b9935ae5a2cb25193fdbde Mon Sep 17 00:00:00 2001
From: Jungzl <13jungzl@gmail.com>
Date: Mon, 11 Aug 2025 10:08:13 +0800
Subject: [PATCH 2/3] chore(deps): update unocss
---
.../__tests__/unocss.spec.ts | 3 +-
playground/unocss-vue-scoped/package.json | 2 +-
playground/unocss-vue-scoped/uno.config.ts | 1 +
playground/unocss-vue-scoped/vite.config.ts | 8 +-
pnpm-lock.yaml | 306 +++++++++---------
5 files changed, 164 insertions(+), 156 deletions(-)
diff --git a/playground/unocss-vue-scoped/__tests__/unocss.spec.ts b/playground/unocss-vue-scoped/__tests__/unocss.spec.ts
index 2127fc94..dba022de 100644
--- a/playground/unocss-vue-scoped/__tests__/unocss.spec.ts
+++ b/playground/unocss-vue-scoped/__tests__/unocss.spec.ts
@@ -22,5 +22,6 @@ test.runIf(isServe)('regenerate CSS and HMR', async () => {
],
false,
)
- await expect.poll(() => getBgColor(el)).toMatch('rgb(254, 202, 202)')
+ const newEl = await page.$('.uno')
+ await expect.poll(() => getBgColor(newEl)).toMatch('rgb(254, 202, 202)')
})
diff --git a/playground/unocss-vue-scoped/package.json b/playground/unocss-vue-scoped/package.json
index 6e07e14a..be52ee49 100644
--- a/playground/unocss-vue-scoped/package.json
+++ b/playground/unocss-vue-scoped/package.json
@@ -10,7 +10,7 @@
"preview": "vite preview"
},
"dependencies": {
- "unocss": "^66.4.1",
+ "unocss": "^66.4.2",
"vue": "catalog:"
},
"devDependencies": {
diff --git a/playground/unocss-vue-scoped/uno.config.ts b/playground/unocss-vue-scoped/uno.config.ts
index 68ca5780..e7a4c6a2 100644
--- a/playground/unocss-vue-scoped/uno.config.ts
+++ b/playground/unocss-vue-scoped/uno.config.ts
@@ -2,4 +2,5 @@ import { defineConfig, presetWind3 } from 'unocss'
export default defineConfig({
presets: [presetWind3()],
+ // outputToCssLayers: true,
})
diff --git a/playground/unocss-vue-scoped/vite.config.ts b/playground/unocss-vue-scoped/vite.config.ts
index 2803af9b..aa155c9a 100644
--- a/playground/unocss-vue-scoped/vite.config.ts
+++ b/playground/unocss-vue-scoped/vite.config.ts
@@ -3,7 +3,13 @@ import vue from '@vitejs/plugin-vue'
import UnoCSS from 'unocss/vite'
export default defineConfig({
- plugins: [vue(), UnoCSS({ mode: 'vue-scoped' })],
+ plugins: [
+ vue(),
+ UnoCSS({
+ mode: 'vue-scoped',
+ inspector: false,
+ }),
+ ],
build: {
// to make tests faster
minify: false,
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 1e5a2e7f..c427a793 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -258,8 +258,8 @@ importers:
playground/unocss-vue-scoped:
dependencies:
unocss:
- specifier: ^66.4.1
- version: 66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
+ specifier: ^66.4.2
+ version: 66.4.2(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
vue:
specifier: 'catalog:'
version: 3.5.18(typescript@5.8.3)
@@ -400,8 +400,8 @@ packages:
'@antfu/install-pkg@1.1.0':
resolution: {integrity: sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==}
- '@antfu/utils@8.1.1':
- resolution: {integrity: sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ==}
+ '@antfu/utils@9.2.0':
+ resolution: {integrity: sha512-Oq1d9BGZakE/FyoEtcNeSwM7MpDO2vUBi11RWBZXf75zPsbUVWmUs03EqkRFrcgbXyKTas0BdZWC1wcuSoqSAw==}
'@babel/code-frame@7.27.1':
resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
@@ -1216,8 +1216,8 @@ packages:
'@iconify/types@2.0.0':
resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
- '@iconify/utils@2.3.0':
- resolution: {integrity: sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==}
+ '@iconify/utils@3.0.0':
+ resolution: {integrity: sha512-Bjf0HTRAB59thKK9QFvyLEXE9S793IqxqJEhNQEboh+IjOXj0nDtOIFh63oz+Y6X/ye4UWpxne5sVQ2W250iSA==}
'@isaacs/cliui@8.0.2':
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
@@ -1769,87 +1769,87 @@ packages:
resolution: {integrity: sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@unocss/astro@66.4.1':
- resolution: {integrity: sha512-UPfpg1FGf8lMugnMYuFxpVqNvO9cIVdi7e3yXpBnzf0uQ4Pib7KvOTPB4VOAVoqDK2A0kPxCzeR9MxCk4c+wxw==}
+ '@unocss/astro@66.4.2':
+ resolution: {integrity: sha512-En3AKHwkiPxtZT95vkVrNiRYrB+DFVCikew6/dMMCWDWVKK0+5tEVUTzR1ak3+YnzAXl0NpWj8D4zHb0PxOs/A==}
peerDependencies:
vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0
peerDependenciesMeta:
vite:
optional: true
- '@unocss/cli@66.4.1':
- resolution: {integrity: sha512-rf6udln8CY70tRP2BU1zorJZjzhDVIO3JzmxvH+q4W7MZBQ2ZRfZkWKUFa6ZiyjIj8lxEWlmT6zvu3aSJXbHTg==}
+ '@unocss/cli@66.4.2':
+ resolution: {integrity: sha512-WsXzrB0SHbSt2nOHtD5QM91VN8j38+wObqyGcoIhtBSugqzsc+t7AdPkxV/ZaYgtPAz87bR0WFEVKcbiBRnmJw==}
engines: {node: '>=14'}
hasBin: true
- '@unocss/config@66.4.1':
- resolution: {integrity: sha512-ABiYEN9febHAfvpxzjrqdCrkomcDpcjCL1OPrWXLHOecfi2qZkj5sTASAfGUvqrV2WtZTPDQii6Nz1OisitRQQ==}
+ '@unocss/config@66.4.2':
+ resolution: {integrity: sha512-plji1gNGSzlWjuV2Uh0q6Dt5ZlNkOKCHpgxekW9J458WghGAMBeXgB9uNpWg6flilqP1g0GJQv+XvJcSkYRGpQ==}
engines: {node: '>=14'}
- '@unocss/core@66.4.1':
- resolution: {integrity: sha512-2QMthvEmH0215zqIIL5WCodQ9lYShYDzziF4N1MMdcoRvCumGq9MMBFPxC54gNDrO3+/Olhp++YYmXkdZ89qrA==}
+ '@unocss/core@66.4.2':
+ resolution: {integrity: sha512-cYgMQrLhB9nRekv5c+yPDDa+5dzlMkA2UMQRil0s5D9Lb5n7NsCMcr6+nfxkcSYVLy92SbwDV45c6T7vIxFTOA==}
- '@unocss/extractor-arbitrary-variants@66.4.1':
- resolution: {integrity: sha512-1iG2egoarrpht56AMoccUMc5iEMPLOQY0iwPumGtwTFqFAYntAQLHbFL//BCOD7DRrHMvGLVNt+uKEGXYIvW6w==}
+ '@unocss/extractor-arbitrary-variants@66.4.2':
+ resolution: {integrity: sha512-T/eSeodfAp7HaWnQGqVLOsW4PbKUAvuybNRyvFWThMneM2qo+dOo3kFnA5my9ULAmRSFsAlyB1DnupD3qv5Klg==}
- '@unocss/inspector@66.4.1':
- resolution: {integrity: sha512-QS2zOaJaddDFQ7g3BRlFnxqyPYEa5XtE6cwo58hgeZwFDak8IAyPBYpFbINfCQzXhguqGO4MyMRX6NXzgKQ1Cw==}
+ '@unocss/inspector@66.4.2':
+ resolution: {integrity: sha512-ugcJK8r2ypM4eIdgetVn8RhfKrbA3AF3OQ/RohK5PPk2UPDAScqabzYpfdNW4eYQsBOZOgoiqWtnfc8weqo8LQ==}
- '@unocss/postcss@66.4.1':
- resolution: {integrity: sha512-UcpMqOJ+ADn9uGetWgmIV+Ctu6Y/W828bJKGRPn6u+c+kporLWfkV5nwSqo1C3o1ADkChwpzs0Ikpz3emxM7yQ==}
+ '@unocss/postcss@66.4.2':
+ resolution: {integrity: sha512-tu4lnh6K27pIAuaQHlFlhXin8korwC0r1kQl00YMmF3THiX7orXkTP6xWGcQwnkbx4uQz1dw+tBimYxeaAMrhA==}
engines: {node: '>=14'}
- '@unocss/preset-attributify@66.4.1':
- resolution: {integrity: sha512-HTJd/4bEie6EsCwqq9hK+GJwoFp0rx6k3GTz9jHXMwhGpUGYPrrccw8cazYmJq7lMHnPbh/spxHH24eTISwojg==}
+ '@unocss/preset-attributify@66.4.2':
+ resolution: {integrity: sha512-DwFJJkkawmHpjo3pGQE8FyoPsvhbxh+QMvvaAdYpo+iZ5HRkeDml9SOj7u6SGTcmbNyI+QR61s0KM8fxx6HcVQ==}
- '@unocss/preset-icons@66.4.1':
- resolution: {integrity: sha512-2XONpwvWcedBRmGangrTcHKGcXN46tZicZIVBa9QCDZ+VsAzOdHzvHWl4QinoYnBhCs6yE+sxZ0sETfFwjOsEg==}
+ '@unocss/preset-icons@66.4.2':
+ resolution: {integrity: sha512-qJx9gmesrvrmoTe9Mqoidihad8hm2MSD4QAezhfDSAyllioJOgyT0Bev/IEWAbehe9jtqYIh8v1oCerBPbGn6Q==}
- '@unocss/preset-mini@66.4.1':
- resolution: {integrity: sha512-3yzpUty02AGgZRBlcRhgpEEsG+GJYvweh1TqWql0bAiW3GJWx0oNuvy2jEQjgllvRYRAErIW4/doOljGNQwwjw==}
+ '@unocss/preset-mini@66.4.2':
+ resolution: {integrity: sha512-Ry+5hM+XLmT8HrEb182mUfcZuyrZ8xR+TBe72DBcliJ1DhOV3K67TCxwQucfb0zHbGV71HNWdPmHsLKxPDgweQ==}
- '@unocss/preset-tagify@66.4.1':
- resolution: {integrity: sha512-PGlC8NwojPc1mj5cvYq5JmBaK7wigcElAItGS+uVQW6goC5kyeiiB0vNw1iyfG542yzXJpPkb3d6B4wZpjl21w==}
+ '@unocss/preset-tagify@66.4.2':
+ resolution: {integrity: sha512-dECS09LqWJY4sYpgPUH2OAUftWU/tiZPR2XDRoTngeGU37GxSN+1sWtSmB7vwDm3C7opsdVUN20he8F1LUNubw==}
- '@unocss/preset-typography@66.4.1':
- resolution: {integrity: sha512-V7al6aFsmLcj/eyXuvyf2RIlmTpnUJvWnG4A/LZd8UNsLCndFecE0sTR9VYG1JgNj9aywtJT2w6MSSFnN7Jf5g==}
+ '@unocss/preset-typography@66.4.2':
+ resolution: {integrity: sha512-ZOKRuR5+V0r30QTVq04/6ZoIw75me3V25v2dU2YWJXIzwpMKmQ9TUN/M1yeiEUFfXjOaruWX6Ad6CvAw2MlCew==}
- '@unocss/preset-uno@66.4.1':
- resolution: {integrity: sha512-iRx0GSSCQFL0rjQs9/rNM+igoBup44kCe+yHcB86/nUaRodQbWU2287xoXZcnzcg7/MTjtEtQWu220EY940pmg==}
+ '@unocss/preset-uno@66.4.2':
+ resolution: {integrity: sha512-1MFtPivGcpqRQFWdjtP40Enop1y3XDb3tlZXoMQUX0IGLG8HJOT+lfQx/Xl9t73ShJ8aAJ/l6qTxC43ZGNACzA==}
- '@unocss/preset-web-fonts@66.4.1':
- resolution: {integrity: sha512-+wVO+kZTZVREDXtD4/0sJQIBfid+bim40AF4mYp5wA85aeWCCZIqvXzPeF4BWvGFqqrQDHEO1TcUbnOoP8V8UQ==}
+ '@unocss/preset-web-fonts@66.4.2':
+ resolution: {integrity: sha512-4FYmleeRoM8r2DqGl6dfIjnX57tepcfZCvVfeCqYnk7475Yddmv1OYkoMjkWMnkK9MzdSxsFwHMU6CIUTmFTzQ==}
- '@unocss/preset-wind3@66.4.1':
- resolution: {integrity: sha512-GB2evqTAYw3Z9MImIl3JN5T1of8BO40X9zXnpsVQ4w/v/TOUdVzhfsc4XTVOr8/VVO6Z7VNczgpsd6lZhbrcyg==}
+ '@unocss/preset-wind3@66.4.2':
+ resolution: {integrity: sha512-0Aye/PaT08M/cQhPnGKn93iEVoRJbym0/1eomMvXoL+8oc7DVry35ws06r5CLu5h1sXI6UmS6sejoePFlSkLJQ==}
- '@unocss/preset-wind4@66.4.1':
- resolution: {integrity: sha512-mDomSDXAWqnKTbmgEws9WxUxfvGoEzhy/NmpmHRX7R7wm1LAD7FGUl7pF11N51Wf6Z5in8iTzqSFcs0YfUfYng==}
+ '@unocss/preset-wind4@66.4.2':
+ resolution: {integrity: sha512-F4RZsDqIpnSevD9hY353+Tw5gxpJuHA5HwdKjLnC/TnT9VKKVmV7qUEZ6M0jEuAk1kz2x3/ngnQ9Ftw+C2L84A==}
- '@unocss/preset-wind@66.4.1':
- resolution: {integrity: sha512-r/dUy+0G20/UO6bcZFnNXoRu/6KdRzVdfbeH5TjgO8riI7U44ckLQjDhCMUgUgYldIHewazyiDfMWBcYs5QF5w==}
+ '@unocss/preset-wind@66.4.2':
+ resolution: {integrity: sha512-z/rFYFINNqmBtl3Dh+7UCKpPnPkxM7IIUGszMnvdntky9uhLauJ11dt/Puir73sM2cAfywfgvnHyZ00m0pg7rA==}
- '@unocss/reset@66.4.1':
- resolution: {integrity: sha512-f0t2YIRF7uVUwEB0aDR6yPMqBO+QgGdgACWQmCrZ84Kir9HV+5d50tK5tXDflHmFTu9mqS9MUG4Ba3sPp44vZw==}
+ '@unocss/reset@66.4.2':
+ resolution: {integrity: sha512-s3Kq4Q6a/d3/jYe6HTCfXUx7zYAYufetId5n66DZHzQxpeu6CoBS83+b37STTKsw27SOgV28cPJlJtZ6/D6Bhw==}
- '@unocss/rule-utils@66.4.1':
- resolution: {integrity: sha512-iYbx4ab3aTMrcJSyBoGvwsbUM5BmRQef4rzGOjL312r/0RDZM+i2ikPxcFXpp/9P+Gp22gSXDMlzwY+VfJ2Llw==}
+ '@unocss/rule-utils@66.4.2':
+ resolution: {integrity: sha512-7z3IuajwXhy2cx3E0IGOFXIiuKC79/jzm4Tt56TC68nXLh/etlH0fKhxVwkZ/HbcQRpVwWyDRNcbh29pmA3DwQ==}
engines: {node: '>=14'}
- '@unocss/transformer-attributify-jsx@66.4.1':
- resolution: {integrity: sha512-5aICECaco87n1p/8/vzvtgIly3lu1htd/n2SdfA1t6gtUO7PMX2CEZGSw4VxnMTrjNZRXUqxD7MACJIEg/kzRw==}
+ '@unocss/transformer-attributify-jsx@66.4.2':
+ resolution: {integrity: sha512-de6LzoyW1tkdOftlCrj6z8wEb4j6l1sqmOU1nYKkYHw7luLFGxRUELC7iujlI9KmylbM02bcKfLETAfJy/je2w==}
- '@unocss/transformer-compile-class@66.4.1':
- resolution: {integrity: sha512-xf6W+zLbFwOvlNNxV0S73ggevlmiBhqtWBI4xdd463IdiJJ1VU/hTmXJ0r39hVHwVEPYGtechUODGtky47M59Q==}
+ '@unocss/transformer-compile-class@66.4.2':
+ resolution: {integrity: sha512-+oiIrV8c3T7qiJdICr6YsEWik5sjbWirXF0mlpcBvZu2HyV559hvHjzuWKr/fl7xYYZKDL9FvddbqWo3DOXh3Q==}
- '@unocss/transformer-directives@66.4.1':
- resolution: {integrity: sha512-3PiYgq0/TYeCLoUm6K+XbsHcd03l3TN2U2fSeda4PIZoZ/ioH0kJd0tVg98DzO8ekgqtUwKFZjgBa0ezQJwfPQ==}
+ '@unocss/transformer-directives@66.4.2':
+ resolution: {integrity: sha512-7m/dTrCUkBkZeSRKPxPEo65Rav239orQSLq6sztwZhoA4x/6H8r58xCkAK0qC9VEalyerpCpyarU3sKN4+ehNg==}
- '@unocss/transformer-variant-group@66.4.1':
- resolution: {integrity: sha512-stFDCkPeZYBRpKmmF8dOBgAZEh8ydzSrBnc4Uiakgn0LXrhAKNgxR/kC8urgMhu+HcyNsWlLEEIeQyPj72IAHA==}
+ '@unocss/transformer-variant-group@66.4.2':
+ resolution: {integrity: sha512-SbPDbZUrhQyL4CpvnpvUfrr1DFq8AKf8ofPGbMJDm5S2TInQ34vFaIrhNroGR0szntMZRH5Zlkq6LtVUKDRs5g==}
- '@unocss/vite@66.4.1':
- resolution: {integrity: sha512-oXXh9FKaxHUbd9GaiVg+CKtVDoWubQNKtHOLExXU3GgZ/jHATPawR2LXoOtPl/9qq6lT6Dl+o4el2AauUQqo7g==}
+ '@unocss/vite@66.4.2':
+ resolution: {integrity: sha512-7eON9iPF3qWzuI+M6u0kq7K3y9nEbimZlLj01nGoqrgSGxEsyJpP01QQQsmT7FPRiZzRMJv7BiKMEyDQSuRRCA==}
peerDependencies:
vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0
@@ -4309,11 +4309,11 @@ packages:
resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
engines: {node: '>= 10.0.0'}
- unocss@66.4.1:
- resolution: {integrity: sha512-9nZRafw74usdYIHnfBzCtYlPZUjmLOZZ4fxcohMaQtQon+A9P5KiJoaX+9Z2PxVqnArB3drQ1KiRxFPMHJN3+A==}
+ unocss@66.4.2:
+ resolution: {integrity: sha512-PsZ+4XF/ekiParR7PZEM7AchvHJ78EIfOXlqTPflTOXCYgZ77kG9NaIaIf4lHRevY+rRTyrHrjxdg1Ern2j8qw==}
engines: {node: '>=14'}
peerDependencies:
- '@unocss/webpack': 66.4.1
+ '@unocss/webpack': 66.4.2
vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0
peerDependenciesMeta:
'@unocss/webpack':
@@ -4325,8 +4325,8 @@ packages:
resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
engines: {node: '>= 0.8'}
- unplugin-utils@0.2.4:
- resolution: {integrity: sha512-8U/MtpkPkkk3Atewj1+RcKIjb5WBimZ/WSLhhR3w6SsIj8XJuKTacSP8g+2JhfSGw0Cb125Y+2zA/IzJZDVbhA==}
+ unplugin-utils@0.2.5:
+ resolution: {integrity: sha512-gwXJnPRewT4rT7sBi/IvxKTjsms7jX7QIDLOClApuZwR49SXbrB1z2NLUZ+vDHyqCj/n58OzRRqaW+B8OZi8vg==}
engines: {node: '>=18.12.0'}
unrs-resolver@1.9.0:
@@ -4540,7 +4540,7 @@ snapshots:
package-manager-detector: 1.3.0
tinyexec: 1.0.1
- '@antfu/utils@8.1.1': {}
+ '@antfu/utils@9.2.0': {}
'@babel/code-frame@7.27.1':
dependencies:
@@ -5485,10 +5485,10 @@ snapshots:
'@iconify/types@2.0.0': {}
- '@iconify/utils@2.3.0':
+ '@iconify/utils@3.0.0':
dependencies:
'@antfu/install-pkg': 1.1.0
- '@antfu/utils': 8.1.1
+ '@antfu/utils': 9.2.0
'@iconify/types': 2.0.0
debug: 4.4.1
globals: 15.15.0
@@ -5989,20 +5989,20 @@ snapshots:
'@typescript-eslint/types': 8.38.0
eslint-visitor-keys: 4.2.1
- '@unocss/astro@66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))':
+ '@unocss/astro@66.4.2(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))':
dependencies:
- '@unocss/core': 66.4.1
- '@unocss/reset': 66.4.1
- '@unocss/vite': 66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
+ '@unocss/core': 66.4.2
+ '@unocss/reset': 66.4.2
+ '@unocss/vite': 66.4.2(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
optionalDependencies:
vite: 7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0)
- '@unocss/cli@66.4.1':
+ '@unocss/cli@66.4.2':
dependencies:
'@ampproject/remapping': 2.3.0
- '@unocss/config': 66.4.1
- '@unocss/core': 66.4.1
- '@unocss/preset-uno': 66.4.1
+ '@unocss/config': 66.4.2
+ '@unocss/core': 66.4.2
+ '@unocss/preset-uno': 66.4.2
cac: 6.7.14
chokidar: 3.6.0
colorette: 2.0.20
@@ -6011,132 +6011,132 @@ snapshots:
pathe: 2.0.3
perfect-debounce: 1.0.0
tinyglobby: 0.2.14
- unplugin-utils: 0.2.4
+ unplugin-utils: 0.2.5
- '@unocss/config@66.4.1':
+ '@unocss/config@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
+ '@unocss/core': 66.4.2
unconfig: 7.3.2
- '@unocss/core@66.4.1': {}
+ '@unocss/core@66.4.2': {}
- '@unocss/extractor-arbitrary-variants@66.4.1':
+ '@unocss/extractor-arbitrary-variants@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
+ '@unocss/core': 66.4.2
- '@unocss/inspector@66.4.1':
+ '@unocss/inspector@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
- '@unocss/rule-utils': 66.4.1
+ '@unocss/core': 66.4.2
+ '@unocss/rule-utils': 66.4.2
colorette: 2.0.20
gzip-size: 6.0.0
sirv: 3.0.1
vue-flow-layout: 0.2.0
- '@unocss/postcss@66.4.1':
+ '@unocss/postcss@66.4.2':
dependencies:
- '@unocss/config': 66.4.1
- '@unocss/core': 66.4.1
- '@unocss/rule-utils': 66.4.1
+ '@unocss/config': 66.4.2
+ '@unocss/core': 66.4.2
+ '@unocss/rule-utils': 66.4.2
css-tree: 3.1.0
postcss: 8.5.6
tinyglobby: 0.2.14
- '@unocss/preset-attributify@66.4.1':
+ '@unocss/preset-attributify@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
+ '@unocss/core': 66.4.2
- '@unocss/preset-icons@66.4.1':
+ '@unocss/preset-icons@66.4.2':
dependencies:
- '@iconify/utils': 2.3.0
- '@unocss/core': 66.4.1
+ '@iconify/utils': 3.0.0
+ '@unocss/core': 66.4.2
ofetch: 1.4.1
transitivePeerDependencies:
- supports-color
- '@unocss/preset-mini@66.4.1':
+ '@unocss/preset-mini@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
- '@unocss/extractor-arbitrary-variants': 66.4.1
- '@unocss/rule-utils': 66.4.1
+ '@unocss/core': 66.4.2
+ '@unocss/extractor-arbitrary-variants': 66.4.2
+ '@unocss/rule-utils': 66.4.2
- '@unocss/preset-tagify@66.4.1':
+ '@unocss/preset-tagify@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
+ '@unocss/core': 66.4.2
- '@unocss/preset-typography@66.4.1':
+ '@unocss/preset-typography@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
- '@unocss/preset-mini': 66.4.1
- '@unocss/rule-utils': 66.4.1
+ '@unocss/core': 66.4.2
+ '@unocss/preset-mini': 66.4.2
+ '@unocss/rule-utils': 66.4.2
- '@unocss/preset-uno@66.4.1':
+ '@unocss/preset-uno@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
- '@unocss/preset-wind3': 66.4.1
+ '@unocss/core': 66.4.2
+ '@unocss/preset-wind3': 66.4.2
- '@unocss/preset-web-fonts@66.4.1':
+ '@unocss/preset-web-fonts@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
+ '@unocss/core': 66.4.2
ofetch: 1.4.1
- '@unocss/preset-wind3@66.4.1':
+ '@unocss/preset-wind3@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
- '@unocss/preset-mini': 66.4.1
- '@unocss/rule-utils': 66.4.1
+ '@unocss/core': 66.4.2
+ '@unocss/preset-mini': 66.4.2
+ '@unocss/rule-utils': 66.4.2
- '@unocss/preset-wind4@66.4.1':
+ '@unocss/preset-wind4@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
- '@unocss/extractor-arbitrary-variants': 66.4.1
- '@unocss/rule-utils': 66.4.1
+ '@unocss/core': 66.4.2
+ '@unocss/extractor-arbitrary-variants': 66.4.2
+ '@unocss/rule-utils': 66.4.2
- '@unocss/preset-wind@66.4.1':
+ '@unocss/preset-wind@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
- '@unocss/preset-wind3': 66.4.1
+ '@unocss/core': 66.4.2
+ '@unocss/preset-wind3': 66.4.2
- '@unocss/reset@66.4.1': {}
+ '@unocss/reset@66.4.2': {}
- '@unocss/rule-utils@66.4.1':
+ '@unocss/rule-utils@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
+ '@unocss/core': 66.4.2
magic-string: 0.30.17
- '@unocss/transformer-attributify-jsx@66.4.1':
+ '@unocss/transformer-attributify-jsx@66.4.2':
dependencies:
'@babel/parser': 7.28.0
'@babel/traverse': 7.28.0
- '@unocss/core': 66.4.1
+ '@unocss/core': 66.4.2
transitivePeerDependencies:
- supports-color
- '@unocss/transformer-compile-class@66.4.1':
+ '@unocss/transformer-compile-class@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
+ '@unocss/core': 66.4.2
- '@unocss/transformer-directives@66.4.1':
+ '@unocss/transformer-directives@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
- '@unocss/rule-utils': 66.4.1
+ '@unocss/core': 66.4.2
+ '@unocss/rule-utils': 66.4.2
css-tree: 3.1.0
- '@unocss/transformer-variant-group@66.4.1':
+ '@unocss/transformer-variant-group@66.4.2':
dependencies:
- '@unocss/core': 66.4.1
+ '@unocss/core': 66.4.2
- '@unocss/vite@66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))':
+ '@unocss/vite@66.4.2(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))':
dependencies:
'@ampproject/remapping': 2.3.0
- '@unocss/config': 66.4.1
- '@unocss/core': 66.4.1
- '@unocss/inspector': 66.4.1
+ '@unocss/config': 66.4.2
+ '@unocss/core': 66.4.2
+ '@unocss/inspector': 66.4.2
chokidar: 3.6.0
magic-string: 0.30.17
pathe: 2.0.3
tinyglobby: 0.2.14
- unplugin-utils: 0.2.4
+ unplugin-utils: 0.2.5
vite: 7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0)
'@unrs/resolver-binding-android-arm-eabi@1.9.0':
@@ -8646,27 +8646,27 @@ snapshots:
universalify@2.0.1: {}
- unocss@66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0)):
- dependencies:
- '@unocss/astro': 66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
- '@unocss/cli': 66.4.1
- '@unocss/core': 66.4.1
- '@unocss/postcss': 66.4.1
- '@unocss/preset-attributify': 66.4.1
- '@unocss/preset-icons': 66.4.1
- '@unocss/preset-mini': 66.4.1
- '@unocss/preset-tagify': 66.4.1
- '@unocss/preset-typography': 66.4.1
- '@unocss/preset-uno': 66.4.1
- '@unocss/preset-web-fonts': 66.4.1
- '@unocss/preset-wind': 66.4.1
- '@unocss/preset-wind3': 66.4.1
- '@unocss/preset-wind4': 66.4.1
- '@unocss/transformer-attributify-jsx': 66.4.1
- '@unocss/transformer-compile-class': 66.4.1
- '@unocss/transformer-directives': 66.4.1
- '@unocss/transformer-variant-group': 66.4.1
- '@unocss/vite': 66.4.1(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
+ unocss@66.4.2(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0)):
+ dependencies:
+ '@unocss/astro': 66.4.2(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
+ '@unocss/cli': 66.4.2
+ '@unocss/core': 66.4.2
+ '@unocss/postcss': 66.4.2
+ '@unocss/preset-attributify': 66.4.2
+ '@unocss/preset-icons': 66.4.2
+ '@unocss/preset-mini': 66.4.2
+ '@unocss/preset-tagify': 66.4.2
+ '@unocss/preset-typography': 66.4.2
+ '@unocss/preset-uno': 66.4.2
+ '@unocss/preset-web-fonts': 66.4.2
+ '@unocss/preset-wind': 66.4.2
+ '@unocss/preset-wind3': 66.4.2
+ '@unocss/preset-wind4': 66.4.2
+ '@unocss/transformer-attributify-jsx': 66.4.2
+ '@unocss/transformer-compile-class': 66.4.2
+ '@unocss/transformer-directives': 66.4.2
+ '@unocss/transformer-variant-group': 66.4.2
+ '@unocss/vite': 66.4.2(vite@7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0))
optionalDependencies:
vite: 7.0.6(@types/node@22.16.5)(jiti@2.4.2)(less@4.4.0)(lightningcss@1.30.1)(sass@1.89.2)(stylus@0.64.0)(tsx@4.20.3)(yaml@2.8.0)
transitivePeerDependencies:
@@ -8674,7 +8674,7 @@ snapshots:
unpipe@1.0.0: {}
- unplugin-utils@0.2.4:
+ unplugin-utils@0.2.5:
dependencies:
pathe: 2.0.3
picomatch: 4.0.3
From 65abce4f1721e180c07291fba343af45a578faa5 Mon Sep 17 00:00:00 2001
From: Jungzl <13jungzl@gmail.com>
Date: Mon, 11 Aug 2025 10:10:29 +0800
Subject: [PATCH 3/3] fix: improve handling of transformed content in hot
updates for Vue files
---
packages/plugin-vue/src/handleHotUpdate.ts | 16 +++++++++++++---
1 file changed, 13 insertions(+), 3 deletions(-)
diff --git a/packages/plugin-vue/src/handleHotUpdate.ts b/packages/plugin-vue/src/handleHotUpdate.ts
index 8e133229..e2dec26f 100644
--- a/packages/plugin-vue/src/handleHotUpdate.ts
+++ b/packages/plugin-vue/src/handleHotUpdate.ts
@@ -1,3 +1,4 @@
+import fs from 'node:fs'
import _debug from 'debug'
import type { SFCBlock, SFCDescriptor } from 'vue/compiler-sfc'
import type { HmrContext, ModuleNode } from 'vite'
@@ -160,9 +161,18 @@ export async function handleHotUpdate(
}
if (updateType.length) {
if (file.endsWith('.vue')) {
- // invalidate the descriptor cache so that the next transform will
- // re-analyze the file and pick up the changes.
- invalidateDescriptor(file)
+ // If the descriptor was created from transformed content (e.g., by UnoCSS vue-scoped),
+ // we should update the main cache with the transformed descriptor instead of invalidating it.
+ // This ensures that subsequent style block requests get the correct transformed content.
+ const isTransformedContent = content !== fs.readFileSync(file, 'utf-8')
+ if (isTransformedContent) {
+ // Use the descriptor created from transformed content
+ cache.set(file, descriptor)
+ } else {
+ // invalidate the descriptor cache so that the next transform will
+ // re-analyze the file and pick up the changes.
+ invalidateDescriptor(file)
+ }
} else {
// https://github.com/vuejs/vitepress/issues/3129
// For non-vue files, e.g. .md files in VitePress, invalidating the