Skip to content

Latest commit

 

History

History
551 lines (321 loc) · 49 KB

CHANGELOG.md

File metadata and controls

551 lines (321 loc) · 49 KB

@astrojs/vue

4.5.0

Minor Changes

  • #11234 4385bf7 Thanks @ematipico! - Adds a new function called addServerRenderer to the Container API. Use this function to manually store renderers inside the instance of your container.

    This new function should be preferred when using the Container API in environments like on-demand pages:

    import type { APIRoute } from 'astro';
    import { experimental_AstroContainer } from 'astro/container';
    import reactRenderer from '@astrojs/react/server.js';
    import vueRenderer from '@astrojs/vue/server.js';
    import ReactComponent from '../components/button.jsx';
    import VueComponent from '../components/button.vue';
    
    // MDX runtime is contained inside the Astro core
    import mdxRenderer from 'astro/jsx/server.js';
    
    // In case you need to import a custom renderer
    import customRenderer from '../renderers/customRenderer.js';
    
    export const GET: APIRoute = async (ctx) => {
      const container = await experimental_AstroContainer.create();
      container.addServerRenderer({ renderer: reactRenderer });
      container.addServerRenderer({ renderer: vueRenderer });
      container.addServerRenderer({ renderer: customRenderer });
      // You can pass a custom name too
      container.addServerRenderer({
        name: 'customRenderer',
        renderer: customRenderer,
      });
      const vueComponent = await container.renderToString(VueComponent);
      return await container.renderToResponse(Component);
    };

4.4.0

Minor Changes

  • #11144 803dd80 Thanks @ematipico! - The integration now exposes a function called getContainerRenderer, that can be used inside the Container APIs to load the relative renderer.

    import { experimental_AstroContainer as AstroContainer } from 'astro/container';
    import ReactWrapper from '../src/components/ReactWrapper.astro';
    import { loadRenderers } from 'astro:container';
    import { getContainerRenderer } from '@astrojs/react';
    
    test('ReactWrapper with react renderer', async () => {
      const renderers = await loadRenderers([getContainerRenderer()]);
      const container = await AstroContainer.create({
        renderers,
      });
      const result = await container.renderToString(ReactWrapper);
    
      expect(result).toContain('Counter');
      expect(result).toContain('Count: <!-- -->5');
    });

4.3.0

Minor Changes

  • #11055 b92de22 Thanks @niklas-wortmann! - Updates the devtools type to allow passing VueDevToolsOptions

    For more customization, you can pass options that the Vue DevTools Vite Plugin supports. (Note: appendTo is not supported.) For example, you can set launchEditor to your preferred editor if you are not using Visual Studio Code:

    import { defineConfig } from 'astro/config';
    import vue from '@astrojs/vue';
    
    export default defineConfig({
      // ...
      integrations: [
        vue({
          devtools: { launchEditor: 'webstorm' },
        }),
      ],
    });

4.2.0

Minor Changes

  • #10929 082abb8 Thanks @florian-lefebvre! - Adds a devtools option

    You can enable the official Vue DevTools while working in development mode by setting devtools:true in your vue() integration config:

    import { defineConfig } from 'astro/config';
    import vue from '@astrojs/vue';
    
    export default defineConfig({
      integrations: [vue({ devtools: true })],
    });

4.1.0

Minor Changes

4.0.11

Patch Changes

4.0.10

Patch Changes

4.0.9

Patch Changes

4.0.8

Patch Changes

4.0.7

Patch Changes

4.0.6

Patch Changes

4.0.5

Patch Changes

4.0.4

Patch Changes

4.0.3

Patch Changes

  • #9366 1b4e91898 Thanks @lilnasy! - Updates NPM package to refer to the stable Astro version instead of a beta.

4.0.2

Patch Changes

4.0.1

Patch Changes

  • #8794 4d4e34d45 Thanks @yoyo837! - Prevents Astro from crashing when no default function is exported from the appEntrypoint. Now, the entrypoint will be ignored with a warning instead.

4.0.0

Patch Changes

4.0.0-beta.0

Patch Changes

3.0.4

Patch Changes

  • #8998 14e586cc7 Thanks @minht11! - Adds editor support for Vue non setup script blocks and Vue 3.3 generics.

3.0.3

Patch Changes

  • #8930 c77f55d9c Thanks @matthewp! - Fixes an issue where Astro slot names were being rendered as attributes in components. Astro slot names will no longer be sent as props to framework components.

3.0.2

Patch Changes

3.0.1

Patch Changes

3.0.0

Major Changes

  • #8188 d0679a666 Thanks @ematipico! - Remove support for Node 16. The lowest supported version by Astro and all integrations is now v18.14.1. As a reminder, Node 16 will be deprecated on the 11th September 2023.

  • #8179 6011d52d3 Thanks @matthewp! - Astro 3.0 Release Candidate

Patch Changes

3.0.0-rc.2

Patch Changes

3.0.0-rc.1

Major Changes

Patch Changes

3.0.0-beta.0

Major Changes

  • 1eae2e3f7 Thanks @Princesseuh! - Remove support for Node 16. The lowest supported version by Astro and all integrations is now v18.14.1. As a reminder, Node 16 will be deprecated on the 11th September 2023.

Patch Changes

2.2.1

Patch Changes

2.2.0

Minor Changes

  • #7093 3d525efc9 Thanks @matthewp! - Prevent removal of nested slots within islands

    This change introduces a new flag that renderers can add called supportsAstroStaticSlot. What this does is let Astro know that the render is sending <astro-static-slot> as placeholder values for static (non-hydrated) slots which Astro will then remove.

    This change is completely backwards compatible, but fixes bugs caused by combining ssr-only and client-side framework components like so:

    <Component>
      <div>
        <Component client:load>
          <span>Nested</span>
        </Component>
      </div>
    </Component>

Patch Changes

2.1.1

Patch Changes

2.1.0

Minor Changes

Patch Changes

2.0.1

Patch Changes

2.0.0

Major Changes

  • #5782 1f92d64ea Thanks @Princesseuh! - Remove support for Node 14. Minimum supported Node version is now >=16.12.0

  • #5685 f6cf92b48 Thanks @bluwy! - Upgrade to Vite 4. Please see its migration guide for more information.

  • #5806 7572f7402 Thanks @matthewp! - Make astro a peerDependency of integrations

    This marks astro as a peerDependency of several packages that are already getting major version bumps. This is so we can more properly track the dependency between them and what version of Astro they are being used with.

Patch Changes

2.0.0-beta.1

See changes in 2.0.0-beta.1

Major Changes

  • #5782 1f92d64ea Thanks @Princesseuh! - Remove support for Node 14. Minimum supported Node version is now >=16.12.0

  • #5806 7572f7402 Thanks @matthewp! - Make astro a peerDependency of integrations

    This marks astro as a peerDependency of several packages that are already getting major version bumps. This is so we can more properly track the dependency between them and what version of Astro they are being used with.

Patch Changes

2.0.0-beta.0

See changes in 2.0.0-beta.0

Major Changes

1.2.2

Patch Changes

1.2.1

Patch Changes

1.2.0

Minor Changes

  • #5075 d25f54cb9 Thanks @natemoo-re! - Add support for the appEntrypoint option, which accepts a root-relative path to an app entrypoint. The default export of this file should be a function that accepts a Vue App instance prior to rendering. This opens up the ability to extend the App instance with custom Vue plugins.

    // astro.config.mjs
    import { defineConfig } from 'astro/config';
    import vue from '@astrojs/vue';
    
    export default defineConfig({
      integrations: [
        vue({
          appEntrypoint: '/src/pages/_app',
        }),
      ],
    });
    // src/pages/_app.ts
    import type { App } from 'vue';
    import i18nPlugin from '../plugins/i18n';
    
    export default function setup(app: App) {
      app.use(i18nPlugin, {
        /* options */
      });
    }

1.1.0

Minor Changes

Patch Changes

  • #4842 812658ad2 Thanks @bluwy! - Add missing dependencies, support strict dependency installation (e.g. pnpm)

1.0.2

Patch Changes

1.0.1

Patch Changes

1.0.0

Major Changes

0.5.0

Minor Changes

0.4.1

Patch Changes

0.4.0

Minor Changes

0.3.1

Patch Changes

0.3.0

Minor Changes

0.2.1

Patch Changes

  • #3864 f9ed77bb Thanks @Princesseuh! - Add entrypoints for editor support for Vue and Svelte (destined to be used by our language server)

0.2.0

Minor Changes

  • #3652 7373d61c Thanks @natemoo-re! - Adds support for passing named slots from .astro => framework components.

    Inside your components, use the built-in slot API as you normally would.

0.1.5

Patch Changes

  • #3455 e9a77d86 Thanks @natemoo-re! - Update client hydration to check for ssr attribute. Requires astro@^1.0.0-beta.36.

0.1.4

Patch Changes

0.1.3

Patch Changes

0.1.2

Patch Changes

0.1.1

Patch Changes

0.1.0

Minor Changes

0.0.2

Patch Changes

  • #2847 3b621f7a Thanks @tony-sull! - Adds keywords to the official integrations to support discoverability on Astro's Integrations site

0.0.2-next.0

Patch Changes

  • #2847 3b621f7a Thanks @tony-sull! - Adds keywords to the official integrations to support discoverability on Astro's Integrations site