UNPKG

6.28 kBSource Map (JSON)View Raw
1{"version":3,"file":"index.cjs.js","sources":["../../../dist/handlers/mongoose/src/index.js"],"sourcesContent":["import { composeWithMongoose, composeWithMongooseDiscriminators } from 'graphql-compose-mongoose';\nimport { SchemaComposer } from 'graphql-compose';\nimport { camelCase } from 'camel-case';\nimport mongoose from 'mongoose';\nimport { loadFromModuleExportExpression } from '@graphql-mesh/utils';\nconst modelQueryOperations = ['findById', 'findByIds', 'findOne', 'findMany', 'count', 'connection', 'pagination'];\nconst modelMutationOperations = [\n 'createOne',\n 'createMany',\n 'updateById',\n 'updateOne',\n 'updateMany',\n 'removeById',\n 'removeOne',\n 'removeMany',\n];\nexport default class MongooseHandler {\n constructor({ config, pubsub }) {\n this.config = config;\n this.pubsub = pubsub;\n }\n async getMeshSource() {\n var _a;\n if (this.config.connectionString) {\n await mongoose.connect(this.config.connectionString, {\n useNewUrlParser: true,\n useUnifiedTopology: true,\n });\n this.pubsub.subscribe('destroy', () => mongoose.disconnect());\n }\n const schemaComposer = new SchemaComposer();\n await Promise.all([\n Promise.all((_a = this.config.models) === null || _a === void 0 ? void 0 : _a.map(async (modelConfig) => {\n const model = await loadFromModuleExportExpression(modelConfig.path, modelConfig.name);\n const modelTC = composeWithMongoose(model, modelConfig.options);\n await Promise.all([\n Promise.all(modelQueryOperations.map(async (queryOperation) => schemaComposer.Query.addFields({\n [camelCase(`${modelConfig.name}_${queryOperation}`)]: modelTC.getResolver(queryOperation),\n }))),\n Promise.all(modelMutationOperations.map(async (mutationOperation) => schemaComposer.Mutation.addFields({\n [camelCase(`${modelConfig.name}_${mutationOperation}`)]: modelTC.getResolver(mutationOperation),\n }))),\n ]);\n })),\n Promise.all(this.config.discriminators.map(async (discriminatorConfig) => {\n const discriminator = await loadFromModuleExportExpression(discriminatorConfig.path, discriminatorConfig.name);\n const discriminatorTC = composeWithMongooseDiscriminators(discriminator, discriminatorConfig.options);\n await Promise.all([\n Promise.all(modelQueryOperations.map(async (queryOperation) => schemaComposer.Query.addFields({\n [camelCase(`${discriminatorConfig.name}_${queryOperation}`)]: discriminatorTC.getResolver(queryOperation),\n }))),\n Promise.all(modelMutationOperations.map(async (mutationOperation) => schemaComposer.Mutation.addFields({\n [camelCase(`${discriminatorConfig.name}_${mutationOperation}`)]: discriminatorTC.getResolver(mutationOperation),\n }))),\n ]);\n })),\n ]);\n const schema = schemaComposer.buildSchema();\n return {\n schema,\n };\n }\n}\n//# sourceMappingURL=index.js.map"],"names":["SchemaComposer","loadFromModuleExportExpression","composeWithMongoose","camelCase","composeWithMongooseDiscriminators"],"mappings":";;;;;;;;;;AAKA,MAAM,oBAAoB,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;AACnH,MAAM,uBAAuB,GAAG;AAChC,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,CAAC,CAAC;AACa,MAAM,eAAe,CAAC;AACrC,IAAI,WAAW,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;AACpC,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AAC7B,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AAC7B,KAAK;AACL,IAAI,MAAM,aAAa,GAAG;AAC1B,QAAQ,IAAI,EAAE,CAAC;AACf,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE;AAC1C,YAAY,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE;AACjE,gBAAgB,eAAe,EAAE,IAAI;AACrC,gBAAgB,kBAAkB,EAAE,IAAI;AACxC,aAAa,CAAC,CAAC;AACf,YAAY,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;AAC1E,SAAS;AACT,QAAQ,MAAM,cAAc,GAAG,IAAIA,6BAAc,EAAE,CAAC;AACpD,QAAQ,MAAM,OAAO,CAAC,GAAG,CAAC;AAC1B,YAAY,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,MAAM,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,WAAW,KAAK;AACrH,gBAAgB,MAAM,KAAK,GAAG,MAAMC,oCAA8B,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;AACvG,gBAAgB,MAAM,OAAO,GAAGC,0CAAmB,CAAC,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;AAChF,gBAAgB,MAAM,OAAO,CAAC,GAAG,CAAC;AAClC,oBAAoB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,cAAc,KAAK,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC;AAClH,wBAAwB,CAACC,mBAAS,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC;AACjH,qBAAqB,CAAC,CAAC,CAAC;AACxB,oBAAoB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,iBAAiB,KAAK,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;AAC3H,wBAAwB,CAACA,mBAAS,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC;AACvH,qBAAqB,CAAC,CAAC,CAAC;AACxB,iBAAiB,CAAC,CAAC;AACnB,aAAa,CAAC,CAAC;AACf,YAAY,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,mBAAmB,KAAK;AACtF,gBAAgB,MAAM,aAAa,GAAG,MAAMF,oCAA8B,CAAC,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAC/H,gBAAgB,MAAM,eAAe,GAAGG,wDAAiC,CAAC,aAAa,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtH,gBAAgB,MAAM,OAAO,CAAC,GAAG,CAAC;AAClC,oBAAoB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,cAAc,KAAK,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC;AAClH,wBAAwB,CAACD,mBAAS,CAAC,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,WAAW,CAAC,cAAc,CAAC;AACjI,qBAAqB,CAAC,CAAC,CAAC;AACxB,oBAAoB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,iBAAiB,KAAK,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;AAC3H,wBAAwB,CAACA,mBAAS,CAAC,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,WAAW,CAAC,iBAAiB,CAAC;AACvI,qBAAqB,CAAC,CAAC,CAAC;AACxB,iBAAiB,CAAC,CAAC;AACnB,aAAa,CAAC,CAAC;AACf,SAAS,CAAC,CAAC;AACX,QAAQ,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;AACpD,QAAQ,OAAO;AACf,YAAY,MAAM;AAClB,SAAS,CAAC;AACV,KAAK;AACL;;;;"}
\No newline at end of file