type-graphql-dataloader
Version:
A utility to use DataLoader with TypeGraphQL without fuss
22 lines (21 loc) • 788 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ApolloServerLoaderPlugin = void 0;
const typedi_1 = require("typedi");
const uuid_1 = require("uuid");
const ApolloServerLoaderPlugin = (option) => ({
requestDidStart: async () => ({
async didResolveSource(requestContext) {
Object.assign(requestContext.context, {
_tgdContext: {
requestId: (0, uuid_1.v4)(),
typeormGetConnection: option?.typeormGetConnection,
},
});
},
async willSendResponse(requestContext) {
typedi_1.Container.reset(requestContext.context._tgdContext.requestId);
},
}),
});
exports.ApolloServerLoaderPlugin = ApolloServerLoaderPlugin;