diff --git a/guide/api-environment-runtimes.md b/guide/api-environment-runtimes.md index 233a4733..9d85fd20 100644 --- a/guide/api-environment-runtimes.md +++ b/guide/api-environment-runtimes.md @@ -80,7 +80,7 @@ Vite 开发服务器默认暴露两个环境:一个 `client` 环境和一个 ` 转换后的源代码称为模块(module),在每个环境中处理的模块之间的关系保存在模块图中。这些模块的转换代码被发送到与每个环境关联的运行时以执行。当一个模块在运行时中被执行时,它的导入模块将被请求,从而触发模块图的一部分处理。 -Vite 模块运行器允许首先使用 Vite 插件处理代码来运行任何代码。它不同于 `server.ssrLoadModule`,因为运行器实现与服务器解耦。这允许库和框架作者实现 Vite 服务器与运行器之间的通信层。浏览器通过服务器 Web Socket 和 HTTP 请求与其对应的环境通信。Node 模块运行器可以直接通过函数调用处理模块,因为它在同一进程中运行。其他环境可以通过连接到 JS 运行时(如 workerd)或 Worker 线程(如 Vitest)来运行模块。 +Vite 模块运行器允许首先使用 Vite 插件处理代码来运行任何代码。它不同于 `server.ssrLoadModule`,因为运行器实现与服务器解耦。这允许库和框架作者实现 Vite 服务器与运行器之间的通信层。浏览器通过服务器 WebSocket 和 HTTP 请求与其对应的环境通信。Node 模块运行器可以直接通过函数调用处理模块,因为它在同一进程中运行。其他环境可以通过连接到 JS 运行时(如 workerd)或 Worker 线程(如 Vitest)来运行模块。 此功能的目标之一是提供一个可定制的 API 来处理和运行代码。用户可以使用暴露的基础组件创建新的环境工厂。 diff --git a/guide/api-javascript.md b/guide/api-javascript.md index 699c120d..d3d0b185 100644 --- a/guide/api-javascript.md +++ b/guide/api-javascript.md @@ -113,7 +113,7 @@ interface ViteDevServer { */ watcher: FSWatcher /** - * web socket 服务器,带有 `send(payload)` 方法。 + * WebSocket 服务器,带有 `send(payload)` 方法。 */ ws: WebSocketServer /** diff --git a/guide/api-plugin.md b/guide/api-plugin.md index e48d1dae..ab102d2f 100644 --- a/guide/api-plugin.md +++ b/guide/api-plugin.md @@ -286,7 +286,7 @@ Vite 插件也可以提供钩子来服务于特定的 Vite 目标。这些钩子 **存储服务器访问** - 在某些情况下,其他插件钩子可能需要访问开发服务器实例(例如访问 websocket 服务器、文件系统监视程序或模块图)。这个钩子也可以用来存储服务器实例以供其他钩子访问: + 在某些情况下,其他插件钩子可能需要访问开发服务器实例(例如访问 WebSocket 服务器、文件系统监视程序或模块图)。这个钩子也可以用来存储服务器实例以供其他钩子访问: ```js const myPlugin = () => { diff --git a/guide/cli.md b/guide/cli.md index 2ee61ad7..097977b4 100644 --- a/guide/cli.md +++ b/guide/cli.md @@ -106,6 +106,8 @@ vite optimize [root] 本地预览构建产物。不要将其用作生产服务器,因为它不是为此而设计的。 +此命令在构建目录(默认为 `dist`)中启动服务器。请提前运行 `vite build` 以确保构建目录是最新的。根据项目配置的 [`appType`](/config/shared-options.html#apptype),它会使用某些中间件。 + #### 使用 {#usage-3} ```bash diff --git a/package.json b/package.json index 86f84792..1a5c1d8b 100644 --- a/package.json +++ b/package.json @@ -17,11 +17,11 @@ "gray-matter": "^4.0.3", "gsap": "^3.13.0", "lodash": "^4.17.21", - "markdown-it-image-size": "^14.7.0", + "markdown-it-image-size": "^15.0.1", "vite": "^7.0.4", "vitepress": "^2.0.0-alpha.7", "vitepress-plugin-group-icons": "^1.6.1", - "vitepress-plugin-llms": "^1.7.4", + "vitepress-plugin-llms": "^1.8.0", "vue": "^3.5.22", "vue-tsc": "^3.1.0", "yorkie": "^2.0.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e1940074..dff662de 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -36,8 +36,8 @@ importers: specifier: ^4.17.21 version: 4.17.21 markdown-it-image-size: - specifier: ^14.7.0 - version: 14.7.0(markdown-it@14.1.0) + specifier: ^15.0.1 + version: 15.0.1(markdown-it@14.1.0) vite: specifier: ^7.0.4 version: 7.0.4(@types/node@20.12.12) @@ -48,8 +48,8 @@ importers: specifier: ^1.6.1 version: 1.6.1(markdown-it@14.1.0)(vite@7.0.4(@types/node@20.12.12)) vitepress-plugin-llms: - specifier: ^1.7.4 - version: 1.7.4 + specifier: ^1.8.0 + version: 1.8.0 vue: specifier: ^3.5.22 version: 3.5.22(typescript@5.4.5) @@ -166,6 +166,15 @@ packages: resolution: {integrity: sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q==} engines: {node: '>=6.9.0'} + '@cacheable/memoize@2.0.3': + resolution: {integrity: sha512-hl9wfQgpiydhQEIv7fkjEzTGE+tcosCXLKFDO707wYJ/78FVOlowb36djex5GdbSyeHnG62pomYLMuV/OT8Pbw==} + + '@cacheable/memory@2.0.3': + resolution: {integrity: sha512-R3UKy/CKOyb1LZG/VRCTMcpiMDyLH7SH3JrraRdK6kf3GweWCOU3sgvE13W3TiDRbxnDKylzKJvhUAvWl9LQOA==} + + '@cacheable/utils@2.1.0': + resolution: {integrity: sha512-ZdxfOiaarMqMj+H7qwlt5EBKWaeGihSYVHdQv5lUsbn8MJJOTW82OIwirQ39U5tMZkNvy3bQE+ryzC+xTAb9/g==} + '@docsearch/css@3.9.0': resolution: {integrity: sha512-cQbnVbq0rrBwNAKegIac/t6a8nWoUAn8frnkLFW6YARaRmAQr5/Eoe6Ln2fqkUCZ40KpdrKbpSAmgrkviOxuWA==} @@ -374,6 +383,13 @@ packages: '@jridgewell/sourcemap-codec@1.5.5': resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + '@keyv/bigmap@1.0.2': + resolution: {integrity: sha512-KR03xkEZlAZNF4IxXgVXb+uNIVNvwdh8UwI0cnc7WI6a+aQcDp8GL80qVfeB4E5NpsKJzou5jU0r6yLSSbMOtA==} + engines: {node: '>= 18'} + + '@keyv/serialize@1.1.1': + resolution: {integrity: sha512-dXn3FZhPv0US+7dtJsIi2R+c7qWYiReoEh5zUntWCf4oSpMNib8FDhSoed6m3QyZdx5hK7iLFkYk3rNxwt8vTA==} + '@rolldown/pluginutils@1.0.0-beta.19': resolution: {integrity: sha512-3FL3mnMbPu0muGOCaKAhhFEYmqv9eTfPSJRJmANrCwtgK8VuxpsZDGK+m0LYAGoyO8+0j5uRe4PeyPDK1yA/hA==} @@ -565,9 +581,18 @@ packages: '@types/http-errors@2.0.4': resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} + '@types/linkify-it@5.0.0': + resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==} + + '@types/markdown-it@14.1.2': + resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==} + '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + '@types/mdurl@2.0.0': + resolution: {integrity: sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==} + '@types/mime@1.3.5': resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} @@ -778,6 +803,9 @@ packages: birpc@2.4.0: resolution: {integrity: sha512-5IdNxTyhXHv2UlgnPHQ0h+5ypVmkrYHzL8QT+DwFZ//2N/oNV8Ch+BCRmTJ3x6/z9Axo/cXYBc9eprsUVK/Jsg==} + cacheable@2.1.0: + resolution: {integrity: sha512-zzL1BxdnqwD69JRT0dihnawAcLkBMwAH+hZSKjUzeBbPedVhk3qYPjRw9VOMYWwt5xRih5xd8S+3kEdGohZm/g==} + ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -900,9 +928,8 @@ packages: resolution: {integrity: sha512-qGNhgYygnefSkAHHrNHqC7p3R8J0/xQDS/cYUud8er/qD9EFGWyCdUDfULHTJQN1d3H3WprzVwMc9MfB4J50Wg==} engines: {node: '>=20', pnpm: '>=10'} - flat-cache@5.0.0: - resolution: {integrity: sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==} - engines: {node: '>=18'} + flat-cache@6.1.17: + resolution: {integrity: sha512-Jzse4YoiUJBVYTwz5Bwl4h/2VQM7e2KK3MVAMlXzX9uamIHAH/TXUlRKU1AQGQOryQhN0EsmufiiF40G057YXA==} flatted@3.3.3: resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} @@ -964,6 +991,9 @@ packages: hookable@5.5.3: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} + hookified@1.12.1: + resolution: {integrity: sha512-xnKGl+iMIlhrZmGHB729MqlmPoWBznctSQTYCpFKqNsCgimJQmithcW0xSQMMFzYnV2iKUh25alswn6epgxS0Q==} + html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} @@ -1003,11 +1033,8 @@ packages: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} hasBin: true - json-buffer@3.0.1: - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - - keyv@4.5.4: - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + keyv@5.5.3: + resolution: {integrity: sha512-h0Un1ieD+HUrzBH6dJXhod3ifSghk5Hw/2Y4/KHBziPlZecrFyE9YOTPU6eOs0V9pYl8gOs86fkr/KN8lUX39A==} kind-of@6.0.3: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} @@ -1042,11 +1069,14 @@ packages: mark.js@8.11.1: resolution: {integrity: sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==} - markdown-it-image-size@14.7.0: - resolution: {integrity: sha512-Tdsi5drDNv9mP8+0mJx8uyVO3VLu2faBAuQdO1ure/KCYXbFY1lRVViXNxG1l/ExqA6F765VA8XmXciTaOkKjg==} - engines: {node: '>= 16'} + markdown-it-image-size@15.0.1: + resolution: {integrity: sha512-qnnnYtXXdUsBtNyywsMpgXDGi0X4Judba0+MJFGa2GrKrE9zwWlng+3GWlv2uRRtM0BO/le3G6x1Xw/iCjiT5g==} + engines: {node: '>= 20'} peerDependencies: markdown-it: '>= 10 < 15' + peerDependenciesMeta: + markdown-it: + optional: true markdown-it@14.1.0: resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} @@ -1235,9 +1265,8 @@ packages: resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==} engines: {node: '>=4'} - path-to-regexp@8.2.0: - resolution: {integrity: sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==} - engines: {node: '>=16'} + path-to-regexp@8.3.0: + resolution: {integrity: sha512-7jdwVIRtsP8MYpdXSwOS0YdD0Du+qOoF/AEPIt88PcCFrZCzx41oxku1jD88hZBwbNUIEfpqvuhjFaMAqMTWnA==} pathe@2.0.2: resolution: {integrity: sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==} @@ -1276,6 +1305,10 @@ packages: resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} engines: {node: '>=6'} + qified@0.5.0: + resolution: {integrity: sha512-Zj6Q/Vc/SQ+Fzc87N90jJUzBzxD7MVQ2ZvGyMmYtnl2u1a07CejAhvtk4ZwASos+SiHKCAIylyGHJKIek75QBw==} + engines: {node: '>=20'} + regex-recursion@6.0.2: resolution: {integrity: sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==} @@ -1507,8 +1540,8 @@ packages: markdown-it: '>=14' vite: '>=3' - vitepress-plugin-llms@1.7.4: - resolution: {integrity: sha512-e7PWJtIPypQFwks5H0I/sJBOssGUs21dz+HO52/eAGjHS2zU62/tWQJZ+/25P4JPQimbqkgHjhibBv+Ub+CoiA==} + vitepress-plugin-llms@1.8.0: + resolution: {integrity: sha512-JQR2j+4OpB0GlmXSJCdTHYIx4AcOZ0LVLRwQVId1wvNRRRGTVs17S5YkBNV0oj8t0zTgJ+TE61f58CJC8CTe4w==} vitepress@2.0.0-alpha.7: resolution: {integrity: sha512-75xXvCWymnSgA7BFt1BmiXnusl4aeV4sM6DpIo9sf2OvkNER3cMLWN6xqZrLGu3SNaQccfS5u3ikCqAnA4p70w==} @@ -1723,6 +1756,22 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.27.1 + '@cacheable/memoize@2.0.3': + dependencies: + '@cacheable/utils': 2.1.0 + + '@cacheable/memory@2.0.3': + dependencies: + '@cacheable/memoize': 2.0.3 + '@cacheable/utils': 2.1.0 + '@keyv/bigmap': 1.0.2 + hookified: 1.12.1 + keyv: 5.5.3 + + '@cacheable/utils@2.1.0': + dependencies: + keyv: 5.5.3 + '@docsearch/css@3.9.0': {} '@docsearch/js@3.9.0(@algolia/client-search@5.20.0)(search-insights@2.13.0)': @@ -1867,6 +1916,12 @@ snapshots: '@jridgewell/sourcemap-codec@1.5.5': {} + '@keyv/bigmap@1.0.2': + dependencies: + hookified: 1.12.1 + + '@keyv/serialize@1.1.1': {} + '@rolldown/pluginutils@1.0.0-beta.19': {} '@rollup/rollup-android-arm-eabi@4.44.0': @@ -2063,10 +2118,19 @@ snapshots: '@types/http-errors@2.0.4': {} + '@types/linkify-it@5.0.0': {} + + '@types/markdown-it@14.1.2': + dependencies: + '@types/linkify-it': 5.0.0 + '@types/mdurl': 2.0.0 + '@types/mdast@4.0.4': dependencies: '@types/unist': 3.0.2 + '@types/mdurl@2.0.0': {} + '@types/mime@1.3.5': {} '@types/ms@0.7.34': {} @@ -2299,6 +2363,15 @@ snapshots: birpc@2.4.0: {} + cacheable@2.1.0: + dependencies: + '@cacheable/memoize': 2.0.3 + '@cacheable/memory': 2.0.3 + '@cacheable/utils': 2.1.0 + hookified: 1.12.1 + keyv: 5.5.3 + qified: 0.5.0 + ccount@2.0.1: {} chalk@4.1.2: @@ -2426,10 +2499,11 @@ snapshots: dependencies: xml-js: 1.6.11 - flat-cache@5.0.0: + flat-cache@6.1.17: dependencies: + cacheable: 2.1.0 flatted: 3.3.3 - keyv: 4.5.4 + hookified: 1.12.1 flatted@3.3.3: {} @@ -2487,6 +2561,8 @@ snapshots: hookable@5.5.3: {} + hookified@1.12.1: {} + html-void-elements@3.0.0: {} image-size@2.0.2: {} @@ -2512,11 +2588,9 @@ snapshots: argparse: 1.0.10 esprima: 4.0.1 - json-buffer@3.0.1: {} - - keyv@4.5.4: + keyv@5.5.3: dependencies: - json-buffer: 3.0.1 + '@keyv/serialize': 1.1.1 kind-of@6.0.3: {} @@ -2548,12 +2622,14 @@ snapshots: mark.js@8.11.1: {} - markdown-it-image-size@14.7.0(markdown-it@14.1.0): + markdown-it-image-size@15.0.1(markdown-it@14.1.0): dependencies: - flat-cache: 5.0.0 + '@types/markdown-it': 14.1.2 + flat-cache: 6.1.17 image-size: 2.0.2 - markdown-it: 14.1.0 sync-fetch: 0.5.2 + optionalDependencies: + markdown-it: 14.1.0 transitivePeerDependencies: - encoding @@ -2889,7 +2965,7 @@ snapshots: path-key@2.0.1: {} - path-to-regexp@8.2.0: {} + path-to-regexp@8.3.0: {} pathe@2.0.2: {} @@ -2921,6 +2997,10 @@ snapshots: punycode.js@2.3.1: {} + qified@0.5.0: + dependencies: + hookified: 1.12.1 + regex-recursion@6.0.2: dependencies: regex-utilities: 2.3.0 @@ -3192,14 +3272,15 @@ snapshots: transitivePeerDependencies: - supports-color - vitepress-plugin-llms@1.7.4: + vitepress-plugin-llms@1.8.0: dependencies: gray-matter: 4.0.3 markdown-it: 14.1.0 markdown-title: 1.0.2 + mdast-util-from-markdown: 2.0.2 millify: 6.1.0 minimatch: 10.0.3 - path-to-regexp: 8.2.0 + path-to-regexp: 8.3.0 picocolors: 1.1.1 pretty-bytes: 7.0.1 remark: 15.0.1