├── .gitignore ├── src ├── index.ts └── withApollo.tsx ├── .travis.yml ├── rollup.config.ts ├── LICENSE ├── tsconfig.json ├── package.json ├── README.md └── CHANGELOG.md /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist 3 | *.orig 4 | .nvmrc 5 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | import withApollo from "./withApollo"; 2 | 3 | export { withApollo }; 4 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | sudo: true 3 | dist: trusty 4 | node_js: 5 | - "10" 6 | cache: 7 | directories: 8 | - node_modules 9 | install: npm install 10 | -------------------------------------------------------------------------------- /rollup.config.ts: -------------------------------------------------------------------------------- 1 | import commonjs from "@rollup/plugin-commonjs"; 2 | import resolve from "@rollup/plugin-node-resolve"; 3 | import peerDepsExternal from "rollup-plugin-peer-deps-external"; 4 | import { terser } from "rollup-plugin-terser"; 5 | import typescript from "rollup-plugin-typescript2"; 6 | import pkg from "./package.json"; 7 | 8 | export default { 9 | input: "src/index.ts", 10 | output: [ 11 | { 12 | file: pkg.main, 13 | format: "cjs", 14 | sourcemap: true, 15 | }, 16 | { 17 | file: pkg.module, 18 | format: "es", 19 | sourcemap: true, 20 | }, 21 | ], 22 | inlineDynamicImports: true, 23 | external: ["react"], 24 | plugins: [ 25 | peerDepsExternal(), 26 | resolve(), 27 | typescript({ 28 | useTsconfigDeclarationDir: true, 29 | clean: true, 30 | }), 31 | commonjs(), 32 | terser(), 33 | ], 34 | }; 35 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Adam Soffer 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es5" /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */, 4 | "module": "esnext" /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */, 5 | "lib": ["es6", "dom", "es2016", "es2017"], 6 | "jsx": "react" /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */, 7 | "outDir": "dist" /* Redirect output structure to the directory. */, 8 | "declaration": true /* Generates corresponding '.d.ts' file. */, 9 | "declarationDir": "dist" /* Place declaration files into directory */, 10 | "sourceMap": true /* Generates corresponding '.map' file. */, 11 | "strict": true /* Enable all strict type-checking options. */, 12 | "moduleResolution": "node" /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */, 13 | "allowSyntheticDefaultImports": true /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */, 14 | "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */, 15 | "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */ 16 | }, 17 | "include": ["src/**/*"] 18 | } 19 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "next-apollo", 3 | "version": "5.0.8", 4 | "description": "React higher-order component for using the Apollo GraphQL client inside Next.js", 5 | "main": "./dist/index.js", 6 | "module": "./dist/index.es.js", 7 | "scripts": { 8 | "build": "rollup -c rollup.config.ts", 9 | "prepublish": "npm run build", 10 | "precommit": "lint-staged" 11 | }, 12 | "lint-staged": { 13 | "*.{js,json}": [ 14 | "prettier --write --no-semi --single-quote --jsx-bracket-same-line", 15 | "git add" 16 | ] 17 | }, 18 | "repository": { 19 | "type": "git", 20 | "url": "git+https://github.com/adamsoffer/next-apollo.git" 21 | }, 22 | "keywords": [ 23 | "nextjs", 24 | "graphql", 25 | "apollo", 26 | "reactjs" 27 | ], 28 | "author": "Adam Soffer", 29 | "license": "MIT", 30 | "bugs": { 31 | "url": "https://github.com/adamsoffer/next-apollo/issues" 32 | }, 33 | "homepage": "https://github.com/adamsoffer/next-apollo#readme", 34 | "files": [ 35 | "dist" 36 | ], 37 | "peerDependencies": { 38 | "@apollo/client": "^3.0.0", 39 | "graphql": "^14.0.0 || ^15.0.0", 40 | "next": "^9.3.6 || ^10.0.0 || ^11.0.0", 41 | "react": "^16.8.0 || ^17.0.1" 42 | }, 43 | "devDependencies": { 44 | "@apollo/client": "^3.2.2", 45 | "@rollup/plugin-commonjs": "^15.1.0", 46 | "@rollup/plugin-node-resolve": "^9.0.0", 47 | "@types/react": "^16.9.51", 48 | "@types/react-dom": "^16.9.8", 49 | "graphql": "^15.3.0", 50 | "husky": "^4.3.0", 51 | "lint-staged": "^10.4.0", 52 | "next": "^9.5.4 || ^10.0.0 || ^11.0.0", 53 | "prettier": "^2.1.2", 54 | "rollup": "^2.29.0", 55 | "rollup-plugin-peer-deps-external": "^2.2.3", 56 | "rollup-plugin-terser": "^7.0.2", 57 | "rollup-plugin-typescript2": "^0.27.3", 58 | "typescript": "^4.0.3" 59 | }, 60 | "dependencies": {} 61 | } 62 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Next Apollo [![Build Status](https://travis-ci.org/adamsoffer/next-apollo.svg?branch=master)](https://travis-ci.org/adamsoffer/next-apollo) 2 | A package for using Apollo within a Next.js application. 3 | 4 | [Demo](https://next-with-apollo.vercel.app/) 5 | 6 | ## Installation 7 | 8 | This project assumes you have react, react-dom, and next installed. They're specified as peerDependencies. 9 | 10 | ``` 11 | npm install --save next-apollo graphql @apollo/client 12 | ``` 13 | 14 | ## Documentation 15 | 16 | Create an Apollo Client, pass it into to the `withApollo` higher-order component and export the returned component. 17 | 18 | ```jsx 19 | import { withApollo } from "next-apollo"; 20 | import { ApolloClient, InMemoryCache } from "@apollo/client"; 21 | 22 | const apolloClient = new ApolloClient({ 23 | uri: "https://api.graph.cool/simple/v1/cixmkt2ul01q00122mksg82pn", 24 | cache: new InMemoryCache(), 25 | }); 26 | 27 | export default withApollo(apolloClient); 28 | ``` 29 | 30 | Inside your Next.js page, wrap your component with your exported higher order component. 31 | 32 | ```jsx 33 | import withApollo from "../lib/apollo"; 34 | 35 | const Page = (props) =>
Hello World
; 36 | 37 | // Default export is required for Fast Refresh 38 | export default withApollo({ ssr: true })(Page); 39 | ``` 40 | 41 | That's it! 42 | 43 | ## How Does It Work? 44 | 45 | Next-apollo integrates Apollo seamlessly with Next by wrapping our pages inside a higher-order component (HOC). Using a HOC pattern we're able to pass down a central store of query result data created by Apollo into our React component hierarchy defined inside each page of our Next application. 46 | 47 | On initial page load, while on the server and inside `getInitialProps`, the Apollo method, `getDataFromTree`, is invoked and returns a promise; at the point in which the promise resolves, our Apollo Client store is completely initialized. 48 | 49 | ## License 50 | 51 | MIT 52 | -------------------------------------------------------------------------------- /src/withApollo.tsx: -------------------------------------------------------------------------------- 1 | import { 2 | ApolloClient, 3 | ApolloProvider, 4 | NormalizedCacheObject 5 | } from "@apollo/client"; 6 | import { NextPage, NextPageContext } from "next"; 7 | import App, { AppContext } from "next/app"; 8 | import React from "react"; 9 | 10 | // On the client, we store the Apollo Client in the following variable. 11 | // This prevents the client from reinitializing between page transitions. 12 | let globalApolloClient: ApolloClient | null = null; 13 | 14 | type WithApolloOptions = { 15 | apolloClient: ApolloClient; 16 | apolloState: NormalizedCacheObject; 17 | }; 18 | 19 | type ContextWithApolloOptions = AppContext & { 20 | ctx: { apolloClient: WithApolloOptions["apolloClient"] }; 21 | } & NextPageContext & 22 | WithApolloOptions; 23 | 24 | type ApolloClientParam = ApolloClient 25 | | ((ctx?: NextPageContext) => ApolloClient) 26 | 27 | /** 28 | * Installs the Apollo Client on NextPageContext 29 | * or NextAppContext. Useful if you want to use apolloClient 30 | * inside getStaticProps, getStaticPaths or getServerSideProps 31 | * @param {NextPageContext | AppContext} ctx 32 | */ 33 | export const initOnContext = ( 34 | acp: ApolloClientParam, 35 | ctx: ContextWithApolloOptions 36 | ) => { 37 | const ac = typeof acp === 'function' ? acp(ctx) : acp as ApolloClient; 38 | const inAppContext = Boolean(ctx.ctx); 39 | 40 | // We consider installing `withApollo({ ssr: true })` on global App level 41 | // as antipattern since it disables project wide Automatic Static Optimization. 42 | if (process.env.NODE_ENV === "development") { 43 | if (inAppContext) { 44 | console.warn( 45 | "Warning: You have opted-out of Automatic Static Optimization due to `withApollo` in `pages/_app`.\n" + 46 | "Read more: https://err.sh/next.js/opt-out-auto-static-optimization\n" 47 | ); 48 | } 49 | } 50 | 51 | // Initialize ApolloClient if not already done 52 | const apolloClient = 53 | ctx.apolloClient || 54 | initApolloClient(ac, ctx.apolloState || {}, inAppContext ? ctx.ctx : ctx); 55 | 56 | // We send the Apollo Client as a prop to the component to avoid calling initApollo() twice in the server. 57 | // Otherwise, the component would have to call initApollo() again but this 58 | // time without the context. Once that happens, the following code will make sure we send 59 | // the prop as `null` to the browser. 60 | (apolloClient as ApolloClient & { 61 | toJSON: () => { [key: string]: any } | null; 62 | }).toJSON = () => null; 63 | 64 | // Add apolloClient to NextPageContext & NextAppContext. 65 | // This allows us to consume the apolloClient inside our 66 | // custom `getInitialProps({ apolloClient })`. 67 | ctx.apolloClient = apolloClient; 68 | if (inAppContext) { 69 | ctx.ctx.apolloClient = apolloClient; 70 | } 71 | 72 | return ctx; 73 | }; 74 | 75 | /** 76 | * Always creates a new apollo client on the server 77 | * Creates or reuses apollo client in the browser. 78 | * @param {NormalizedCacheObject} initialState 79 | * @param {NextPageContext} ctx 80 | */ 81 | const initApolloClient = ( 82 | acp: ApolloClientParam, 83 | initialState: NormalizedCacheObject, 84 | ctx: NextPageContext | undefined 85 | ) => { 86 | const apolloClient = typeof acp === 'function' ? acp(ctx) : acp as ApolloClient; 87 | 88 | // Make sure to create a new client for every server-side request so that data 89 | // isn't shared between connections (which would be bad) 90 | if (typeof window === "undefined") { 91 | return createApolloClient(apolloClient, initialState, ctx); 92 | } 93 | 94 | // Reuse client on the client-side 95 | if (!globalApolloClient) { 96 | globalApolloClient = createApolloClient(apolloClient, initialState, ctx); 97 | } 98 | 99 | return globalApolloClient; 100 | }; 101 | 102 | /** 103 | * Creates a withApollo HOC 104 | * that provides the apolloContext 105 | * to a next.js Page or AppTree. 106 | * @param {Object} ac 107 | * @param {Boolean} [withApolloOptions.ssr=false] 108 | * @returns {(PageComponent: NextPage

) => ComponentClass

| FunctionComponent

} 109 | */ 110 | export default function withApollo(ac: ApolloClientParam) { 111 | return ({ ssr = false } = {}) => (PageComponent: NextPage) => { 112 | const WithApollo = (pageProps: P & WithApolloOptions) => { 113 | let client: ApolloClient; 114 | if (pageProps.apolloClient) { 115 | // Happens on: getDataFromTree & next.js ssr 116 | client = pageProps.apolloClient; 117 | } else { 118 | // Happens on: next.js csr 119 | client = initApolloClient(ac, pageProps.apolloState, undefined); 120 | } 121 | 122 | return ( 123 | 124 | 125 | 126 | ); 127 | }; 128 | 129 | // Set the correct displayName in development 130 | if (process.env.NODE_ENV !== "production") { 131 | const displayName = 132 | PageComponent.displayName || PageComponent.name || "Component"; 133 | WithApollo.displayName = `withApollo(${displayName})`; 134 | } 135 | 136 | if (ssr || PageComponent.getInitialProps) { 137 | WithApollo.getInitialProps = async (ctx: ContextWithApolloOptions) => { 138 | const inAppContext = Boolean(ctx.ctx); 139 | const { apolloClient } = initOnContext(ac, ctx); 140 | 141 | // Run wrapped getInitialProps methods 142 | let pageProps = {}; 143 | if (PageComponent.getInitialProps) { 144 | pageProps = await PageComponent.getInitialProps(ctx); 145 | } else if (inAppContext) { 146 | pageProps = await App.getInitialProps(ctx); 147 | } 148 | 149 | // Only on the server: 150 | if (typeof window === "undefined") { 151 | const { AppTree } = ctx; 152 | // When redirecting, the response is finished. 153 | // No point in continuing to render 154 | if (ctx.res && ctx.res.writableEnded) { 155 | return pageProps; 156 | } 157 | 158 | // Only if dataFromTree is enabled 159 | if (ssr && AppTree) { 160 | try { 161 | // Import `@apollo/react-ssr` dynamically. 162 | // We don't want to have this in our client bundle. 163 | const { getDataFromTree } = await import( 164 | "@apollo/client/react/ssr" 165 | ); 166 | 167 | // Since AppComponents and PageComponents have different context types 168 | // we need to modify their props a little. 169 | let props; 170 | if (inAppContext) { 171 | props = { ...pageProps, apolloClient }; 172 | } else { 173 | props = { pageProps: { ...pageProps, apolloClient } }; 174 | } 175 | 176 | // Take the Next.js AppTree, determine which queries are needed to render, 177 | // and fetch them. This method can be pretty slow since it renders 178 | // your entire AppTree once for every query. Check out apollo fragments 179 | // if you want to reduce the number of rerenders. 180 | // https://www.apollographql.com/docs/react/data/fragments/ 181 | 182 | // TypeScript fails this check for some reason. 183 | // should be alright. 184 | // @ts-ignore 185 | await getDataFromTree(); 186 | } catch (error) { 187 | // Prevent Apollo Client GraphQL errors from crashing SSR. 188 | // Handle them in components via the data.error prop: 189 | // https://www.apollographql.com/docs/react/api/react-apollo.html#graphql-query-data-error 190 | console.error("Error while running `getDataFromTree`", error); 191 | } 192 | 193 | // getDataFromTree does not call componentWillUnmount 194 | // head side effect therefore need to be cleared manually 195 | } 196 | } 197 | 198 | return { 199 | ...pageProps, 200 | // Extract query data from the Apollo store 201 | apolloState: apolloClient.cache.extract(), 202 | // Provide the client for ssr. As soon as this payload 203 | // gets JSON.stringified it will remove itself. 204 | apolloClient: ctx.apolloClient, 205 | }; 206 | }; 207 | } 208 | 209 | return WithApollo; 210 | }; 211 | }; 212 | 213 | const createApolloClient = ( 214 | acp: ApolloClientParam, 215 | initialState: NormalizedCacheObject, 216 | ctx: NextPageContext | undefined 217 | ) => { 218 | const apolloClient = typeof acp === 'function' ? acp(ctx) : acp as ApolloClient; 219 | // The `ctx` (NextPageContext) will only be present on the server. 220 | // use it to extract auth headers (ctx.req) or similar. 221 | (apolloClient as ApolloClient & { 222 | ssrMode: boolean; 223 | }).ssrMode = Boolean(ctx); 224 | apolloClient.cache.restore(initialState); 225 | 226 | return apolloClient; 227 | }; 228 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## [5.0.8](https://github.com/adamsoffer/next-apollo/tree/5.0.8) (2022-01-17) 4 | 5 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/5.0.7...5.0.8) 6 | 7 | **Closed issues:** 8 | 9 | - Outdated next.js peer dependency [\#106](https://github.com/adamsoffer/next-apollo/issues/106) 10 | 11 | **Merged pull requests:** 12 | 13 | - Update dependencies + peerDependencies to allow for next 11 [\#110](https://github.com/adamsoffer/next-apollo/pull/110) ([TheCleric](https://github.com/TheCleric)) 14 | 15 | ## [5.0.7](https://github.com/adamsoffer/next-apollo/tree/5.0.7) (2021-09-22) 16 | 17 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/5.0.6...5.0.7) 18 | 19 | **Closed issues:** 20 | 21 | - With Apollo works only on a few pages [\#104](https://github.com/adamsoffer/next-apollo/issues/104) 22 | - Breaking: v5.0.5 lacks `dist` folder [\#103](https://github.com/adamsoffer/next-apollo/issues/103) 23 | 24 | **Merged pull requests:** 25 | 26 | - Bump next from 10.0.0 to 11.1.0 [\#105](https://github.com/adamsoffer/next-apollo/pull/105) ([dependabot[bot]](https://github.com/apps/dependabot)) 27 | 28 | ## [5.0.6](https://github.com/adamsoffer/next-apollo/tree/5.0.6) (2021-06-25) 29 | 30 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/5.0.5...5.0.6) 31 | 32 | **Closed issues:** 33 | 34 | - Breaking Change with Nextjs 11 [\#101](https://github.com/adamsoffer/next-apollo/issues/101) 35 | 36 | ## [5.0.5](https://github.com/adamsoffer/next-apollo/tree/5.0.5) (2021-06-24) 37 | 38 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v5.0.4...5.0.5) 39 | 40 | **Closed issues:** 41 | 42 | - Question: Is it possible to forward cookies to the graphql server? [\#99](https://github.com/adamsoffer/next-apollo/issues/99) 43 | - Could not find "client" in the context or passed in as an option [\#96](https://github.com/adamsoffer/next-apollo/issues/96) 44 | - How to Implement Token Refresh? \(cookies\) [\#89](https://github.com/adamsoffer/next-apollo/issues/89) 45 | - Error while running `getDataFromTree` TypeError: Object\(...\) is not a function [\#88](https://github.com/adamsoffer/next-apollo/issues/88) 46 | - Fetching data on client side after routing [\#87](https://github.com/adamsoffer/next-apollo/issues/87) 47 | 48 | **Merged pull requests:** 49 | 50 | - Update withApollo.tsx - This update removes the breaking changes of React 11. [\#102](https://github.com/adamsoffer/next-apollo/pull/102) ([Lwachira](https://github.com/Lwachira)) 51 | 52 | ## [v5.0.4](https://github.com/adamsoffer/next-apollo/tree/v5.0.4) (2020-11-10) 53 | 54 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v5.0.3...v5.0.4) 55 | 56 | **Closed issues:** 57 | 58 | - Cannot find ctx to use inside headers like I did in older versions [\#86](https://github.com/adamsoffer/next-apollo/issues/86) 59 | 60 | **Merged pull requests:** 61 | 62 | - Update dependencies to allow next@10 [\#85](https://github.com/adamsoffer/next-apollo/pull/85) ([bubba](https://github.com/bubba)) 63 | 64 | ## [v5.0.3](https://github.com/adamsoffer/next-apollo/tree/v5.0.3) (2020-11-02) 65 | 66 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v5.0.2...v5.0.3) 67 | 68 | **Closed issues:** 69 | 70 | - Can we have an access to context ctx in apolloClient ? [\#82](https://github.com/adamsoffer/next-apollo/issues/82) 71 | 72 | **Merged pull requests:** 73 | 74 | - Fix page props type inference [\#84](https://github.com/adamsoffer/next-apollo/pull/84) ([bubba](https://github.com/bubba)) 75 | 76 | ## [v5.0.2](https://github.com/adamsoffer/next-apollo/tree/v5.0.2) (2020-10-30) 77 | 78 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v5.0.1...v5.0.2) 79 | 80 | **Merged pull requests:** 81 | 82 | - Optionally pass context to client [\#83](https://github.com/adamsoffer/next-apollo/pull/83) ([bubba](https://github.com/bubba)) 83 | 84 | ## [v5.0.1](https://github.com/adamsoffer/next-apollo/tree/v5.0.1) (2020-10-24) 85 | 86 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v5.0.0...v5.0.1) 87 | 88 | **Closed issues:** 89 | 90 | - New release: apollo-client v3 [\#78](https://github.com/adamsoffer/next-apollo/issues/78) 91 | - Rewrite in Typescript [\#71](https://github.com/adamsoffer/next-apollo/issues/71) 92 | 93 | **Merged pull requests:** 94 | 95 | - TypeScript support \(\#71\) [\#81](https://github.com/adamsoffer/next-apollo/pull/81) ([ecklf](https://github.com/ecklf)) 96 | - Bump elliptic from 6.5.2 to 6.5.3 [\#76](https://github.com/adamsoffer/next-apollo/pull/76) ([dependabot[bot]](https://github.com/apps/dependabot)) 97 | 98 | ## [v5.0.0](https://github.com/adamsoffer/next-apollo/tree/v5.0.0) (2020-08-05) 99 | 100 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v4.0.1...v5.0.0) 101 | 102 | **Fixed bugs:** 103 | 104 | - Next v8+ breaks Data Prefetching [\#26](https://github.com/adamsoffer/next-apollo/issues/26) 105 | 106 | **Closed issues:** 107 | 108 | - Usage with static generation [\#73](https://github.com/adamsoffer/next-apollo/issues/73) 109 | - Typescript support? [\#66](https://github.com/adamsoffer/next-apollo/issues/66) 110 | 111 | **Merged pull requests:** 112 | 113 | - Updated apollo client \(v3\) [\#77](https://github.com/adamsoffer/next-apollo/pull/77) ([qathom](https://github.com/qathom)) 114 | - Bump lodash from 4.17.15 to 4.17.19 [\#75](https://github.com/adamsoffer/next-apollo/pull/75) ([dependabot[bot]](https://github.com/apps/dependabot)) 115 | 116 | ## [v4.0.1](https://github.com/adamsoffer/next-apollo/tree/v4.0.1) (2020-05-01) 117 | 118 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v4.0.0...v4.0.1) 119 | 120 | **Closed issues:** 121 | 122 | - Add additional getInitialProps to withData [\#63](https://github.com/adamsoffer/next-apollo/issues/63) 123 | - Server side authentication with cookies [\#60](https://github.com/adamsoffer/next-apollo/issues/60) 124 | 125 | ## [v4.0.0](https://github.com/adamsoffer/next-apollo/tree/v4.0.0) (2020-05-01) 126 | 127 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.1.10...v4.0.0) 128 | 129 | **Closed issues:** 130 | 131 | - Using fetchPolicy: "no-cache" the component in ssr keeps in loading state [\#67](https://github.com/adamsoffer/next-apollo/issues/67) 132 | 133 | **Merged pull requests:** 134 | 135 | - Bump acorn from 6.3.0 to 6.4.1 [\#69](https://github.com/adamsoffer/next-apollo/pull/69) ([dependabot[bot]](https://github.com/apps/dependabot)) 136 | - Pass ctx to apolloClient [\#65](https://github.com/adamsoffer/next-apollo/pull/65) ([alyavasilyeva](https://github.com/alyavasilyeva)) 137 | 138 | ## [v3.1.10](https://github.com/adamsoffer/next-apollo/tree/v3.1.10) (2019-11-18) 139 | 140 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.1.9...v3.1.10) 141 | 142 | **Merged pull requests:** 143 | 144 | - Adds babel/runtime to the dependencies [\#64](https://github.com/adamsoffer/next-apollo/pull/64) ([arcanis](https://github.com/arcanis)) 145 | - Expose apolloClient in pageContext [\#62](https://github.com/adamsoffer/next-apollo/pull/62) ([guibernardino](https://github.com/guibernardino)) 146 | - ensures getInitialProps of wrapped component can be run [\#61](https://github.com/adamsoffer/next-apollo/pull/61) ([gregorskii](https://github.com/gregorskii)) 147 | 148 | ## [v3.1.9](https://github.com/adamsoffer/next-apollo/tree/v3.1.9) (2019-11-07) 149 | 150 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.1.6...v3.1.9) 151 | 152 | **Closed issues:** 153 | 154 | - How to make getInitialProps\(\) work on Pages [\#24](https://github.com/adamsoffer/next-apollo/issues/24) 155 | 156 | ## [v3.1.6](https://github.com/adamsoffer/next-apollo/tree/v3.1.6) (2019-10-30) 157 | 158 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.1.5...v3.1.6) 159 | 160 | **Closed issues:** 161 | 162 | - question: server rendering for seo [\#59](https://github.com/adamsoffer/next-apollo/issues/59) 163 | - Data prefetch when changing pages [\#54](https://github.com/adamsoffer/next-apollo/issues/54) 164 | - useSubscription hook not working properly [\#43](https://github.com/adamsoffer/next-apollo/issues/43) 165 | 166 | ## [v3.1.5](https://github.com/adamsoffer/next-apollo/tree/v3.1.5) (2019-09-22) 167 | 168 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.1.4...v3.1.5) 169 | 170 | **Closed issues:** 171 | 172 | - Module not found [\#55](https://github.com/adamsoffer/next-apollo/issues/55) 173 | 174 | **Merged pull requests:** 175 | 176 | - Fix next-server reference in Link [\#56](https://github.com/adamsoffer/next-apollo/pull/56) ([freeatnet](https://github.com/freeatnet)) 177 | 178 | ## [v3.1.4](https://github.com/adamsoffer/next-apollo/tree/v3.1.4) (2019-09-01) 179 | 180 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.1.3...v3.1.4) 181 | 182 | ## [v3.1.3](https://github.com/adamsoffer/next-apollo/tree/v3.1.3) (2019-09-01) 183 | 184 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/3.1.2...v3.1.3) 185 | 186 | **Closed issues:** 187 | 188 | - Ship a changelog? [\#50](https://github.com/adamsoffer/next-apollo/issues/50) 189 | - Cannot read property 'pathname' of undefined [\#31](https://github.com/adamsoffer/next-apollo/issues/31) 190 | - Dependency on next-server [\#30](https://github.com/adamsoffer/next-apollo/issues/30) 191 | 192 | ## [3.1.2](https://github.com/adamsoffer/next-apollo/tree/3.1.2) (2019-09-01) 193 | 194 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.1.0...3.1.2) 195 | 196 | **Implemented enhancements:** 197 | 198 | - Integrate with new @apollo/react-hooks [\#37](https://github.com/adamsoffer/next-apollo/issues/37) 199 | 200 | **Closed issues:** 201 | 202 | - Update implementation to use AppTree [\#51](https://github.com/adamsoffer/next-apollo/issues/51) 203 | - Concerns about security with credentials visible on the front end [\#32](https://github.com/adamsoffer/next-apollo/issues/32) 204 | 205 | **Merged pull requests:** 206 | 207 | - Bump mixin-deep from 1.3.1 to 1.3.2 [\#53](https://github.com/adamsoffer/next-apollo/pull/53) ([dependabot[bot]](https://github.com/apps/dependabot)) 208 | 209 | ## [v3.1.0](https://github.com/adamsoffer/next-apollo/tree/v3.1.0) (2019-08-24) 210 | 211 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.0.3...v3.1.0) 212 | 213 | **Closed issues:** 214 | 215 | - \[Documentation\] Query component no longer supported? [\#49](https://github.com/adamsoffer/next-apollo/issues/49) 216 | - getDataFromTree is not a function [\#47](https://github.com/adamsoffer/next-apollo/issues/47) 217 | 218 | **Merged pull requests:** 219 | 220 | - Upgrade apollo-common to ^3.0.1 and move @apollo packages to peerDependencies [\#52](https://github.com/adamsoffer/next-apollo/pull/52) ([MrOrz](https://github.com/MrOrz)) 221 | - Bump js-yaml from 3.12.1 to 3.13.1 [\#48](https://github.com/adamsoffer/next-apollo/pull/48) ([dependabot[bot]](https://github.com/apps/dependabot)) 222 | 223 | ## [v3.0.3](https://github.com/adamsoffer/next-apollo/tree/v3.0.3) (2019-07-28) 224 | 225 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.0.2...v3.0.3) 226 | 227 | ## [v3.0.2](https://github.com/adamsoffer/next-apollo/tree/v3.0.2) (2019-07-28) 228 | 229 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.0.1...v3.0.2) 230 | 231 | ## [v3.0.1](https://github.com/adamsoffer/next-apollo/tree/v3.0.1) (2019-07-27) 232 | 233 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.0.0...v3.0.1) 234 | 235 | **Closed issues:** 236 | 237 | - Error: Could not find "client" [\#45](https://github.com/adamsoffer/next-apollo/issues/45) 238 | 239 | **Merged pull requests:** 240 | 241 | - Bump lodash from 4.17.11 to 4.17.15 [\#46](https://github.com/adamsoffer/next-apollo/pull/46) ([dependabot[bot]](https://github.com/apps/dependabot)) 242 | 243 | ## [v3.0.0](https://github.com/adamsoffer/next-apollo/tree/v3.0.0) (2019-07-24) 244 | 245 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.1.3...v3.0.0) 246 | 247 | **Merged pull requests:** 248 | 249 | - Bump version [\#41](https://github.com/adamsoffer/next-apollo/pull/41) ([adamsoffer](https://github.com/adamsoffer)) 250 | 251 | ## [v2.1.3](https://github.com/adamsoffer/next-apollo/tree/v2.1.3) (2019-06-20) 252 | 253 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.0.0-beta.5...v2.1.3) 254 | 255 | **Closed issues:** 256 | 257 | - TypeError: Cannot assign to read only property '\_\_esModule' of object '\#\' thrown by apollo-boost dependency [\#39](https://github.com/adamsoffer/next-apollo/issues/39) 258 | 259 | **Merged pull requests:** 260 | 261 | - Updated apollo-boost dependency to fix https://github.com/apollograph… [\#40](https://github.com/adamsoffer/next-apollo/pull/40) ([kapoko](https://github.com/kapoko)) 262 | 263 | ## [v3.0.0-beta.5](https://github.com/adamsoffer/next-apollo/tree/v3.0.0-beta.5) (2019-06-01) 264 | 265 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.0.0-beta.4...v3.0.0-beta.5) 266 | 267 | ## [v3.0.0-beta.4](https://github.com/adamsoffer/next-apollo/tree/v3.0.0-beta.4) (2019-06-01) 268 | 269 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.0.0-beta.3...v3.0.0-beta.4) 270 | 271 | ## [v3.0.0-beta.3](https://github.com/adamsoffer/next-apollo/tree/v3.0.0-beta.3) (2019-06-01) 272 | 273 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.0.0-beta.2...v3.0.0-beta.3) 274 | 275 | ## [v3.0.0-beta.2](https://github.com/adamsoffer/next-apollo/tree/v3.0.0-beta.2) (2019-06-01) 276 | 277 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.0.0-beta.1...v3.0.0-beta.2) 278 | 279 | ## [v3.0.0-beta.1](https://github.com/adamsoffer/next-apollo/tree/v3.0.0-beta.1) (2019-06-01) 280 | 281 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v3.0.0-beta.0...v3.0.0-beta.1) 282 | 283 | ## [v3.0.0-beta.0](https://github.com/adamsoffer/next-apollo/tree/v3.0.0-beta.0) (2019-05-31) 284 | 285 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.1.2...v3.0.0-beta.0) 286 | 287 | ## [v2.1.2](https://github.com/adamsoffer/next-apollo/tree/v2.1.2) (2019-05-22) 288 | 289 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.1.1...v2.1.2) 290 | 291 | ## [v2.1.1](https://github.com/adamsoffer/next-apollo/tree/v2.1.1) (2019-05-22) 292 | 293 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.0.9...v2.1.1) 294 | 295 | **Closed issues:** 296 | 297 | - Installing react as a dependency causes Invalid Hook Call Warning [\#35](https://github.com/adamsoffer/next-apollo/issues/35) 298 | - Dynamic fetching based on route [\#33](https://github.com/adamsoffer/next-apollo/issues/33) 299 | - Exact versions in package.json causing duplicate react installs? [\#28](https://github.com/adamsoffer/next-apollo/issues/28) 300 | - This dependency was not found: ./node\_modules/next-apollo/dist/link.js [\#25](https://github.com/adamsoffer/next-apollo/issues/25) 301 | - Remove deprecated apollo-client-present package in favor of apollo-boost [\#23](https://github.com/adamsoffer/next-apollo/issues/23) 302 | 303 | **Merged pull requests:** 304 | 305 | - migrate to apollo-boost [\#38](https://github.com/adamsoffer/next-apollo/pull/38) ([ascott1](https://github.com/ascott1)) 306 | - Move react, react-dom, react-apollo, graphql to peerDependencies [\#36](https://github.com/adamsoffer/next-apollo/pull/36) ([Hilaryous](https://github.com/Hilaryous)) 307 | - Adds missing comma to example in README. [\#27](https://github.com/adamsoffer/next-apollo/pull/27) ([tmr08c](https://github.com/tmr08c)) 308 | 309 | ## [v2.0.9](https://github.com/adamsoffer/next-apollo/tree/v2.0.9) (2019-02-21) 310 | 311 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.0.8...v2.0.9) 312 | 313 | ## [v2.0.8](https://github.com/adamsoffer/next-apollo/tree/v2.0.8) (2019-02-14) 314 | 315 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.0.7...v2.0.8) 316 | 317 | **Closed issues:** 318 | 319 | - Eliminating Apollo in the production bundle [\#20](https://github.com/adamsoffer/next-apollo/issues/20) 320 | 321 | ## [v2.0.7](https://github.com/adamsoffer/next-apollo/tree/v2.0.7) (2019-01-10) 322 | 323 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.0.6...v2.0.7) 324 | 325 | ## [v2.0.6](https://github.com/adamsoffer/next-apollo/tree/v2.0.6) (2019-01-02) 326 | 327 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.0.5...v2.0.6) 328 | 329 | ## [v2.0.5](https://github.com/adamsoffer/next-apollo/tree/v2.0.5) (2019-01-02) 330 | 331 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.0.4...v2.0.5) 332 | 333 | ## [v2.0.4](https://github.com/adamsoffer/next-apollo/tree/v2.0.4) (2019-01-02) 334 | 335 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.0.3...v2.0.4) 336 | 337 | **Merged pull requests:** 338 | 339 | - ci: test Node.js 6, 8, 10 and 11 [\#22](https://github.com/adamsoffer/next-apollo/pull/22) ([DanielRuf](https://github.com/DanielRuf)) 340 | 341 | ## [v2.0.3](https://github.com/adamsoffer/next-apollo/tree/v2.0.3) (2019-01-02) 342 | 343 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.0.2...v2.0.3) 344 | 345 | ## [v2.0.2](https://github.com/adamsoffer/next-apollo/tree/v2.0.2) (2018-11-12) 346 | 347 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.0.1...v2.0.2) 348 | 349 | ## [v2.0.1](https://github.com/adamsoffer/next-apollo/tree/v2.0.1) (2018-10-31) 350 | 351 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v2.0.0...v2.0.1) 352 | 353 | **Closed issues:** 354 | 355 | - Is the graphql server URI required to be absolute? [\#21](https://github.com/adamsoffer/next-apollo/issues/21) 356 | - Is my example correct ? [\#18](https://github.com/adamsoffer/next-apollo/issues/18) 357 | 358 | **Merged pull requests:** 359 | 360 | - New HttpLink API [\#19](https://github.com/adamsoffer/next-apollo/pull/19) ([bogas04](https://github.com/bogas04)) 361 | 362 | ## [v2.0.0](https://github.com/adamsoffer/next-apollo/tree/v2.0.0) (2018-06-15) 363 | 364 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.13...v2.0.0) 365 | 366 | **Closed issues:** 367 | 368 | - Expose entirety of req and not just headers [\#15](https://github.com/adamsoffer/next-apollo/issues/15) 369 | - Direct Cache access [\#14](https://github.com/adamsoffer/next-apollo/issues/14) 370 | 371 | **Merged pull requests:** 372 | 373 | - Expose context object in config function [\#17](https://github.com/adamsoffer/next-apollo/pull/17) ([jupl](https://github.com/jupl)) 374 | 375 | ## [v1.0.13](https://github.com/adamsoffer/next-apollo/tree/v1.0.13) (2018-03-17) 376 | 377 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.12...v1.0.13) 378 | 379 | **Closed issues:** 380 | 381 | - Cache [\#11](https://github.com/adamsoffer/next-apollo/issues/11) 382 | 383 | **Merged pull requests:** 384 | 385 | - Add customCache to config [\#13](https://github.com/adamsoffer/next-apollo/pull/13) ([razor-x](https://github.com/razor-x)) 386 | - Added Warning about Cache and SSR [\#12](https://github.com/adamsoffer/next-apollo/pull/12) ([couturecraigj](https://github.com/couturecraigj)) 387 | 388 | ## [v1.0.12](https://github.com/adamsoffer/next-apollo/tree/v1.0.12) (2018-02-26) 389 | 390 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.11...v1.0.12) 391 | 392 | **Closed issues:** 393 | 394 | - Support Auth Integration [\#3](https://github.com/adamsoffer/next-apollo/issues/3) 395 | - Support Redux Integration [\#2](https://github.com/adamsoffer/next-apollo/issues/2) 396 | 397 | ## [v1.0.11](https://github.com/adamsoffer/next-apollo/tree/v1.0.11) (2018-02-09) 398 | 399 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.10...v1.0.11) 400 | 401 | **Closed issues:** 402 | 403 | - Subscriptions? [\#5](https://github.com/adamsoffer/next-apollo/issues/5) 404 | 405 | ## [v1.0.10](https://github.com/adamsoffer/next-apollo/tree/v1.0.10) (2018-01-07) 406 | 407 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.9...v1.0.10) 408 | 409 | **Merged pull requests:** 410 | 411 | - Made it possible to access request headers [\#9](https://github.com/adamsoffer/next-apollo/pull/9) ([thealjey](https://github.com/thealjey)) 412 | 413 | ## [v1.0.9](https://github.com/adamsoffer/next-apollo/tree/v1.0.9) (2017-12-28) 414 | 415 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.8...v1.0.9) 416 | 417 | ## [v1.0.8](https://github.com/adamsoffer/next-apollo/tree/v1.0.8) (2017-12-28) 418 | 419 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.7...v1.0.8) 420 | 421 | ## [v1.0.7](https://github.com/adamsoffer/next-apollo/tree/v1.0.7) (2017-12-27) 422 | 423 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/1.0.6...v1.0.7) 424 | 425 | **Closed issues:** 426 | 427 | - Using this with getInitialProps\(\) in pages [\#6](https://github.com/adamsoffer/next-apollo/issues/6) 428 | 429 | **Merged pull requests:** 430 | 431 | - Update initApollo.js [\#8](https://github.com/adamsoffer/next-apollo/pull/8) ([thealjey](https://github.com/thealjey)) 432 | - Pass context directly [\#7](https://github.com/adamsoffer/next-apollo/pull/7) ([thealjey](https://github.com/thealjey)) 433 | 434 | ## [1.0.6](https://github.com/adamsoffer/next-apollo/tree/1.0.6) (2017-11-16) 435 | 436 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/1.0.5...1.0.6) 437 | 438 | **Closed issues:** 439 | 440 | - typo in variable name? [\#4](https://github.com/adamsoffer/next-apollo/issues/4) 441 | 442 | ## [1.0.5](https://github.com/adamsoffer/next-apollo/tree/1.0.5) (2017-11-16) 443 | 444 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.4...1.0.5) 445 | 446 | ## [v1.0.4](https://github.com/adamsoffer/next-apollo/tree/v1.0.4) (2017-10-30) 447 | 448 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.3...v1.0.4) 449 | 450 | **Closed issues:** 451 | 452 | - Make next-apollo a HOC [\#1](https://github.com/adamsoffer/next-apollo/issues/1) 453 | 454 | ## [v1.0.3](https://github.com/adamsoffer/next-apollo/tree/v1.0.3) (2017-10-30) 455 | 456 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.2...v1.0.3) 457 | 458 | ## [v1.0.2](https://github.com/adamsoffer/next-apollo/tree/v1.0.2) (2017-10-30) 459 | 460 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.1...v1.0.2) 461 | 462 | ## [v1.0.1](https://github.com/adamsoffer/next-apollo/tree/v1.0.1) (2017-10-28) 463 | 464 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v1.0.0...v1.0.1) 465 | 466 | ## [v1.0.0](https://github.com/adamsoffer/next-apollo/tree/v1.0.0) (2017-10-28) 467 | 468 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.20...v1.0.0) 469 | 470 | ## [v0.0.20](https://github.com/adamsoffer/next-apollo/tree/v0.0.20) (2017-10-27) 471 | 472 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.19...v0.0.20) 473 | 474 | ## [v0.0.19](https://github.com/adamsoffer/next-apollo/tree/v0.0.19) (2017-10-27) 475 | 476 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.18...v0.0.19) 477 | 478 | ## [v0.0.18](https://github.com/adamsoffer/next-apollo/tree/v0.0.18) (2017-10-27) 479 | 480 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.17...v0.0.18) 481 | 482 | ## [v0.0.17](https://github.com/adamsoffer/next-apollo/tree/v0.0.17) (2017-10-27) 483 | 484 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.16...v0.0.17) 485 | 486 | ## [v0.0.16](https://github.com/adamsoffer/next-apollo/tree/v0.0.16) (2017-10-27) 487 | 488 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.15...v0.0.16) 489 | 490 | ## [v0.0.15](https://github.com/adamsoffer/next-apollo/tree/v0.0.15) (2017-10-27) 491 | 492 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.14...v0.0.15) 493 | 494 | ## [v0.0.14](https://github.com/adamsoffer/next-apollo/tree/v0.0.14) (2017-10-27) 495 | 496 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.13...v0.0.14) 497 | 498 | ## [v0.0.13](https://github.com/adamsoffer/next-apollo/tree/v0.0.13) (2017-10-27) 499 | 500 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.12...v0.0.13) 501 | 502 | ## [v0.0.12](https://github.com/adamsoffer/next-apollo/tree/v0.0.12) (2017-10-27) 503 | 504 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.11...v0.0.12) 505 | 506 | ## [v0.0.11](https://github.com/adamsoffer/next-apollo/tree/v0.0.11) (2017-10-27) 507 | 508 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.10...v0.0.11) 509 | 510 | ## [v0.0.10](https://github.com/adamsoffer/next-apollo/tree/v0.0.10) (2017-10-27) 511 | 512 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.9...v0.0.10) 513 | 514 | ## [v0.0.9](https://github.com/adamsoffer/next-apollo/tree/v0.0.9) (2017-10-27) 515 | 516 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.8...v0.0.9) 517 | 518 | ## [v0.0.8](https://github.com/adamsoffer/next-apollo/tree/v0.0.8) (2017-10-27) 519 | 520 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.7...v0.0.8) 521 | 522 | ## [v0.0.7](https://github.com/adamsoffer/next-apollo/tree/v0.0.7) (2017-10-27) 523 | 524 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.6...v0.0.7) 525 | 526 | ## [v0.0.6](https://github.com/adamsoffer/next-apollo/tree/v0.0.6) (2017-10-27) 527 | 528 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.5...v0.0.6) 529 | 530 | ## [v0.0.5](https://github.com/adamsoffer/next-apollo/tree/v0.0.5) (2017-10-27) 531 | 532 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.4...v0.0.5) 533 | 534 | ## [v0.0.4](https://github.com/adamsoffer/next-apollo/tree/v0.0.4) (2017-10-27) 535 | 536 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.3...v0.0.4) 537 | 538 | ## [v0.0.3](https://github.com/adamsoffer/next-apollo/tree/v0.0.3) (2017-10-27) 539 | 540 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.2...v0.0.3) 541 | 542 | ## [v0.0.2](https://github.com/adamsoffer/next-apollo/tree/v0.0.2) (2017-10-27) 543 | 544 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/v0.0.1...v0.0.2) 545 | 546 | ## [v0.0.1](https://github.com/adamsoffer/next-apollo/tree/v0.0.1) (2017-10-27) 547 | 548 | [Full Changelog](https://github.com/adamsoffer/next-apollo/compare/fe74e7a8b45e18242dd4a948569877fcecbca1c1...v0.0.1) 549 | 550 | 551 | 552 | \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)* 553 | --------------------------------------------------------------------------------