From 72d80aa5353a2128156dac86af0d4e7d2f5c59ea Mon Sep 17 00:00:00 2001 From: sw-yx Date: Wed, 10 Apr 2019 12:57:56 -0400 Subject: [PATCH] make async --- .../js/fauna-graphql/fauna-graphql.js | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/functions-templates/js/fauna-graphql/fauna-graphql.js b/src/functions-templates/js/fauna-graphql/fauna-graphql.js index d7766b5..9509cfa 100644 --- a/src/functions-templates/js/fauna-graphql/fauna-graphql.js +++ b/src/functions-templates/js/fauna-graphql/fauna-graphql.js @@ -6,7 +6,7 @@ const { makeRemoteExecutableSchema } = require("graphql-tools"); -exports.handler = function(event, context, cb) { +exports.handler = async function(event, context) { /** required for Fauna GraphQL auth */ if (!process.env.FAUNADB_SERVER_SECRET) { const msg = ` @@ -30,14 +30,16 @@ exports.handler = function(event, context, cb) { fetch, headers }); - introspectSchema(link).then(schema => { - const executableSchema = makeRemoteExecutableSchema({ - schema, - link - }); - const server = new ApolloServer({ - schema: executableSchema - }); + const schema = await introspectSchema(link); + const executableSchema = makeRemoteExecutableSchema({ + schema, + link + }); + const server = new ApolloServer({ + schema: executableSchema + }); + return new Promise((yay, nay) => { + const cb = (err, args) => (err ? nay(err) : yay(args)); server.createHandler()(event, context, cb); }); };