import { Template } from '../types'; const baseDependencies = { deps: [ 'apollo-server-express', 'class-validator', 'dotenv', 'express', 'graphql', 'reflect-metadata', 'type-graphql', ], devDeps: [ '@types/express', '@types/graphql', '@types/node', '@typescript-eslint/eslint-plugin', '@typescript-eslint/parser', 'eslint', 'eslint-config-prettier', 'eslint-plugin-prettier', 'prettier', 'ts-node-dev', 'typescript', ], }; export const dependencies: Record = { [Template['apollo-typegraphql']]: baseDependencies, [Template['apollo-typegraphql-auth']]: { deps: [ ...baseDependencies.deps, 'bcryptjs', 'connect-redis', 'express-session', 'ioredis', 'pg', 'typeorm', ], devDeps: [ ...baseDependencies.devDeps, '@types/bcryptjs', '@types/connect-redis', '@types/cors', '@types/express-session', '@types/ioredis', ], }, [Template['next-giraphql-prisma-nextauth']]: { deps: [ '@chakra-ui/react', '@emotion/react', '@emotion/styled', '@giraphql/core', '@next-auth/prisma-adapter', '@prisma/client', 'apollo-server-micro', 'framer-motion', 'graphql', 'micro', 'next', 'next-auth', 'next-plugin-graphql', 'prisma', 'react', 'react-dom', ], devDeps: [ '@types/node', '@types/react', '@types/react-dom', '@typescript-eslint/eslint-plugin', 'eslint', 'eslint-config-next', 'eslint-config-prettier', 'eslint-plugin-prettier', 'prettier', 'typescript', ], }, };