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))