apollo
apollo copied to clipboard
feat!: Support Nuxt 3
This PR introduces a variety of changes, many of which are in-fact breaking changes.
The first and perhaps biggest being the adaptation of Vue 3 using Vue Apollo v4
Changes
clientConfigsis nowclientsauthenticationTypeis nowauthTypetokenNamedefaults toapollo:<client-name>.tokenproxyCookiesflagauthHeadersupporttokenStorage- ( cookie or localStorage )defineApolloClienthelper- auto imports gql wrapper and apollo composables
- new
apollo:authhook; replacesgetAuth - new
apollo:errorhook; replaces globalerrorHandler - Improved auth integration via cookie and localStorage
- Migrated from
subscriptions-transport-wstoGraphQLWsLinkvia graphql-ws - Improved loading of
.gql/.graphqlfiles (Vite & Webpack) - Improved SSR support
- Proper documentation site
- HMR for external client config files ( Greatly improves DX )
- support for Vue Apollo Composables ie:
useQuery,useMutation,useSubscription, etc...
Closes #312 Closes #297 Closes #426
I reviewed the docs and looks good to me now.
Beautiful work ❤️
Had some time to play around with this and test it out on a demo project, working really nicely. I'm not sure how useful I'll be, but if you need any help with testing or anything else let me know.
Thanks @Diizzayy and anyone else who has contributed, amazing work in putting this together!
Had some time to play around with this and test it out on a demo project, working really nicely. I'm not sure how useful I'll be, but if you need any help with testing or anything else let me know.
Thanks @Diizzayy and anyone else who has contributed, amazing work in putting this together!
Would love to play with this but having difficulties with upstream dependency conflicts, how'd you install it? Would also love to know what's hindering this from being merged.
Had some time to play around with this and test it out on a demo project, working really nicely. I'm not sure how useful I'll be, but if you need any help with testing or anything else let me know. Thanks @Diizzayy and anyone else who has contributed, amazing work in putting this together!
Would love to play with this but having difficulties with
upstream dependency conflicts, how'd you install it? Would also love to know what's hindering this from being merged.
I was also having issues so my installation is semi-manual, I'm only using it for testing at the moment so it's not critical to have it working seamlessly just yet:
- Add branch as dependency
yarn add Diizzayy/apollo-module#chore/nuxt3
- Separately clone branch, install packages and build
/dist
pnpm install && pnpm build
The build step would fail for me when doing it from
node_modules/@nuxtjs/apollowithin repository
- Copy
/distfiles to something likelib/apollo-modulein repository - Specify
postinstallscript inpackage.json
{
"scripts": {
"postinstall": "cp -R lib/apollo-module node_modules/@nuxtjs/apollo/dist"
}
}
Obviously this requires completing steps 2 & 3 again as updates are pushed to the branch.
@Diizzayy Thanks for putting in the effort to make it compatible with Nuxt 3! @kieusonlam, when will this change be merged into v5 and when do you plan to make v5 official?
@dwin94 This will be merged and released under v5 soon enough.
waiting for a stable release of nuxt?