GQLExpressMiddleware

GQLExpressMiddleware

new GQLExpressMiddleware()

A handler that exposes an express middleware function that mounts a
GraphQL I/O endpoint. Typical usage follows:

const app = express();
app.use(/.../, new GQLExpressMiddleware([...classes]).middleware);
Source:
GQLExpressMiddleware.js, line 50

Methods

⌾⠀customMiddleware([graphqlHttpOptions={graphiql: true}], patchFinalOpts) → {function}

If your needs require you to specify different values to graphqlHTTP,
part of the express-graphql package, you can use the customMiddleware
function to do so.

The first parameter is an object that should contain valid graphqlHTTP
options. See https://github.com/graphql/express-graphql#options for more
details. Validation is NOT performed.

The second parameter is a function that will be called after any options
have been applied from the first parameter and the rest of the middleware
has been performed. This, if not modified, will be the final options
passed into graphqlHTTP. In your callback, it is expected that the
supplied object is to be modified and THEN RETURNED. Whatever is returned
will be used or passed on. If nothing is returned, the options supplied
to the function will be used instead.

Parameters:
Name Type Attributes Default Description
[graphqlHttpOptions={graphiql: true}] Object optional
{graphiql: true}

standard set of
express-graphql options. See above.

patchFinalOpts function

see above

Returns:
( function )

a middleware function compatible with Express

Source:
GQLExpressMiddleware.js, line 269

⌾⠀makeRoot(req, res, gql) → {Promise.<Object>}

An asynchronous function used to parse the supplied classes for each
ones resolvers and mutators. These are all combined into a single root
object passed to express-graphql.

Parameters:
Name Type Description
req Request

an Express 4.x request object

res Response

an Express 4.x response object

gql Object

an object containing information about the graphql
request. It has the format of { query, variables, operationName, raw }
as described here: https://github.com/graphql/express-graphql

Returns:
( Promise.<Object> )

a Promise resolving to an Object containing all
the functions described in both Query and Mutation types.

Source:
GQLExpressMiddleware.js, line 82

⌾⠀makeSchema() → {string}

A function that combines the IDL schemas of all the supplied classes and
returns that value to the middleware getter.

Returns:
( string )

a dynamically generated GraphQL IDL schema string

Source:
GQLExpressMiddleware.js, line 197

⎆⠀constructor(handlers)

For now, takes an Array of classes extending from GQLBase. These are
parsed and a combined schema of all their individual schemas is generated
via the use of ASTs. This is passed off to express-graphql.

Parameters:
Name Type Description
handlers Array.<GQLBase>

an array of GQLBase extended classes

Source:
GQLExpressMiddleware.js, line 65

⬇︎⠀middleware() → {function}

Using the express-graphql module, it returns an Express 4.x middleware
function.

Returns:
( function )

a function that expects request, response and next
parameters as all Express middleware functions.

Source:
GQLExpressMiddleware.js, line 253

⬇︎⠀middlewareWithoutGraphiQL() → {function}

Using the express-graphql module, it returns an Express 4.x middleware
function. This version however, has graphiql disabled. Otherwise it is
identical to the middleware property

Returns:
( function )

a function that expects request, response and next
parameters as all Express middleware functions.

Source:
GQLExpressMiddleware.js, line 348