diff --git a/packages/integrations/vue/src/index.ts b/packages/integrations/vue/src/index.ts index f2efc102bc7b..3604b6d64441 100644 --- a/packages/integrations/vue/src/index.ts +++ b/packages/integrations/vue/src/index.ts @@ -19,6 +19,14 @@ function getRenderer(): AstroRenderer { }; } +function getJsxRenderer(): AstroRenderer { + return { + name: '@astrojs/vue (jsx)', + clientEntrypoint: '@astrojs/vue/client.js', + serverEntrypoint: '@astrojs/vue/server.js', + }; +} + function virtualAppEntrypoint(options?: Options): Plugin { const virtualModuleId = 'virtual:@astrojs/vue/app'; const resolvedVirtualModuleId = '\0' + virtualModuleId; @@ -120,6 +128,9 @@ export default function (options?: Options): AstroIntegration { hooks: { 'astro:config:setup': async ({ addRenderer, updateConfig }) => { addRenderer(getRenderer()); + if (options?.jsx) { + addRenderer(getJsxRenderer()); + } updateConfig({ vite: await getViteConfiguration(options) }); }, },