summaryrefslogtreecommitdiffstats
path: root/.next/dist/lib/initApollo.js
diff options
context:
space:
mode:
Diffstat (limited to '.next/dist/lib/initApollo.js')
-rw-r--r--.next/dist/lib/initApollo.js49
1 files changed, 49 insertions, 0 deletions
diff --git a/.next/dist/lib/initApollo.js b/.next/dist/lib/initApollo.js
new file mode 100644
index 0000000..99eaf8f
--- /dev/null
+++ b/.next/dist/lib/initApollo.js
@@ -0,0 +1,49 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = initApollo;
+
+var _reactApollo = require('react-apollo');
+
+var _isomorphicFetch = require('isomorphic-fetch');
+
+var _isomorphicFetch2 = _interopRequireDefault(_isomorphicFetch);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var apolloClient = null;
+
+// Polyfill fetch() on the server (used by apollo-client)
+if (!process.browser) {
+ global.fetch = _isomorphicFetch2.default;
+}
+
+function create(initialState) {
+ return new _reactApollo.ApolloClient({
+ initialState: initialState,
+ ssrMode: !process.browser, // Disables forceFetch on the server (so queries are only run once)
+ networkInterface: (0, _reactApollo.createNetworkInterface)({
+ uri: 'https://api.graph.cool/simple/v1/cj5xz8szs28930145gct82bdj', // Server URL (must be absolute)
+ opts: { // Additional fetch() options like `credentials` or `headers`
+ credentials: 'same-origin'
+ }
+ })
+ });
+}
+
+function initApollo(initialState) {
+ // Make sure to create a new client for every server-side request so that data
+ // isn't shared between connections (which would be bad)
+ if (!process.browser) {
+ return create(initialState);
+ }
+
+ // Reuse client on the client-side
+ if (!apolloClient) {
+ apolloClient = create(initialState);
+ }
+
+ return apolloClient;
+} \ No newline at end of file