From 820e2b7f549d4122cb55fa8eebdb6f554ec03b8f Mon Sep 17 00:00:00 2001 From: Eamon Ma Date: Mon, 10 Apr 2023 01:36:05 -0400 Subject: [PATCH] Move server client to client --- pages/timetable/[id].tsx | 15 ++------------- src/apollo-client.ts | 13 +++++++++++++ 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/pages/timetable/[id].tsx b/pages/timetable/[id].tsx index b8557e4..8776649 100644 --- a/pages/timetable/[id].tsx +++ b/pages/timetable/[id].tsx @@ -1,17 +1,17 @@ -import { ApolloClient, InMemoryCache } from "@apollo/client" import type { NextPage } from "next" import { serverSideTranslations } from "next-i18next/serverSideTranslations" import React from "react" import Layout from "../../components/Layout" import TitleMeta from "../../components/TitleMeta" import { GET_TIMETABLE_BY_ID } from "../../operations/queries/getTimetableById" -import { apolloClientParams } from "../../src/apollo-client" import { PreferencesProvider } from "../../src/PreferencesContext" import Sqrl from "../../src/Sqrl" import { AppContextProvider } from "../../src/SqrlContext" import { SectionsProvider } from "../../src/useSections" import useSharePrefix from "../../src/useSharePrefix" +import { serverClient as serverSideApolloClient } from "../../src/apollo-client" + export const TimetableView: NextPage = (props: any) => { const [sharePrefix] = useSharePrefix() @@ -50,17 +50,6 @@ export async function getServerSideProps({ const id = query.id - const serverSideApolloClient = new ApolloClient({ - ssrMode: true, - ...apolloClientParams, - cache: new InMemoryCache(), - defaultOptions: { - query: { - fetchPolicy: "no-cache", - }, - }, - }) - try { const { data } = await serverSideApolloClient.query({ query: GET_TIMETABLE_BY_ID, diff --git a/src/apollo-client.ts b/src/apollo-client.ts index a77c5fd..96a8c50 100644 --- a/src/apollo-client.ts +++ b/src/apollo-client.ts @@ -20,4 +20,17 @@ export const apolloClientParams = { // https://dev.to/tmaximini/accessing-authorization-headers-in-apollo-graphql-client-3b50 const client = new ApolloClient(apolloClientParams) +const serverClient = new ApolloClient({ + ssrMode: true, + ...apolloClientParams, + cache: new InMemoryCache(), + defaultOptions: { + query: { + fetchPolicy: "no-cache", + }, + }, +}) + +export { serverClient } + export default client