From 58da3be7daa3bf58780249868fa372ddd31e9d1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=97=8D+85CD?= <50108258+kwaa@users.noreply.github.com> Date: Mon, 24 Mar 2025 15:25:10 +0800 Subject: [PATCH] feat(docs): add og-image (#91) --- cspell.config.yaml | 1 + docs/astro.config.ts | 4 + docs/package.json | 1 + docs/src/components/starlight/Head.astro | 11 +++ docs/src/env.d.ts | 1 + docs/src/pages/og/[...slug].ts | 24 +++++ pnpm-lock.yaml | 109 +++++++++-------------- 7 files changed, 84 insertions(+), 67 deletions(-) create mode 100644 docs/src/components/starlight/Head.astro create mode 100644 docs/src/env.d.ts create mode 100644 docs/src/pages/og/[...slug].ts diff --git a/cspell.config.yaml b/cspell.config.yaml index a85589777..9a68afd49 100644 --- a/cspell.config.yaml +++ b/cspell.config.yaml @@ -8,6 +8,7 @@ words: - airi - airi-vtuber - Alaya + - astrojs - Attributify - audioworklet - awilix diff --git a/docs/astro.config.ts b/docs/astro.config.ts index 29fdb8671..bae49de4a 100644 --- a/docs/astro.config.ts +++ b/docs/astro.config.ts @@ -3,6 +3,7 @@ import { defineConfig } from 'astro/config' // https://astro.build/config export default defineConfig({ + site: 'https://airi.build', integrations: [ starlight({ title: 'Project Airi', @@ -13,6 +14,9 @@ export default defineConfig({ social: { github: 'https://github.com/moeru-ai/airi', }, + components: { + Head: './src/components/starlight/Head.astro', + }, sidebar: [ { label: 'Guides', diff --git a/docs/package.json b/docs/package.json index cf9429fbe..7a85071d8 100644 --- a/docs/package.json +++ b/docs/package.json @@ -14,6 +14,7 @@ "@astrojs/starlight": "^0.32.3", "@fontsource/quicksand": "^5.2.6", "astro": "^5.5.3", + "astro-og-canvas": "^0.7.0", "sharp": "^0.33.5", "starlight-theme-catppuccin": "^2.0.0" } diff --git a/docs/src/components/starlight/Head.astro b/docs/src/components/starlight/Head.astro new file mode 100644 index 000000000..434585a44 --- /dev/null +++ b/docs/src/components/starlight/Head.astro @@ -0,0 +1,11 @@ +--- +import Default from '@astrojs/starlight/components/Head.astro' + +const ogImageUrl = new URL(`/og/${Astro.locals.starlightRoute.id || 'index'}.webp`, Astro.site) +--- + + + + + + diff --git a/docs/src/env.d.ts b/docs/src/env.d.ts new file mode 100644 index 000000000..f964fe0cf --- /dev/null +++ b/docs/src/env.d.ts @@ -0,0 +1 @@ +/// diff --git a/docs/src/pages/og/[...slug].ts b/docs/src/pages/og/[...slug].ts new file mode 100644 index 000000000..bd19c72a3 --- /dev/null +++ b/docs/src/pages/og/[...slug].ts @@ -0,0 +1,24 @@ +import { OGImageRoute } from 'astro-og-canvas' +import { getCollection } from 'astro:content' + +// eslint-disable-next-line antfu/no-top-level-await +const collectionEntries = await getCollection('docs') + +const pages = Object.fromEntries(collectionEntries.map(({ id, data }) => [id, data])) + +export const { getStaticPaths, GET } = OGImageRoute({ + param: 'slug', + pages, + getSlug: path => `${path}.webp`, + getImageOptions: (_id, page: typeof pages[number]) => ({ + bgGradient: [[101, 99, 109]], + title: page.title, + description: page.description, + logo: { + path: './public/logo-dark.png', + size: [128], + }, + format: 'WEBP', + quality: 90, + }), +}) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index da8e37aa0..474093d97 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -418,7 +418,7 @@ importers: version: 2.3.0 '@intlify/unplugin-vue-i18n': specifier: ^6.0.5 - version: 6.0.5(@vue/compiler-dom@3.5.13)(eslint@9.22.0(jiti@2.4.2))(rollup@4.36.0)(typescript@5.8.2)(vue-i18n@11.1.2(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)) + version: 6.0.5(@vue/compiler-dom@3.5.13)(eslint@9.22.0(jiti@2.4.2))(rollup@2.79.1)(typescript@5.8.2)(vue-i18n@11.1.2(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)) '@proj-airi/drizzle-duckdb-wasm': specifier: workspace:^ version: link:../../packages/drizzle-duckdb-wasm @@ -469,7 +469,7 @@ importers: version: 3.0.0-beta.5(typescript@5.8.2)(vue-tsc@3.0.0-alpha.2(typescript@5.8.2))(vue@3.5.13(typescript@5.8.2)) '@vueuse/motion': specifier: ^3.0.3 - version: 3.0.3(magicast@0.3.5)(rollup@4.36.0)(vue@3.5.13(typescript@5.8.2)) + version: 3.0.3(magicast@0.3.5)(rollup@2.79.1)(vue@3.5.13(typescript@5.8.2)) electron: specifier: ^34.3.3 version: 34.3.3 @@ -490,13 +490,13 @@ importers: version: 3.2.0(unocss@66.1.0-beta.6(postcss@8.5.3)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue@3.5.13(typescript@5.8.2))) unplugin-auto-import: specifier: ^19.1.1 - version: 19.1.1(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.36.0))(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2))) + version: 19.1.1(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@2.79.1))(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2))) unplugin-vue-components: specifier: ^28.4.1 - version: 28.4.1(@babel/parser@7.26.10)(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.36.0))(vue@3.5.13(typescript@5.8.2)) + version: 28.4.1(@babel/parser@7.26.10)(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@2.79.1))(vue@3.5.13(typescript@5.8.2)) unplugin-vue-macros: specifier: ^2.14.5 - version: 2.14.5(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2)))(esbuild@0.19.12)(rollup@4.36.0)(typescript@5.8.2)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue-tsc@3.0.0-alpha.2(typescript@5.8.2))(vue@3.5.13(typescript@5.8.2)) + version: 2.14.5(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2)))(esbuild@0.25.0)(rollup@2.79.1)(typescript@5.8.2)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue-tsc@3.0.0-alpha.2(typescript@5.8.2))(vue@3.5.13(typescript@5.8.2)) unplugin-vue-markdown: specifier: ^28.3.1 version: 28.3.1(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0)) @@ -505,13 +505,13 @@ importers: version: 0.12.0(vue-router@4.5.0(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)) vite-bundle-visualizer: specifier: ^1.2.1 - version: 1.2.1(rollup@4.36.0) + version: 1.2.1(rollup@2.79.1) vite-plugin-pwa: specifier: ^0.21.1 version: 0.21.1(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(workbox-build@7.3.0(@types/babel__core@7.20.5))(workbox-window@7.3.0) vite-plugin-vue-devtools: specifier: ^7.7.2 - version: 7.7.2(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.36.0))(rollup@4.36.0)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue@3.5.13(typescript@5.8.2)) + version: 7.7.2(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@2.79.1))(rollup@2.79.1)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue@3.5.13(typescript@5.8.2)) vite-plugin-vue-layouts: specifier: ^0.11.0 version: 0.11.0(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue-router@4.5.0(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)) @@ -752,7 +752,7 @@ importers: version: 2.3.0 '@intlify/unplugin-vue-i18n': specifier: ^6.0.5 - version: 6.0.5(@vue/compiler-dom@3.5.13)(eslint@9.22.0(jiti@2.4.2))(rollup@2.79.1)(typescript@5.8.2)(vue-i18n@11.1.2(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)) + version: 6.0.5(@vue/compiler-dom@3.5.13)(eslint@9.22.0(jiti@2.4.2))(rollup@4.36.0)(typescript@5.8.2)(vue-i18n@11.1.2(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)) '@proj-airi/drizzle-duckdb-wasm': specifier: workspace:^ version: link:../../packages/drizzle-duckdb-wasm @@ -806,7 +806,7 @@ importers: version: 3.0.0-beta.5(typescript@5.8.2)(vue-tsc@3.0.0-alpha.2(typescript@5.8.2))(vue@3.5.13(typescript@5.8.2)) '@vueuse/motion': specifier: ^3.0.3 - version: 3.0.3(magicast@0.3.5)(rollup@2.79.1)(vue@3.5.13(typescript@5.8.2)) + version: 3.0.3(magicast@0.3.5)(rollup@4.36.0)(vue@3.5.13(typescript@5.8.2)) less: specifier: ^4.2.2 version: 4.2.2 @@ -818,13 +818,13 @@ importers: version: 3.2.0(unocss@66.1.0-beta.6(postcss@8.5.3)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue@3.5.13(typescript@5.8.2))) unplugin-auto-import: specifier: ^19.1.1 - version: 19.1.1(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@2.79.1))(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2))) + version: 19.1.1(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.36.0))(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2))) unplugin-vue-components: specifier: ^28.4.1 - version: 28.4.1(@babel/parser@7.26.10)(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@2.79.1))(vue@3.5.13(typescript@5.8.2)) + version: 28.4.1(@babel/parser@7.26.10)(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.36.0))(vue@3.5.13(typescript@5.8.2)) unplugin-vue-macros: specifier: ^2.14.5 - version: 2.14.5(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2)))(esbuild@0.25.0)(rollup@2.79.1)(typescript@5.8.2)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue-tsc@3.0.0-alpha.2(typescript@5.8.2))(vue@3.5.13(typescript@5.8.2)) + version: 2.14.5(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2)))(esbuild@0.25.0)(rollup@4.36.0)(typescript@5.8.2)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue-tsc@3.0.0-alpha.2(typescript@5.8.2))(vue@3.5.13(typescript@5.8.2)) unplugin-vue-markdown: specifier: ^28.3.1 version: 28.3.1(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0)) @@ -833,13 +833,13 @@ importers: version: 0.12.0(vue-router@4.5.0(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)) vite-bundle-visualizer: specifier: ^1.2.1 - version: 1.2.1(rollup@2.79.1) + version: 1.2.1(rollup@4.36.0) vite-plugin-pwa: specifier: ^0.21.1 version: 0.21.1(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(workbox-build@7.3.0(@types/babel__core@7.20.5))(workbox-window@7.3.0) vite-plugin-vue-devtools: specifier: ^7.7.2 - version: 7.7.2(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@2.79.1))(rollup@2.79.1)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue@3.5.13(typescript@5.8.2)) + version: 7.7.2(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.36.0))(rollup@4.36.0)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue@3.5.13(typescript@5.8.2)) vite-plugin-vue-layouts: specifier: ^0.11.0 version: 0.11.0(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue-router@4.5.0(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)) @@ -1189,6 +1189,9 @@ importers: astro: specifier: ^5.5.3 version: 5.5.3(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(rollup@4.36.0)(terser@5.17.6)(tsx@4.19.3)(typescript@5.8.2)(yaml@2.7.0) + astro-og-canvas: + specifier: ^0.7.0 + version: 0.7.0(astro@5.5.3(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(rollup@4.36.0)(terser@5.17.6)(tsx@4.19.3)(typescript@5.8.2)(yaml@2.7.0)) sharp: specifier: ^0.33.5 version: 0.33.5 @@ -5888,6 +5891,9 @@ packages: peerDependencies: vue: ^3.5.0 + '@webgpu/types@0.1.21': + resolution: {integrity: sha512-pUrWq3V5PiSGFLeLxoGqReTZmiiXwY3jRkIG5sLLKjyqNxrwm/04b4nw7LSmGWJcKk59XOM/YRTUwOzo4MMlow==} + '@webgpu/types@0.1.57': resolution: {integrity: sha512-w8IuWOmgeb9bA9swqSyG6Z/KdKfCdGPxZ75YJUpsJBF4Q/RT5rnPuStzuxOXihcrSjGO4/maH+M9PQgbBVs69A==} @@ -6159,6 +6165,12 @@ packages: peerDependencies: astro: ^4.0.0-beta || ^5.0.0-beta || ^3.3.0 + astro-og-canvas@0.7.0: + resolution: {integrity: sha512-aamARDNDORPxXlPt+VJakzj4WpNUDjQqUZ06eE82pGMad4aTR/KMm8Ho12qvprgJcM8K7fgSOMg5OHa7KcX0pw==} + engines: {node: '>=18.14.1'} + peerDependencies: + astro: ^3.0.0 || ^4.0.0 || ^5.0.0 + astro@5.5.3: resolution: {integrity: sha512-FvqIo5jkunP5R6FkY5vuFYElTOqjnazuiN0x/yf1F+nvedsGDemm5K7mS6RTmFVB291mE9WWn1AbuJsFWEcHgg==} engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'} @@ -6408,6 +6420,9 @@ packages: caniuse-lite@1.0.30001700: resolution: {integrity: sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==} + canvaskit-wasm@0.39.1: + resolution: {integrity: sha512-Gy3lCmhUdKq+8bvDrs9t8+qf7RvcjuQn+we7vTVVyqgOVO1UVfHpsnBxkTZw+R4ApEJ3D5fKySl9TU11hmjl/A==} + caseless@0.12.0: resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} @@ -17134,6 +17149,8 @@ snapshots: dependencies: vue: 3.5.13(typescript@5.8.2) + '@webgpu/types@0.1.21': {} + '@webgpu/types@0.1.57': {} '@xboxreplay/errors@0.1.0': {} @@ -17471,6 +17488,13 @@ snapshots: astro: 5.5.3(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(rollup@4.36.0)(terser@5.17.6)(tsx@4.19.3)(typescript@5.8.2)(yaml@2.7.0) rehype-expressive-code: 0.40.1 + astro-og-canvas@0.7.0(astro@5.5.3(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(rollup@4.36.0)(terser@5.17.6)(tsx@4.19.3)(typescript@5.8.2)(yaml@2.7.0)): + dependencies: + astro: 5.5.3(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(rollup@4.36.0)(terser@5.17.6)(tsx@4.19.3)(typescript@5.8.2)(yaml@2.7.0) + canvaskit-wasm: 0.39.1 + deterministic-object-hash: 2.0.2 + entities: 4.5.0 + astro@5.5.3(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(rollup@4.36.0)(terser@5.17.6)(tsx@4.19.3)(typescript@5.8.2)(yaml@2.7.0): dependencies: '@astrojs/compiler': 2.11.0 @@ -17897,6 +17921,10 @@ snapshots: caniuse-lite@1.0.30001700: {} + canvaskit-wasm@0.39.1: + dependencies: + '@webgpu/types': 0.1.21 + caseless@0.12.0: optional: true @@ -24503,13 +24531,6 @@ snapshots: '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.36.0) '@vueuse/core': 13.0.0(vue@3.5.13(typescript@5.8.2)) - unplugin-combine@1.2.1(esbuild@0.19.12)(rollup@4.36.0)(unplugin@1.16.1)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0)): - optionalDependencies: - esbuild: 0.19.12 - rollup: 4.36.0 - unplugin: 1.16.1 - vite: 6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0) - unplugin-combine@1.2.1(esbuild@0.25.0)(rollup@2.79.1)(unplugin@1.16.1)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0)): optionalDependencies: esbuild: 0.25.0 @@ -24571,52 +24592,6 @@ snapshots: transitivePeerDependencies: - vue - unplugin-vue-macros@2.14.5(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2)))(esbuild@0.19.12)(rollup@4.36.0)(typescript@5.8.2)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue-tsc@3.0.0-alpha.2(typescript@5.8.2))(vue@3.5.13(typescript@5.8.2)): - dependencies: - '@vue-macros/better-define': 1.11.4(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/boolean-prop': 0.5.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/chain-call': 0.4.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/common': 1.16.1(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/config': 0.6.1(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/define-emit': 0.5.4(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/define-models': 1.3.5(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/define-prop': 0.6.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/define-props': 4.0.6(@vue-macros/reactivity-transform@1.1.6(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/define-props-refs': 1.3.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/define-render': 1.6.6(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/define-slots': 1.2.6(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/define-stylex': 0.2.3(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/devtools': 0.4.1(typescript@5.8.2)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0)) - '@vue-macros/export-expose': 0.3.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/export-props': 0.6.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/export-render': 0.3.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/hoist-static': 1.7.0(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/jsx-directive': 0.10.6(typescript@5.8.2) - '@vue-macros/named-template': 0.5.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/reactivity-transform': 1.1.6(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/script-lang': 0.2.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/setup-block': 0.4.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/setup-component': 0.18.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/setup-sfc': 0.18.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/short-bind': 1.1.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/short-emits': 1.6.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/short-vmodel': 1.5.5(vue@3.5.13(typescript@5.8.2)) - '@vue-macros/volar': 0.30.15(typescript@5.8.2)(vue-tsc@3.0.0-alpha.2(typescript@5.8.2))(vue@3.5.13(typescript@5.8.2)) - unplugin: 1.16.1 - unplugin-combine: 1.2.1(esbuild@0.19.12)(rollup@4.36.0)(unplugin@1.16.1)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0)) - unplugin-vue-define-options: 1.5.5(vue@3.5.13(typescript@5.8.2)) - vue: 3.5.13(typescript@5.8.2) - transitivePeerDependencies: - - '@rspack/core' - - '@vueuse/core' - - esbuild - - rolldown - - rollup - - typescript - - vite - - vue-tsc - - webpack - unplugin-vue-macros@2.14.5(@vueuse/core@13.0.0(vue@3.5.13(typescript@5.8.2)))(esbuild@0.25.0)(rollup@2.79.1)(typescript@5.8.2)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)(less@4.2.2)(terser@5.17.6)(tsx@4.19.3)(yaml@2.7.0))(vue-tsc@3.0.0-alpha.2(typescript@5.8.2))(vue@3.5.13(typescript@5.8.2)): dependencies: '@vue-macros/better-define': 1.11.4(vue@3.5.13(typescript@5.8.2))