Set up sequelize

This commit is contained in:
Jorge Vargas 2024-08-19 00:28:48 -06:00
parent 6833439a4a
commit 87c08df02b
47 changed files with 2171 additions and 6 deletions

View file

@ -1,19 +1,27 @@
import { makeExecutableSchema } from "@graphql-tools/schema";
import { ApolloClient, InMemoryCache } from "@apollo/client";
import ApolloPackage from '@apollo/client'
const { ApolloClient, InMemoryCache } = ApolloPackage;
import { SchemaLink } from "@apollo/client/link/schema"
import { makeExecutableSchema } from "@graphql-tools/schema";
import { loadFilesSync } from '@graphql-tools/load-files'
import { mergeResolvers } from '@graphql-tools/merge'
import path from "node:path"
import { typeDefs } from "./__generated__/typeDefs.generated";
import { resolvers } from "./__generated__/resolvers.generated";
// import { resolvers } from "./__generated__/resolvers.generated";
import db from "@/sequelize";
import resolverArray from '@/graphql/resolvers'
export const resolvers = mergeResolvers(resolverArray)
const schema = makeExecutableSchema({ typeDefs, resolvers })
export type ResolverContext = { request?: Request; /*session?: Session */ }
export type ResolverContext = { request?: Request, db: any /*session?: Session */ }
export async function getApolloClient(request?: Request) {
// const session = request ? await getSession(request) : undefined
return new ApolloClient({
ssrMode: true,
link: new SchemaLink({ schema, context: { request } }),
link: new SchemaLink({ schema, context: { request, db } }),
cache: new InMemoryCache()
})
}