Skip to content

Commit 1e89062

Browse files
author
Salah Eddine Lalami
authored
Feature/improve graphql server setup (#5)
* 🚀 graphql server setup improved * 📦 update fast-graphql
1 parent c090f00 commit 1e89062

File tree

7 files changed

+21
-27
lines changed

7 files changed

+21
-27
lines changed

.prettierrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"trailingComma": "es5",
2+
"trailingComma": "none",
33
"tabWidth": 2,
44
"semi": true,
55
"singleQuote": true

graphql/resolvers/index.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,8 @@ import propriety from './propriety';
44
import user from './user';
55
import review from './review';
66

7-
const resolversList: resolverType[] = [propriety, user, review];
7+
const resolvers: resolverType[] = [propriety, user, review];
88

9-
const cominedResolvers = combineResolvers(resolversList);
9+
const cominedResolvers = combineResolvers({ resolvers });
1010

1111
export default cominedResolvers;
12-

graphql/scripts/generateSchema.js

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,7 @@
1-
const fs = require('fs');
2-
const { mergeSchemas } = require('fast-graphql');
31

4-
const mergedSchemas = mergeSchemas('graphql/typeDefs/*.gql');
2+
const { generateSchema } = require('fast-graphql');
53

6-
const schema = mergedSchemas.join(' ');
4+
const inputPath = './graphql/typeDefs/*.gql';
5+
const outPath = './graphql/schema.graphql';
76

8-
fs.writeFile('./graphql/schema.graphql', schema, (err) => {
9-
if (err) {
10-
console.error(err);
11-
return;
12-
}
13-
});
14-
15-
console.log(' ✔ Schema Generated : schema.graphql');
7+
generateSchema({ inputPath, outPath });

graphql/server/index.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,20 @@ import resolvers from '@/graphql/resolvers';
99
const apolloServer = new ApolloServer({
1010
typeDefs,
1111
resolvers,
12-
context: createContext,
12+
context: createContext
1313
});
1414
const startServer = apolloServer.start();
1515

1616
export default async function graphqlServer({
1717
req,
1818
res,
19-
serverConfig = {},
19+
serverConfig = {}
2020
}: {
2121
req: NextApiRequest;
2222
res: NextApiResponse;
2323
serverConfig?: any;
24-
}): Promise<false | undefined> {
24+
25+
}) {
2526
res.setHeader('Access-Control-Allow-Credentials', 'true');
2627
res.setHeader('Access-Control-Allow-Origin', '*');
2728
res.setHeader('Access-Control-Allow-Headers', '*');
@@ -32,6 +33,6 @@ export default async function graphqlServer({
3233

3334
await startServer;
3435
await apolloServer.createHandler({
35-
path: '/api/graphql',
36+
path: '/api/graphql'
3637
})(req, res);
3738
}

graphql/typeDefs/index.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { mergeSchemas } from 'fast-graphql';
22

3-
const mergedSchemas = mergeSchemas('graphql/typeDefs/*.gql');
3+
const pathfiles = './graphql/typeDefs/*.gql';
44

5-
export default mergedSchemas;
5+
const mergedSchemas = mergeSchemas({ pathfiles });
66

7+
export default mergedSchemas;

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
"@graphql-codegen/cli": "^2.3.1",
2020
"@graphql-codegen/typescript": "^2.4.2",
2121
"apollo-server-micro": "^3.5.0",
22-
"fast-graphql": "^1.0.3",
22+
"fast-graphql": "^1.1.0",
2323
"graphql": "^16.1.0",
2424
"micro": "^9.3.4",
2525
"next": "12.0.4",

yarn.lock

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2996,10 +2996,11 @@ fast-glob@^3.2.9:
29962996
merge2 "^1.3.0"
29972997
micromatch "^4.0.4"
29982998

2999-
fast-graphql@^1.0.3:
3000-
version "1.0.3"
3001-
resolved "https://registry.yarnpkg.com/fast-graphql/-/fast-graphql-1.0.3.tgz#c49543d8bd40a7295628d07321ee6a0b14a87bd5"
3002-
integrity sha512-hcSEW1Awszq7EFpGzVvvDCVLOU4vQN2x6p/p2DVCEBVfqZhP27MEczEJXRz5S7/qr+gW8V7TqYSo2lmN4YKqTg==
2999+
fast-graphql@^1.1.0:
3000+
version "1.1.0"
3001+
resolved "https://registry.yarnpkg.com/fast-graphql/-/fast-graphql-1.1.0.tgz#72a3977ab543a43e0df209b3bfcaeb8229334b7e"
3002+
integrity sha512-gS6WLQjHsIhdwcK2bAVocRav9LfWlMGsgcQ0cMmuGsG4KbAFQDgQZbvKpIyWEVn3kEtTTHZzgY0uh4biUZyr9Q==
3003+
30033004
dependencies:
30043005
fast-glob "^3.2.7"
30053006

0 commit comments

Comments
 (0)