From 5a3d557a7e10f10e7a4609e2b001644cb1c2faa7 Mon Sep 17 00:00:00 2001 From: Hiroshi Ogawa Date: Mon, 25 Aug 2025 09:45:00 +0900 Subject: [PATCH 1/7] docs: add RSC support (#20618) Co-authored-by: Claude Co-authored-by: Bjorn Lu --- guide/api-environment-plugins.md | 21 ++++++++++++++++++--- guide/features.md | 1 + plugins/index.md | 10 ++++++++++ 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/guide/api-environment-plugins.md b/guide/api-environment-plugins.md index 0c28643d..8b3abd71 100644 --- a/guide/api-environment-plugins.md +++ b/guide/api-environment-plugins.md @@ -31,11 +31,19 @@ A plugin could use the `environment` instance to change how a module is processe ## Registering New Environments Using Hooks -Plugins can add new environments in the `config` hook (for example to have a separate module graph for [RSC](https://react.dev/blog/2023/03/22/react-labs-what-we-have-been-working-on-march-2023#react-server-components)): +Plugins can add new environments in the `config` hook. For example, [RSC support](/plugins/#vitejs-plugin-rsc) uses an additional environment to have a separate module graph with the `react-server` condition: ```ts config(config: UserConfig) { - config.environments.rsc ??= {} + return { + environments: { + rsc: { + resolve: { + conditions: ['react-server', ...defaultServerConditions], + }, + }, + }, + } } ``` @@ -48,8 +56,15 @@ Plugins should set default values using the `config` hook. To configure each env ```ts configEnvironment(name: string, options: EnvironmentOptions) { + // add "workerd" condition to the rsc environment if (name === 'rsc') { - options.resolve.conditions = // ... + return { + resolve: { + conditions: ['workerd'], + }, + } + } + } ``` ## The `hotUpdate` Hook diff --git a/guide/features.md b/guide/features.md index e696418c..8b87e422 100644 --- a/guide/features.md +++ b/guide/features.md @@ -213,6 +213,7 @@ All modern frameworks maintain integrations with Vite. Most framework plugins ar - Vue JSX support via [@vitejs/plugin-vue-jsx](https://github.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue-jsx) - React support via [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react) - React using SWC support via [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react-swc) +- [React Server Components (RSC)](https://react.dev/reference/rsc/server-components) support via [@vitejs/plugin-rsc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-rsc) Check out the [Plugins Guide](/plugins/) for more information. diff --git a/plugins/index.md b/plugins/index.md index 10e47413..041e91db 100644 --- a/plugins/index.md +++ b/plugins/index.md @@ -24,6 +24,16 @@ Uses esbuild and Babel, achieving fast HMR with a small package footprint and th Replaces Babel with SWC during development. During production builds, SWC+esbuild are used when using plugins, and esbuild only otherwise. For big projects that don't require non-standard React extensions, cold start and Hot Module Replacement (HMR) can be significantly faster. +### [@vitejs/plugin-rsc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-rsc) + +Vite supports [React Server Components (RSC)](https://react.dev/reference/rsc/server-components) through the plugin. It utilizes the [Environment API](/guide/api-environment) to provide low-level primitives that React frameworks can use to integrate RSC features. You can try a minimal standalone RSC application with: + +```bash +npm create vite@latest -- --template rsc +``` + +Read the [plugin documentation](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-rsc) to learn more. + ### [@vitejs/plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy) Provides legacy browsers support for the production build. From a19860902ff3da258bcb8edeb656839555e0c054 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 25 Aug 2025 13:16:57 +0900 Subject: [PATCH 2/7] fix(deps): update all non-major dependencies (#20676) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: sapphi-red <49056869+sapphi-red@users.noreply.github.com> --- package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index a73bfbca..2d4e0cbd 100644 --- a/package.json +++ b/package.json @@ -9,15 +9,15 @@ "docs-serve": "vitepress serve" }, "devDependencies": { - "@shikijs/vitepress-twoslash": "^3.9.2", + "@shikijs/vitepress-twoslash": "^3.11.0", "@types/express": "^5.0.3", "feed": "^5.1.0", "gsap": "^3.13.0", "markdown-it-image-size": "^14.8.0", - "vitepress": "^2.0.0-alpha.11", + "vitepress": "^2.0.0-alpha.12", "vitepress-plugin-group-icons": "^1.6.3", "vitepress-plugin-llms": "^1.7.3", - "vue": "^3.5.18", - "vue-tsc": "^3.0.5" + "vue": "^3.5.19", + "vue-tsc": "^3.0.6" } } From ce2aee0c5a9dce58ded3f4f064cb372896a33963 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 25 Aug 2025 14:21:32 +0900 Subject: [PATCH 3/7] chore(deps): update actions/upload-pages-artifact action to v4 (#20678) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- guide/static-deploy-github-pages.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guide/static-deploy-github-pages.yaml b/guide/static-deploy-github-pages.yaml index cec3a9b1..dfd3da33 100644 --- a/guide/static-deploy-github-pages.yaml +++ b/guide/static-deploy-github-pages.yaml @@ -46,7 +46,7 @@ jobs: - name: Setup Pages uses: actions/configure-pages@v5 - name: Upload artifact - uses: actions/upload-pages-artifact@v3 + uses: actions/upload-pages-artifact@v4 with: # Upload dist folder path: './dist' From f22d2859ec8a50ff31d4b95c490a1b51cd9f3490 Mon Sep 17 00:00:00 2001 From: Abdelrhman Arnos Date: Mon, 25 Aug 2025 07:22:51 +0200 Subject: [PATCH 4/7] docs(config): clarify environment variable loading in Vite config (#20624) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: 翠 --- config/index.md | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/config/index.md b/config/index.md index d2dde8d5..71f7bdbd 100644 --- a/config/index.md +++ b/config/index.md @@ -101,9 +101,11 @@ export default defineConfig(async ({ command, mode }) => { ## Using Environment Variables in Config -Environmental Variables can be obtained from `process.env` as usual. +Environment variables available while the config itself is being evaluated are only those that already exist in the current process environment (`process.env`). Vite deliberately defers loading any `.env*` files until _after_ the user config has been resolved because the set of files to load depends on config options like [`root`](/guide/#index-html-and-project-root) and [`envDir`](/config/shared-options.md#envdir), and also on the final `mode`. -Note that Vite doesn't load `.env` files by default as the files to load can only be determined after evaluating the Vite config, for example, the `root` and `envDir` options affect the loading behaviour. However, you can use the exported `loadEnv` helper to load the specific `.env` file if needed. +This means: variables defined in `.env`, `.env.local`, `.env.[mode]`, or `.env.[mode].local` are **not** automatically injected into `process.env` while your `vite.config.*` is running. They _are_ automatically loaded later and exposed to application code via `import.meta.env` (with the default `VITE_` prefix filter) exactly as documented in [Env Variables and Modes](/guide/env-and-mode.html). So if you only need to pass values from `.env*` files to the app, you don't need to call anything in the config. + +If, however, values from `.env*` files must influence the config itself (for example to set `server.port`, conditionally enable plugins, or compute `define` replacements), you can load them manually using the exported [`loadEnv`](/guide/api-javascript.html#loadenv) helper. ```js twoslash import { defineConfig, loadEnv } from 'vite' @@ -114,10 +116,14 @@ export default defineConfig(({ mode }) => { // `VITE_` prefix. const env = loadEnv(mode, process.cwd(), '') return { - // vite config define: { + // Provide an explicit app-level constant derived from an env var. __APP_ENV__: JSON.stringify(env.APP_ENV), }, + // Example: use an env var to set the dev server port conditionally. + server: { + port: env.APP_PORT ? Number(env.APP_PORT) : 5173, + }, } }) ``` From 8490926e60fb617566b0ffa4fbf9fe90c7f47e22 Mon Sep 17 00:00:00 2001 From: Bjorn Lu Date: Mon, 25 Aug 2025 17:00:28 +0800 Subject: [PATCH 5/7] docs(rolldown): update hook filter link (#20680) --- guide/rolldown.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guide/rolldown.md b/guide/rolldown.md index ba15075a..428bcb6b 100644 --- a/guide/rolldown.md +++ b/guide/rolldown.md @@ -314,7 +314,7 @@ const plugin = { ### Hook filter feature -Rolldown introduced a [hook filter feature](https://rolldown.rs/guide/plugin-development#plugin-hook-filters) to reduce the communication overhead the between Rust and JavaScript runtimes. By using this feature you can make your plugin more performant. +Rolldown introduced a [hook filter feature](https://rolldown.rs/plugins/hook-filters) to reduce the communication overhead the between Rust and JavaScript runtimes. By using this feature you can make your plugin more performant. This is also supported by Rollup 4.38.0+ and Vite 6.3.0+. To make your plugin backward compatible with the older versions, make sure to also run the filter inside the hook handlers. ::: tip From dce3765c8bc541bad45cb9213e34bf553d173ae8 Mon Sep 17 00:00:00 2001 From: thinkasany <480968828@qq.com> Date: Tue, 26 Aug 2025 10:06:25 +0800 Subject: [PATCH 6/7] fix: resolved deps --- package.json | 28 +--- pnpm-lock.yaml | 384 +++++++++++++++++++++++++------------------------ 2 files changed, 200 insertions(+), 212 deletions(-) diff --git a/package.json b/package.json index b5ab933b..0ab1ad34 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,4 @@ { -<<<<<<< HEAD "name": "vite-docs-cn", "version": "1.0.0", "description": "Vite.js documentation Chinese translation.", @@ -9,7 +8,7 @@ "private": true, "license": "CC BY-NC-SA 4.0", "devDependencies": { - "@shikijs/vitepress-twoslash": "^3.7.0", + "@shikijs/vitepress-twoslash": "^3.11.0", "@type-challenges/utils": "^0.1.1", "@types/express": "^5.0.3", "@types/node": "^20.9.2", @@ -23,7 +22,7 @@ "vitepress": "^2.0.0-alpha.7", "vitepress-plugin-group-icons": "^1.6.1", "vitepress-plugin-llms": "^1.7.1", - "vue": "^3.5.18", + "vue": "^3.5.19", "vue-tsc": "^3.0.5", "yorkie": "^2.0.0" }, @@ -40,27 +39,4 @@ "gitHooks": { "commit-msg": "node scripts/verifyCommit.js" } -======= - "name": "docs", - "private": true, - "type": "module", - "scripts": { - "typecheck": "vue-tsc", - "docs": "vitepress dev", - "docs-build": "vitepress build", - "docs-serve": "vitepress serve" - }, - "devDependencies": { - "@shikijs/vitepress-twoslash": "^3.11.0", - "@types/express": "^5.0.3", - "feed": "^5.1.0", - "gsap": "^3.13.0", - "markdown-it-image-size": "^14.8.0", - "vitepress": "^2.0.0-alpha.12", - "vitepress-plugin-group-icons": "^1.6.3", - "vitepress-plugin-llms": "^1.7.3", - "vue": "^3.5.19", - "vue-tsc": "^3.0.6" - } ->>>>>>> 8490926e60fb617566b0ffa4fbf9fe90c7f47e22 } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a631a343..00d63dbf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: devDependencies: '@shikijs/vitepress-twoslash': - specifier: ^3.7.0 - version: 3.7.0(typescript@5.4.5) + specifier: ^3.11.0 + version: 3.11.0(typescript@5.4.5) '@type-challenges/utils': specifier: ^0.1.1 version: 0.1.1 @@ -51,8 +51,8 @@ importers: specifier: ^1.7.1 version: 1.7.1 vue: - specifier: ^3.5.18 - version: 3.5.18(typescript@5.4.5) + specifier: ^3.5.19 + version: 3.5.20(typescript@5.4.5) vue-tsc: specifier: ^3.0.5 version: 3.0.5(typescript@5.4.5) @@ -148,19 +148,15 @@ packages: resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} engines: {node: '>=6.9.0'} - '@babel/parser@7.27.5': - resolution: {integrity: sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==} - engines: {node: '>=6.0.0'} - hasBin: true - '@babel/parser@7.28.0': resolution: {integrity: sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/types@7.27.6': - resolution: {integrity: sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==} - engines: {node: '>=6.9.0'} + '@babel/parser@7.28.3': + resolution: {integrity: sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==} + engines: {node: '>=6.0.0'} + hasBin: true '@babel/types@7.28.2': resolution: {integrity: sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==} @@ -411,56 +407,67 @@ packages: resolution: {integrity: sha512-x+e/Z9H0RAWckn4V2OZZl6EmV0L2diuX3QB0uM1r6BvhUIv6xBPL5mrAX2E3e8N8rEHVPwFfz/ETUbV4oW9+lQ==} cpu: [arm] os: [linux] + libc: [glibc] '@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.44.0': resolution: {integrity: sha512-ZTR2mxBHb4tK4wGf9b8SYg0Y6KQPjGpR4UWwTFdnmjB4qRtoATZ5dWn3KsDwGa5Z2ZBOE7K52L36J9LueKBdOQ==} cpu: [arm64] os: [linux] + libc: [glibc] '@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.44.0': resolution: {integrity: sha512-xw+FTGcov/ejdusVOqKgMGW3c4+AgqrfvzWEVXcNP6zq2ue+lsYUgJ+5Rtn/OTJf7e2CbgTFvzLW2j0YAtj0Gg==} cpu: [loong64] os: [linux] + libc: [glibc] '@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.44.0': resolution: {integrity: sha512-vV3cL48U5kDaKZtXrti12YRa7TyxgKAIDoYdqSIOMOFBXqFj2XbChHAtXquEn2+n78ciFgr4KIqEbydEGPxXgA==} cpu: [riscv64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-riscv64-musl@4.44.0': resolution: {integrity: sha512-TDKO8KlHJuvTEdfw5YYFBjhFts2TR0VpZsnLLSYmB7AaohJhM8ctDSdDnUGq77hUh4m/djRafw+9zQpkOanE2Q==} cpu: [riscv64] os: [linux] + libc: [musl] '@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.44.0': resolution: {integrity: sha512-iUVJc3c0o8l9Sa/qlDL2Z9UP92UZZW1+EmQ4xfjTc1akr0iUFZNfxrXJ/R1T90h/ILm9iXEY6+iPrmYB3pXKjw==} cpu: [x64] os: [linux] + libc: [glibc] '@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.44.0': resolution: {integrity: sha512-M0CpcHf8TWn+4oTxJfh7LQuTuaYeXGbk0eageVjQCKzYLsajWS/lFC94qlRqOlyC2KvRT90ZrfXULYmukeIy7w==} @@ -477,34 +484,52 @@ packages: cpu: [x64] os: [win32] + '@shikijs/core@3.11.0': + resolution: {integrity: sha512-oJwU+DxGqp6lUZpvtQgVOXNZcVsirN76tihOLBmwILkKuRuwHteApP8oTXmL4tF5vS5FbOY0+8seXmiCoslk4g==} + '@shikijs/core@3.7.0': resolution: {integrity: sha512-yilc0S9HvTPyahHpcum8eonYrQtmGTU0lbtwxhA6jHv4Bm1cAdlPFRCJX4AHebkCm75aKTjjRAW+DezqD1b/cg==} + '@shikijs/engine-javascript@3.11.0': + resolution: {integrity: sha512-6/ov6pxrSvew13k9ztIOnSBOytXeKs5kfIR7vbhdtVRg+KPzvp2HctYGeWkqv7V6YIoLicnig/QF3iajqyElZA==} + '@shikijs/engine-javascript@3.7.0': resolution: {integrity: sha512-0t17s03Cbv+ZcUvv+y33GtX75WBLQELgNdVghnsdhTgU3hVcWcMsoP6Lb0nDTl95ZJfbP1mVMO0p3byVh3uuzA==} + '@shikijs/engine-oniguruma@3.11.0': + resolution: {integrity: sha512-4DwIjIgETK04VneKbfOE4WNm4Q7WC1wo95wv82PoHKdqX4/9qLRUwrfKlmhf0gAuvT6GHy0uc7t9cailk6Tbhw==} + '@shikijs/engine-oniguruma@3.7.0': resolution: {integrity: sha512-5BxcD6LjVWsGu4xyaBC5bu8LdNgPCVBnAkWTtOCs/CZxcB22L8rcoWfv7Hh/3WooVjBZmFtyxhgvkQFedPGnFw==} + '@shikijs/langs@3.11.0': + resolution: {integrity: sha512-Njg/nFL4HDcf/ObxcK2VeyidIq61EeLmocrwTHGGpOQx0BzrPWM1j55XtKQ1LvvDWH15cjQy7rg96aJ1/l63uw==} + '@shikijs/langs@3.7.0': resolution: {integrity: sha512-1zYtdfXLr9xDKLTGy5kb7O0zDQsxXiIsw1iIBcNOO8Yi5/Y1qDbJ+0VsFoqTlzdmneO8Ij35g7QKF8kcLyznCQ==} + '@shikijs/themes@3.11.0': + resolution: {integrity: sha512-BhhWRzCTEk2CtWt4S4bgsOqPJRkapvxdsifAwqP+6mk5uxboAQchc0etiJ0iIasxnMsb764qGD24DK9albcU9Q==} + '@shikijs/themes@3.7.0': resolution: {integrity: sha512-VJx8497iZPy5zLiiCTSIaOChIcKQwR0FebwE9S3rcN0+J/GTWwQ1v/bqhTbpbY3zybPKeO8wdammqkpXc4NVjQ==} '@shikijs/transformers@3.7.0': resolution: {integrity: sha512-VplaqIMRNsNOorCXJHkbF5S0pT6xm8Z/s7w7OPZLohf8tR93XH0krvUafpNy/ozEylrWuShJF0+ftEB+wFRwGA==} - '@shikijs/twoslash@3.7.0': - resolution: {integrity: sha512-EjnV193iasm/M5UHVDJg6WyX6dIMCb0YhsKKlgWv3OK7iLFjuW7sUp978ZkO2OIn3niqBT6e+CX1LgoPM8jYjQ==} + '@shikijs/twoslash@3.11.0': + resolution: {integrity: sha512-/mYrydaKDr5vwlgFbcaGOvYHds3oceIpru4eVWVvScOC6XbWx9lbYCVhyGtlgHlF1m5rZkAR6sdNAPKeDGKOAw==} peerDependencies: typescript: '>=5.5.0' + '@shikijs/types@3.11.0': + resolution: {integrity: sha512-RB7IMo2E7NZHyfkqAuaf4CofyY8bPzjWPjJRzn6SEak3b46fIQyG6Vx5fG/obqkfppQ+g8vEsiD7Uc6lqQt32Q==} + '@shikijs/types@3.7.0': resolution: {integrity: sha512-MGaLeaRlSWpnP0XSAum3kP3a8vtcTsITqoEPYdt3lQG3YCdQH4DnEhodkYcNMcU0uW0RffhoD1O3e0vG5eSBBg==} - '@shikijs/vitepress-twoslash@3.7.0': - resolution: {integrity: sha512-NGqsd5dfkf8MTCYKKhMZubVfEXUyXXwtbgdDmHlXLB/8S2WZ1bPwduoVldxuETvr/54w/y7gkWbVgkKtq8GvYg==} + '@shikijs/vitepress-twoslash@3.11.0': + resolution: {integrity: sha512-fNyjl52EGcrdxFs5pvlOunA3hKlOuEljF/fYOBa41ztKQ0jp+GtKEpDJZjdUp1gGD5zFIBqMedfvY5BebQOi6Q==} '@shikijs/vscode-textmate@10.0.2': resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} @@ -581,38 +606,32 @@ packages: vite: ^5.0.0 || ^6.0.0 || ^7.0.0 vue: ^3.2.25 - '@volar/language-core@2.4.15': - resolution: {integrity: sha512-3VHw+QZU0ZG9IuQmzT68IyN4hZNd9GchGPhbD9+pa8CVv7rnoOZwo7T8weIbrRmihqy3ATpdfXFnqRrfPVK6CA==} - '@volar/language-core@2.4.22': resolution: {integrity: sha512-gp4M7Di5KgNyIyO903wTClYBavRt6UyFNpc5LWfyZr1lBsTUY+QrVZfmbNF2aCyfklBOVk9YC4p+zkwoyT7ECg==} - '@volar/source-map@2.4.15': - resolution: {integrity: sha512-CPbMWlUN6hVZJYGcU/GSoHu4EnCHiLaXI9n8c9la6RaI9W5JHX+NqG+GSQcB0JdC2FIBLdZJwGsfKyBB71VlTg==} - '@volar/source-map@2.4.22': resolution: {integrity: sha512-L2nVr/1vei0xKRgO2tYVXtJYd09HTRjaZi418e85Q+QdbbqA8h7bBjfNyPPSsjnrOO4l4kaAo78c8SQUAdHvgA==} '@volar/typescript@2.4.22': resolution: {integrity: sha512-6ZczlJW1/GWTrNnkmZxJp4qyBt/SGVlcTuCWpI5zLrdPdCZsj66Aff9ZsfFaT3TyjG8zVYgBMYPuCm/eRkpcpQ==} - '@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-core@3.5.20': + resolution: {integrity: sha512-8TWXUyiqFd3GmP4JTX9hbiTFRwYHgVL/vr3cqhr4YQ258+9FADwvj7golk2sWNGHR67QgmCZ8gz80nQcMokhwg==} '@vue/compiler-dom@3.5.18': resolution: {integrity: sha512-RMbU6NTU70++B1JyVJbNbeFkK+A+Q7y9XKE2EM4NLGm2WFR8x9MbAtWxPPLdm0wUkuZv9trpwfSlL6tjdIa1+A==} - '@vue/compiler-sfc@3.5.18': - resolution: {integrity: sha512-5aBjvGqsWs+MoxswZPoTB9nSDb3dhd1x30xrrltKujlCxo48j8HGDNj3QPhF4VIS0VQDUrA1xUfp2hEa+FNyXA==} + '@vue/compiler-dom@3.5.20': + resolution: {integrity: sha512-whB44M59XKjqUEYOMPYU0ijUV0G+4fdrHVKDe32abNdX/kJe1NUEMqsi4cwzXa9kyM9w5S8WqFsrfo1ogtBZGQ==} + + '@vue/compiler-sfc@3.5.20': + resolution: {integrity: sha512-SFcxapQc0/feWiSBfkGsa1v4DOrnMAQSYuvDMpEaxbpH5dKbnEM5KobSNSgU+1MbHCl+9ftm7oQWxvwDB6iBfw==} - '@vue/compiler-ssr@3.5.18': - resolution: {integrity: sha512-xM16Ak7rSWHkM3m22NlmcdIM+K4BMyFARAfV9hYFl+SFuRzrZ3uGMNW05kA5pmeMa0X9X963Kgou7ufdbpOP9g==} + '@vue/compiler-ssr@3.5.20': + resolution: {integrity: sha512-RSl5XAMc5YFUXpDQi+UQDdVjH9FnEpLDHIALg5J0ITHxkEzJ8uQLlo7CIbjPYqmZtt6w0TsIPbo1izYXwDG7JA==} '@vue/compiler-vue2@2.7.16': resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} @@ -626,14 +645,6 @@ packages: '@vue/devtools-shared@7.7.7': resolution: {integrity: sha512-+udSj47aRl5aKb0memBvcUG9koarqnxNM5yjuREvqwK6T3ap4mn3Zqqc17QrBFTqSMjr3HK1cvStEZpMDpfdyw==} - '@vue/language-core@2.2.4': - resolution: {integrity: sha512-eGGdw7eWUwdIn9Fy/irJ7uavCGfgemuHQABgJ/hU1UgZFnbTg9VWeXvHQdhY+2SPQZWJqWXvRWIg67t4iWEa+Q==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - '@vue/language-core@3.0.5': resolution: {integrity: sha512-gCEjn9Ik7I/seHVNIEipOm8W+f3/kg60e8s1IgIkMYma2wu9ZGUTMv3mSL2bX+Md2L8fslceJ4SU8j1fgSRoiw==} peerDependencies: @@ -642,19 +653,19 @@ packages: typescript: optional: true - '@vue/reactivity@3.5.18': - resolution: {integrity: sha512-x0vPO5Imw+3sChLM5Y+B6G1zPjwdOri9e8V21NnTnlEvkxatHEH5B5KEAJcjuzQ7BsjGrKtfzuQ5eQwXh8HXBg==} + '@vue/reactivity@3.5.20': + resolution: {integrity: sha512-hS8l8x4cl1fmZpSQX/NXlqWKARqEsNmfkwOIYqtR2F616NGfsLUm0G6FQBK6uDKUCVyi1YOL8Xmt/RkZcd/jYQ==} - '@vue/runtime-core@3.5.18': - resolution: {integrity: sha512-DUpHa1HpeOQEt6+3nheUfqVXRog2kivkXHUhoqJiKR33SO4x+a5uNOMkV487WPerQkL0vUuRvq/7JhRgLW3S+w==} + '@vue/runtime-core@3.5.20': + resolution: {integrity: sha512-vyQRiH5uSZlOa+4I/t4Qw/SsD/gbth0SW2J7oMeVlMFMAmsG1rwDD6ok0VMmjXY3eI0iHNSSOBilEDW98PLRKw==} - '@vue/runtime-dom@3.5.18': - resolution: {integrity: sha512-YwDj71iV05j4RnzZnZtGaXwPoUWeRsqinblgVJwR8XTXYZ9D5PbahHQgsbmzUvCWNF6x7siQ89HgnX5eWkr3mw==} + '@vue/runtime-dom@3.5.20': + resolution: {integrity: sha512-KBHzPld/Djw3im0CQ7tGCpgRedryIn4CcAl047EhFTCCPT2xFf4e8j6WeKLgEEoqPSl9TYqShc3Q6tpWpz/Xgw==} - '@vue/server-renderer@3.5.18': - resolution: {integrity: sha512-PvIHLUoWgSbDG7zLHqSqaCoZvHi6NNmfVFOqO+OnwvqMz/tqQr3FuGWS8ufluNddk7ZLBJYMrjcw1c6XzR12mA==} + '@vue/server-renderer@3.5.20': + resolution: {integrity: sha512-HthAS0lZJDH21HFJBVNTtx+ULcIbJQRpjSVomVjfyPkFSpCwvsPTA+jIzOaUm3Hrqx36ozBHePztQFg6pj5aKg==} peerDependencies: - vue: 3.5.18 + vue: 3.5.20 '@vue/shared@3.5.17': resolution: {integrity: sha512-CabR+UN630VnsJO/jHWYBC1YVXyMq94KKp6iF5MQgZJs5I8cmjw6oVMO1oDbtBkENSHSSn/UadWlW/OAgdmKrg==} @@ -662,6 +673,9 @@ packages: '@vue/shared@3.5.18': resolution: {integrity: sha512-cZy8Dq+uuIXbxCZpuLd2GJdeSO/lIzIspC2WtkqIpje5QyFbvLaI5wZtdUjLHjGZrlVX6GilejatWwVYYRc8tA==} + '@vue/shared@3.5.20': + resolution: {integrity: sha512-SoRGP596KU/ig6TfgkCMbXkr4YJ91n/QSdMuqeP5r3hVIYA3CPHUBCc7Skak0EAKV+5lL4KyIh61VA/pK1CIAA==} + '@vueuse/core@13.4.0': resolution: {integrity: sha512-OnK7zW3bTq/QclEk17+vDFN3tuAm8ONb9zQUIHrYQkkFesu3WeGUx/3YzpEp+ly53IfDAT9rsYXgGW6piNZC5w==} peerDependencies: @@ -726,9 +740,6 @@ packages: resolution: {integrity: sha512-groO71Fvi5SWpxjI9Ia+chy0QBwT61mg6yxJV27f5YFf+Mw+STT75K6SHySpP8Co5LsCrtsbCH5dJZSRtkSKaQ==} engines: {node: '>= 14.0.0'} - alien-signals@1.0.13: - resolution: {integrity: sha512-OGj9yyTnJEttvzhTUWuscOvtqxq5vrhF7vL9oS0xJ2mK0ItPYP1/y+vCFebfxoEyAz0++1AIwJ5CMr+Fk3nDmg==} - alien-signals@2.0.6: resolution: {integrity: sha512-P3TxJSe31bUHBiblg59oU1PpaWPtmxF9GhJ/cB7OkgJ0qN/ifFSKUI25/v8ZhsT+lIG6ac8DpTOplXxORX6F3Q==} @@ -749,15 +760,9 @@ packages: bail@2.0.2: resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} - balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - birpc@2.4.0: resolution: {integrity: sha512-5IdNxTyhXHv2UlgnPHQ0h+5ypVmkrYHzL8QT+DwFZ//2N/oNV8Ch+BCRmTJ3x6/z9Axo/cXYBc9eprsUVK/Jsg==} - brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - byte-size@9.0.1: resolution: {integrity: sha512-YLe9x3rabBrcI0cueCdLS2l5ONUKywcRpTs02B8KP9/Cimhj7o3ZccGrPnRvcbyHMbb7W79/3MUJl7iGgTXKEw==} engines: {node: '>=12.17'} @@ -1160,10 +1165,6 @@ packages: resolution: {integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==} engines: {node: 20 || >=22} - minimatch@9.0.4: - resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} - engines: {node: '>=16 || 14 >=14.17'} - minisearch@7.1.2: resolution: {integrity: sha512-R1Pd9eF+MD5JYDDSPAp/q1ougKglm14uEkPMvQ/05RGmx6G9wvmLTrTI/Q5iPNJLYqNdsDQ7qTGIcNWR+FrHmA==} @@ -1309,6 +1310,9 @@ packages: resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} engines: {node: '>=0.10.0'} + shiki@3.11.0: + resolution: {integrity: sha512-VgKumh/ib38I1i3QkMn6mAQA6XjjQubqaAYhfge71glAll0/4xnt8L2oSuC45Qcr/G5Kbskj4RliMQddGmy/Og==} + shiki@3.7.0: resolution: {integrity: sha512-ZcI4UT9n6N2pDuM2n3Jbk0sR4Swzq43nLPgS/4h0E3B/NrFn2HKElrDtceSf8Zx/OWYOo7G1SAtBLypCp+YXqg==} @@ -1386,16 +1390,16 @@ packages: trough@2.2.0: resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} - twoslash-protocol@0.3.1: - resolution: {integrity: sha512-BMePTL9OkuNISSyyMclBBhV2s9++DiOCyhhCoV5Kaht6eaWLwVjCCUJHY33eZJPsyKeZYS8Wzz0h+XI01VohVw==} + twoslash-protocol@0.3.4: + resolution: {integrity: sha512-HHd7lzZNLUvjPzG/IE6js502gEzLC1x7HaO1up/f72d8G8ScWAs9Yfa97igelQRDl5h9tGcdFsRp+lNVre1EeQ==} - twoslash-vue@0.3.1: - resolution: {integrity: sha512-9/PS0/iL2m8G6N2ILdI18sZ8l6ex+W2nN5jIaTpfFPlnY0MOX2G5UxEVs+AuNimM9SwEnwfiIuDY9ubDCIQpSQ==} + twoslash-vue@0.3.4: + resolution: {integrity: sha512-R9hHbmfQMAiHG2UjB0tVFanEzz0SHDa9ZSxowAQFQMPPZSUSuP0meVG2BW2O+q7NAWzya8aJh/eXtPIMX3qsxA==} peerDependencies: typescript: ^5.5.0 - twoslash@0.3.1: - resolution: {integrity: sha512-OGqMTGvqXTcb92YQdwGfEdK0nZJA64Aj/ChLOelbl3TfYch2IoBST0Yx4C0LQ7Lzyqm9RpgcpgDxeXQIz4p2Kg==} + twoslash@0.3.4: + resolution: {integrity: sha512-RtJURJlGRxrkJmTcZMjpr7jdYly1rfgpujJr1sBM9ch7SKVht/SjFk23IOAyvwT1NLCk+SJiMrvW4rIAUM2Wug==} peerDependencies: typescript: ^5.5.0 @@ -1518,8 +1522,8 @@ packages: peerDependencies: typescript: '>=5.0.0' - vue@3.5.18: - resolution: {integrity: sha512-7W4Y4ZbMiQ3SEo+m9lnoNpV9xG7QVMLa+/0RFwwiAVkeYoyGXqWE85jabU4pllJNUzqfLShJ5YLptewhCWUgNA==} + vue@3.5.20: + resolution: {integrity: sha512-2sBz0x/wis5TkF1XZ2vH25zWq3G1bFEPOfkBcx2ikowmphoQsPH6X0V3mmPCXA2K1N/XGTnifVyDQP4GfDDeQw==} peerDependencies: typescript: '*' peerDependenciesMeta: @@ -1684,18 +1688,13 @@ snapshots: '@babel/helper-validator-identifier@7.27.1': {} - '@babel/parser@7.27.5': - dependencies: - '@babel/types': 7.27.6 - '@babel/parser@7.28.0': dependencies: '@babel/types': 7.28.2 - '@babel/types@7.27.6': + '@babel/parser@7.28.3': dependencies: - '@babel/helper-string-parser': 7.27.1 - '@babel/helper-validator-identifier': 7.27.1 + '@babel/types': 7.28.2 '@babel/types@7.28.2': dependencies: @@ -1908,6 +1907,13 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.44.0': optional: true + '@shikijs/core@3.11.0': + dependencies: + '@shikijs/types': 3.11.0 + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.5 + '@shikijs/core@3.7.0': dependencies: '@shikijs/types': 3.7.0 @@ -1915,21 +1921,40 @@ snapshots: '@types/hast': 3.0.4 hast-util-to-html: 9.0.5 + '@shikijs/engine-javascript@3.11.0': + dependencies: + '@shikijs/types': 3.11.0 + '@shikijs/vscode-textmate': 10.0.2 + oniguruma-to-es: 4.3.3 + '@shikijs/engine-javascript@3.7.0': dependencies: '@shikijs/types': 3.7.0 '@shikijs/vscode-textmate': 10.0.2 oniguruma-to-es: 4.3.3 + '@shikijs/engine-oniguruma@3.11.0': + dependencies: + '@shikijs/types': 3.11.0 + '@shikijs/vscode-textmate': 10.0.2 + '@shikijs/engine-oniguruma@3.7.0': dependencies: '@shikijs/types': 3.7.0 '@shikijs/vscode-textmate': 10.0.2 + '@shikijs/langs@3.11.0': + dependencies: + '@shikijs/types': 3.11.0 + '@shikijs/langs@3.7.0': dependencies: '@shikijs/types': 3.7.0 + '@shikijs/themes@3.11.0': + dependencies: + '@shikijs/types': 3.11.0 + '@shikijs/themes@3.7.0': dependencies: '@shikijs/types': 3.7.0 @@ -1939,31 +1964,36 @@ snapshots: '@shikijs/core': 3.7.0 '@shikijs/types': 3.7.0 - '@shikijs/twoslash@3.7.0(typescript@5.4.5)': + '@shikijs/twoslash@3.11.0(typescript@5.4.5)': dependencies: - '@shikijs/core': 3.7.0 - '@shikijs/types': 3.7.0 - twoslash: 0.3.1(typescript@5.4.5) + '@shikijs/core': 3.11.0 + '@shikijs/types': 3.11.0 + twoslash: 0.3.4(typescript@5.4.5) typescript: 5.4.5 transitivePeerDependencies: - supports-color + '@shikijs/types@3.11.0': + dependencies: + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + '@shikijs/types@3.7.0': dependencies: '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 - '@shikijs/vitepress-twoslash@3.7.0(typescript@5.4.5)': + '@shikijs/vitepress-twoslash@3.11.0(typescript@5.4.5)': dependencies: - '@shikijs/twoslash': 3.7.0(typescript@5.4.5) - floating-vue: 5.2.2(vue@3.5.18(typescript@5.4.5)) + '@shikijs/twoslash': 3.11.0(typescript@5.4.5) + floating-vue: 5.2.2(vue@3.5.20(typescript@5.4.5)) mdast-util-from-markdown: 2.0.2 mdast-util-gfm: 3.1.0 mdast-util-to-hast: 13.2.0 - shiki: 3.7.0 - twoslash: 0.3.1(typescript@5.4.5) - twoslash-vue: 0.3.1(typescript@5.4.5) - vue: 3.5.18(typescript@5.4.5) + shiki: 3.11.0 + twoslash: 0.3.4(typescript@5.4.5) + twoslash-vue: 0.3.4(typescript@5.4.5) + vue: 3.5.20(typescript@5.4.5) transitivePeerDependencies: - '@nuxt/kit' - supports-color @@ -2047,22 +2077,16 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-vue@6.0.0(vite@7.0.4(@types/node@20.12.12))(vue@3.5.18(typescript@5.4.5))': + '@vitejs/plugin-vue@6.0.0(vite@7.0.4(@types/node@20.12.12))(vue@3.5.20(typescript@5.4.5))': dependencies: '@rolldown/pluginutils': 1.0.0-beta.19 vite: 7.0.4(@types/node@20.12.12) - vue: 3.5.18(typescript@5.4.5) - - '@volar/language-core@2.4.15': - dependencies: - '@volar/source-map': 2.4.15 + vue: 3.5.20(typescript@5.4.5) '@volar/language-core@2.4.22': dependencies: '@volar/source-map': 2.4.22 - '@volar/source-map@2.4.15': {} - '@volar/source-map@2.4.22': {} '@volar/typescript@2.4.22': @@ -2071,14 +2095,6 @@ snapshots: path-browserify: 1.0.1 vscode-uri: 3.1.0 - '@vue/compiler-core@3.5.17': - dependencies: - '@babel/parser': 7.27.5 - '@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 @@ -2087,32 +2103,40 @@ snapshots: estree-walker: 2.0.2 source-map-js: 1.2.1 - '@vue/compiler-dom@3.5.17': + '@vue/compiler-core@3.5.20': dependencies: - '@vue/compiler-core': 3.5.17 - '@vue/shared': 3.5.17 + '@babel/parser': 7.28.3 + '@vue/shared': 3.5.20 + entities: 4.5.0 + estree-walker: 2.0.2 + source-map-js: 1.2.1 '@vue/compiler-dom@3.5.18': dependencies: '@vue/compiler-core': 3.5.18 '@vue/shared': 3.5.18 - '@vue/compiler-sfc@3.5.18': + '@vue/compiler-dom@3.5.20': dependencies: - '@babel/parser': 7.28.0 - '@vue/compiler-core': 3.5.18 - '@vue/compiler-dom': 3.5.18 - '@vue/compiler-ssr': 3.5.18 - '@vue/shared': 3.5.18 + '@vue/compiler-core': 3.5.20 + '@vue/shared': 3.5.20 + + '@vue/compiler-sfc@3.5.20': + dependencies: + '@babel/parser': 7.28.3 + '@vue/compiler-core': 3.5.20 + '@vue/compiler-dom': 3.5.20 + '@vue/compiler-ssr': 3.5.20 + '@vue/shared': 3.5.20 estree-walker: 2.0.2 magic-string: 0.30.17 postcss: 8.5.6 source-map-js: 1.2.1 - '@vue/compiler-ssr@3.5.18': + '@vue/compiler-ssr@3.5.20': dependencies: - '@vue/compiler-dom': 3.5.18 - '@vue/shared': 3.5.18 + '@vue/compiler-dom': 3.5.20 + '@vue/shared': 3.5.20 '@vue/compiler-vue2@2.7.16': dependencies: @@ -2137,25 +2161,12 @@ snapshots: dependencies: rfdc: 1.4.1 - '@vue/language-core@2.2.4(typescript@5.4.5)': - dependencies: - '@volar/language-core': 2.4.15 - '@vue/compiler-dom': 3.5.17 - '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.5.17 - alien-signals: 1.0.13 - minimatch: 9.0.4 - muggle-string: 0.4.1 - path-browserify: 1.0.1 - optionalDependencies: - typescript: 5.4.5 - '@vue/language-core@3.0.5(typescript@5.4.5)': dependencies: '@volar/language-core': 2.4.22 - '@vue/compiler-dom': 3.5.17 + '@vue/compiler-dom': 3.5.18 '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.5.17 + '@vue/shared': 3.5.18 alien-signals: 2.0.6 muggle-string: 0.4.1 path-browserify: 1.0.1 @@ -2163,52 +2174,54 @@ snapshots: optionalDependencies: typescript: 5.4.5 - '@vue/reactivity@3.5.18': + '@vue/reactivity@3.5.20': dependencies: - '@vue/shared': 3.5.18 + '@vue/shared': 3.5.20 - '@vue/runtime-core@3.5.18': + '@vue/runtime-core@3.5.20': dependencies: - '@vue/reactivity': 3.5.18 - '@vue/shared': 3.5.18 + '@vue/reactivity': 3.5.20 + '@vue/shared': 3.5.20 - '@vue/runtime-dom@3.5.18': + '@vue/runtime-dom@3.5.20': dependencies: - '@vue/reactivity': 3.5.18 - '@vue/runtime-core': 3.5.18 - '@vue/shared': 3.5.18 + '@vue/reactivity': 3.5.20 + '@vue/runtime-core': 3.5.20 + '@vue/shared': 3.5.20 csstype: 3.1.3 - '@vue/server-renderer@3.5.18(vue@3.5.18(typescript@5.4.5))': + '@vue/server-renderer@3.5.20(vue@3.5.20(typescript@5.4.5))': dependencies: - '@vue/compiler-ssr': 3.5.18 - '@vue/shared': 3.5.18 - vue: 3.5.18(typescript@5.4.5) + '@vue/compiler-ssr': 3.5.20 + '@vue/shared': 3.5.20 + vue: 3.5.20(typescript@5.4.5) '@vue/shared@3.5.17': {} '@vue/shared@3.5.18': {} - '@vueuse/core@13.4.0(vue@3.5.18(typescript@5.4.5))': + '@vue/shared@3.5.20': {} + + '@vueuse/core@13.4.0(vue@3.5.20(typescript@5.4.5))': dependencies: '@types/web-bluetooth': 0.0.21 '@vueuse/metadata': 13.4.0 - '@vueuse/shared': 13.4.0(vue@3.5.18(typescript@5.4.5)) - vue: 3.5.18(typescript@5.4.5) + '@vueuse/shared': 13.4.0(vue@3.5.20(typescript@5.4.5)) + vue: 3.5.20(typescript@5.4.5) - '@vueuse/integrations@13.4.0(focus-trap@7.6.5)(vue@3.5.18(typescript@5.4.5))': + '@vueuse/integrations@13.4.0(focus-trap@7.6.5)(vue@3.5.20(typescript@5.4.5))': dependencies: - '@vueuse/core': 13.4.0(vue@3.5.18(typescript@5.4.5)) - '@vueuse/shared': 13.4.0(vue@3.5.18(typescript@5.4.5)) - vue: 3.5.18(typescript@5.4.5) + '@vueuse/core': 13.4.0(vue@3.5.20(typescript@5.4.5)) + '@vueuse/shared': 13.4.0(vue@3.5.20(typescript@5.4.5)) + vue: 3.5.20(typescript@5.4.5) optionalDependencies: focus-trap: 7.6.5 '@vueuse/metadata@13.4.0': {} - '@vueuse/shared@13.4.0(vue@3.5.18(typescript@5.4.5))': + '@vueuse/shared@13.4.0(vue@3.5.20(typescript@5.4.5))': dependencies: - vue: 3.5.18(typescript@5.4.5) + vue: 3.5.20(typescript@5.4.5) acorn@8.14.0: {} @@ -2228,8 +2241,6 @@ snapshots: '@algolia/requester-fetch': 5.20.0 '@algolia/requester-node-http': 5.20.0 - alien-signals@1.0.13: {} - alien-signals@2.0.6: {} ansi-regex@5.0.1: {} @@ -2246,14 +2257,8 @@ snapshots: bail@2.0.2: {} - balanced-match@1.0.2: {} - birpc@2.4.0: {} - brace-expansion@2.0.1: - dependencies: - balanced-match: 1.0.2 - byte-size@9.0.1: {} ccount@2.0.1: {} @@ -2390,11 +2395,11 @@ snapshots: flatted@3.3.3: {} - floating-vue@5.2.2(vue@3.5.18(typescript@5.4.5)): + floating-vue@5.2.2(vue@3.5.20(typescript@5.4.5)): dependencies: '@floating-ui/dom': 1.1.1 - vue: 3.5.18(typescript@5.4.5) - vue-resize: 2.0.0-alpha.1(vue@3.5.18(typescript@5.4.5)) + vue: 3.5.20(typescript@5.4.5) + vue-resize: 2.0.0-alpha.1(vue@3.5.20(typescript@5.4.5)) focus-trap@7.6.5: dependencies: @@ -2799,10 +2804,6 @@ snapshots: dependencies: '@isaacs/brace-expansion': 5.0.0 - minimatch@9.0.4: - dependencies: - brace-expansion: 2.0.1 - minisearch@7.1.2: {} mitt@3.0.1: {} @@ -2964,6 +2965,17 @@ snapshots: shebang-regex@1.0.0: {} + shiki@3.11.0: + dependencies: + '@shikijs/core': 3.11.0 + '@shikijs/engine-javascript': 3.11.0 + '@shikijs/engine-oniguruma': 3.11.0 + '@shikijs/langs': 3.11.0 + '@shikijs/themes': 3.11.0 + '@shikijs/types': 3.11.0 + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + shiki@3.7.0: dependencies: '@shikijs/core': 3.7.0 @@ -3037,21 +3049,21 @@ snapshots: trough@2.2.0: {} - twoslash-protocol@0.3.1: {} + twoslash-protocol@0.3.4: {} - twoslash-vue@0.3.1(typescript@5.4.5): + twoslash-vue@0.3.4(typescript@5.4.5): dependencies: - '@vue/language-core': 2.2.4(typescript@5.4.5) - twoslash: 0.3.1(typescript@5.4.5) - twoslash-protocol: 0.3.1 + '@vue/language-core': 3.0.5(typescript@5.4.5) + twoslash: 0.3.4(typescript@5.4.5) + twoslash-protocol: 0.3.4 typescript: 5.4.5 transitivePeerDependencies: - supports-color - twoslash@0.3.1(typescript@5.4.5): + twoslash@0.3.4(typescript@5.4.5): dependencies: '@typescript/vfs': 1.6.1(typescript@5.4.5) - twoslash-protocol: 0.3.1 + twoslash-protocol: 0.3.4 typescript: 5.4.5 transitivePeerDependencies: - supports-color @@ -3163,17 +3175,17 @@ snapshots: '@shikijs/core': 3.7.0 '@shikijs/transformers': 3.7.0 '@shikijs/types': 3.7.0 - '@vitejs/plugin-vue': 6.0.0(vite@7.0.4(@types/node@20.12.12))(vue@3.5.18(typescript@5.4.5)) + '@vitejs/plugin-vue': 6.0.0(vite@7.0.4(@types/node@20.12.12))(vue@3.5.20(typescript@5.4.5)) '@vue/devtools-api': 7.7.7 '@vue/shared': 3.5.17 - '@vueuse/core': 13.4.0(vue@3.5.18(typescript@5.4.5)) - '@vueuse/integrations': 13.4.0(focus-trap@7.6.5)(vue@3.5.18(typescript@5.4.5)) + '@vueuse/core': 13.4.0(vue@3.5.20(typescript@5.4.5)) + '@vueuse/integrations': 13.4.0(focus-trap@7.6.5)(vue@3.5.20(typescript@5.4.5)) focus-trap: 7.6.5 mark.js: 8.11.1 minisearch: 7.1.2 shiki: 3.7.0 vite: 7.0.4(@types/node@20.12.12) - vue: 3.5.18(typescript@5.4.5) + vue: 3.5.20(typescript@5.4.5) optionalDependencies: postcss: 8.5.6 transitivePeerDependencies: @@ -3208,9 +3220,9 @@ snapshots: vscode-uri@3.1.0: {} - vue-resize@2.0.0-alpha.1(vue@3.5.18(typescript@5.4.5)): + vue-resize@2.0.0-alpha.1(vue@3.5.20(typescript@5.4.5)): dependencies: - vue: 3.5.18(typescript@5.4.5) + vue: 3.5.20(typescript@5.4.5) vue-tsc@3.0.5(typescript@5.4.5): dependencies: @@ -3218,13 +3230,13 @@ snapshots: '@vue/language-core': 3.0.5(typescript@5.4.5) typescript: 5.4.5 - vue@3.5.18(typescript@5.4.5): + vue@3.5.20(typescript@5.4.5): dependencies: - '@vue/compiler-dom': 3.5.18 - '@vue/compiler-sfc': 3.5.18 - '@vue/runtime-dom': 3.5.18 - '@vue/server-renderer': 3.5.18(vue@3.5.18(typescript@5.4.5)) - '@vue/shared': 3.5.18 + '@vue/compiler-dom': 3.5.20 + '@vue/compiler-sfc': 3.5.20 + '@vue/runtime-dom': 3.5.20 + '@vue/server-renderer': 3.5.20(vue@3.5.20(typescript@5.4.5)) + '@vue/shared': 3.5.20 optionalDependencies: typescript: 5.4.5 From 97a85646d37d853f28d8d388fbeb7fea974b5e4b Mon Sep 17 00:00:00 2001 From: Kylin <1159469891@qq.com> Date: Tue, 26 Aug 2025 10:29:59 +0800 Subject: [PATCH 7/7] docs: update content --- config/index.md | 16 +++------------- guide/api-environment-plugins.md | 6 +----- guide/features.md | 9 +-------- guide/rolldown.md | 7 +------ plugins/index.md | 8 ++------ 5 files changed, 8 insertions(+), 38 deletions(-) diff --git a/config/index.md b/config/index.md index f3e23ba1..cbcd9743 100644 --- a/config/index.md +++ b/config/index.md @@ -101,17 +101,11 @@ export default defineConfig(async ({ command, mode }) => { ## 在配置中使用环境变量 {#using-environment-variables-in-config} -<<<<<<< HEAD -环境变量通常可以从 `process.env` 获得。 +在评估配置文件本身时,可用的环境变量仅限于当前进程环境中已经存在的变量(`process.env`)。Vite 有意推迟加载任何 `.env*` 文件,直到用户配置解析完成之后,因为要加载的文件集合依赖于配置选项如 [`root`](/guide/#index-html-and-project-root) 和 [`envDir`](/config/shared-options.md#envdir),以及最终的 `mode`。 -注意 Vite 默认是不加载 `.env` 文件的,因为这些文件需要在执行完 Vite 配置后才能确定加载哪一个,举个例子,`root` 和 `envDir` 选项会影响加载行为。不过当你的确需要时,你可以使用 Vite 导出的 `loadEnv` 函数来加载指定的 `.env` 文件。 -======= -Environment variables available while the config itself is being evaluated are only those that already exist in the current process environment (`process.env`). Vite deliberately defers loading any `.env*` files until _after_ the user config has been resolved because the set of files to load depends on config options like [`root`](/guide/#index-html-and-project-root) and [`envDir`](/config/shared-options.md#envdir), and also on the final `mode`. +这意味着:在你的 `vite.config.*` 运行时,定义在 `.env`、`.env.local`、`.env.[mode]` 或 `.env.[mode].local` 中的变量不会自动注入到 `process.env` 中。它们会在稍后自动加载,并通过 `import.meta.env` 暴露给应用程序代码(使用默认的 `VITE_` 前缀过滤器),正如[环境变量和模式](/guide/env-and-mode.html)中所记录的那样。因此,如果你只需要将 `.env*` 文件中的值传递给应用程序,则无需在配置中调用任何内容。 -This means: variables defined in `.env`, `.env.local`, `.env.[mode]`, or `.env.[mode].local` are **not** automatically injected into `process.env` while your `vite.config.*` is running. They _are_ automatically loaded later and exposed to application code via `import.meta.env` (with the default `VITE_` prefix filter) exactly as documented in [Env Variables and Modes](/guide/env-and-mode.html). So if you only need to pass values from `.env*` files to the app, you don't need to call anything in the config. - -If, however, values from `.env*` files must influence the config itself (for example to set `server.port`, conditionally enable plugins, or compute `define` replacements), you can load them manually using the exported [`loadEnv`](/guide/api-javascript.html#loadenv) helper. ->>>>>>> 8490926e60fb617566b0ffa4fbf9fe90c7f47e22 +但是,如果 `.env*` 文件中的值必须影响配置本身(例如设置 `server.port`、条件性启用插件或计算 `define` 替换),你可以使用导出的 [`loadEnv`](/guide/api-javascript.html#loadenv) 辅助函数手动加载它们。 ```js twoslash import { defineConfig, loadEnv } from 'vite' @@ -122,10 +116,6 @@ export default defineConfig(({ mode }) => { // `VITE_` 前缀。 const env = loadEnv(mode, process.cwd(), '') return { -<<<<<<< HEAD - // vite 配置 -======= ->>>>>>> 8490926e60fb617566b0ffa4fbf9fe90c7f47e22 define: { // Provide an explicit app-level constant derived from an env var. __APP_ENV__: JSON.stringify(env.APP_ENV), diff --git a/guide/api-environment-plugins.md b/guide/api-environment-plugins.md index 7fc2ee33..56edaa06 100644 --- a/guide/api-environment-plugins.md +++ b/guide/api-environment-plugins.md @@ -31,11 +31,7 @@ Vite 服务器有一个共享的插件管道,但在处理模块时,它总是 ## 使用钩子注册新环境 {#registering-new-environments-using-hooks} -<<<<<<< HEAD -插件可以在 `config` 钩子中添加新环境(例如,为了有一个专门用于 [RSC](https://react.dev/blog/2023/03/22/react-labs-what-we-have-been-working-on-march-2023#react-server-components) 的模块图): -======= -Plugins can add new environments in the `config` hook. For example, [RSC support](/plugins/#vitejs-plugin-rsc) uses an additional environment to have a separate module graph with the `react-server` condition: ->>>>>>> 8490926e60fb617566b0ffa4fbf9fe90c7f47e22 +插件可以在 `config` 钩子中添加新环境。例如,[RSC 支持](/plugins/#vitejs-plugin-rsc)使用一个额外的环境来拥有一个带有 `react-server` 条件的独立模块图: ```ts config(config: UserConfig) { diff --git a/guide/features.md b/guide/features.md index 704ae7c7..3236f0b5 100644 --- a/guide/features.md +++ b/guide/features.md @@ -209,18 +209,11 @@ HTML 文件位于 Vite 项目的[最前端和中心](/guide/#index-html-and-proj 所有现代框架都已和 Vite 集成。大多数框架插件由各自的框架团队维护,唯有官方的 Vue 和 React Vite 插件由 Vite 组织维护。 -<<<<<<< HEAD - Vue 支持:[@vitejs/plugin-vue](https://github.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue) - Vue JSX 支持:[@vitejs/plugin-vue-jsx](https://github.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue-jsx) - React 支持:[@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react) - React 使用 SWC 的支持:[@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react-swc) -======= -- Vue support via [@vitejs/plugin-vue](https://github.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue) -- Vue JSX support via [@vitejs/plugin-vue-jsx](https://github.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue-jsx) -- React support via [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react) -- React using SWC support via [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react-swc) -- [React Server Components (RSC)](https://react.dev/reference/rsc/server-components) support via [@vitejs/plugin-rsc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-rsc) ->>>>>>> 8490926e60fb617566b0ffa4fbf9fe90c7f47e22 +- [React Server Components (RSC)](https://react.dev/reference/rsc/server-components) 支持:[@vitejs/plugin-rsc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-rsc) 查看 [插件指南](/plugins/) 了解更多信息。 diff --git a/guide/rolldown.md b/guide/rolldown.md index cc06b69c..2351a55f 100644 --- a/guide/rolldown.md +++ b/guide/rolldown.md @@ -314,13 +314,8 @@ const plugin = { ### 钩子过滤功能 {#hook-filter-feature} -<<<<<<< HEAD -Rolldown 引入了[钩子过滤功能](https://rolldown.rs/guide/plugin-development#plugin-hook-filters),以减少 Rust 和 JavaScript 运行时之间的通信开销。通过使用此功能,你可以使你的插件性能更高。 +Rolldown 引入了[钩子过滤功能](https://rolldown.rs/plugins/hook-filters),以减少 Rust 和 JavaScript 运行时之间的通信开销。通过使用此功能,你可以使你的插件性能更高。 这也在 Rollup 4.38.0+ 和 Vite 6.3.0+ 被支持。为了使你的插件向后兼容较旧的版本,请确保也在钩子处理程序内运行过滤器。 -======= -Rolldown introduced a [hook filter feature](https://rolldown.rs/plugins/hook-filters) to reduce the communication overhead the between Rust and JavaScript runtimes. By using this feature you can make your plugin more performant. -This is also supported by Rollup 4.38.0+ and Vite 6.3.0+. To make your plugin backward compatible with the older versions, make sure to also run the filter inside the hook handlers. ->>>>>>> 8490926e60fb617566b0ffa4fbf9fe90c7f47e22 ::: tip diff --git a/plugins/index.md b/plugins/index.md index 7c8dce06..439929fc 100644 --- a/plugins/index.md +++ b/plugins/index.md @@ -24,21 +24,17 @@ Vite 旨在为常见的 web 开发工作提供开箱即用的支持。在搜索 在开发时会将 Babel 替换为 SWC。在生产环境构建期间,若使用了插件则会使用 SWC+esbuild,若没有使用插件则仅会用到 esbuild。对不需要非标准 React 扩展的大型项目,冷启动和模块热替换(HMR)将会有显著提升。 -<<<<<<< HEAD -### [@vitejs/plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy) {#vitejs-plugin-legacy} -======= ### [@vitejs/plugin-rsc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-rsc) -Vite supports [React Server Components (RSC)](https://react.dev/reference/rsc/server-components) through the plugin. It utilizes the [Environment API](/guide/api-environment) to provide low-level primitives that React frameworks can use to integrate RSC features. You can try a minimal standalone RSC application with: +Vite 通过该插件支持 [React Server Components (RSC)](https://react.dev/reference/rsc/server-components)。它利用 [Environment API](/guide/api-environment) 提供底层原语,React 框架可以使用这些原语来集成 RSC 功能。你可以通过以下方式尝试一个最小的独立 RSC 应用程序: ```bash npm create vite@latest -- --template rsc ``` -Read the [plugin documentation](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-rsc) to learn more. +阅读[插件文档](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-rsc)了解更多详情。 ### [@vitejs/plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy) ->>>>>>> 8490926e60fb617566b0ffa4fbf9fe90c7f47e22 为打包后的文件提供传统浏览器兼容性支持。