'use server' import { SESSION_COOKIE_NAME } from '@/constants' import { HttpLink } from '@apollo/client' import { ApolloClient, InMemoryCache, registerApolloClient } from '@apollo/client-integration-nextjs' // This is the server-side client export const createApolloClient = async (cookie?: string) => registerApolloClient(() => { return new ApolloClient({ link: new HttpLink({ uri: process.env.NODE_ENV == 'production' ? 'https://wreckit-backend.elliot-at-zuri.ch/graphql' : process.env.NEXT_PUBLIC_BACKEND_URI, credentials: 'include', headers: { cookie: cookie ? `${SESSION_COOKIE_NAME}=${cookie}` : '' } }), cache: new InMemoryCache() }) })