Applying Wrappers
The most common way of using Resolver Wrappers is with the embed
Resolver Map Middleware function which can return a
Middleware that applies an array of Resolver Wrappers, in order.
In this example embed
produces a Middleware that applies the logWrapper
. Using the higlight
option on embed
,
Resolvers are selectively applied based on which parts of the schema are "highlighted". Here, all Field Resolvers
(denoted bby "*"
) on the "Query"
type are applied with the logWrapper
.
import { logWrapper } from "graphql-mocks/wrapper";
const loggerMiddleware = embed({
wrappers: [logWrapper]
// Optionally, a highlight argument can be passed in
// to control which Resolvers the Wrappers are applied to
highlight: (h) => h.include(field(['Query', '*'])),
});
For more details on embed
, and layer
(which also has a wrappers
option), check out Managing Resolvers with Middlewares.