UNPKG

graphql-compose-mongoose

Version:

Plugin for `graphql-compose` which derive a graphql types from a mongoose model.

43 lines 1.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.payloadRecordId = payloadRecordId; exports.payloadRecordIds = payloadRecordIds; const graphql_compose_1 = require("graphql-compose"); function payloadRecordId(tc, opts) { if (opts === false) return null; return { recordId: { description: 'Document ID', type: (opts === null || opts === void 0 ? void 0 : opts.type) ? opts.type : tc.hasField('_id') ? tc.getFieldTC('_id') : 'MongoID', resolve: (source, _, context) => { const doc = source === null || source === void 0 ? void 0 : source.record; if (!doc) return; return (opts === null || opts === void 0 ? void 0 : opts.fn) ? opts.fn(doc, context) : doc === null || doc === void 0 ? void 0 : doc._id; }, }, }; } function payloadRecordIds(tc, opts) { if (opts === false) return null; return { recordIds: { description: 'Documents IDs', type: (opts === null || opts === void 0 ? void 0 : opts.type) ? opts.type : tc.hasField('_id') ? (0, graphql_compose_1.toInputType)(tc.getFieldTC('_id')).NonNull.List.NonNull : '[MongoID!]!', resolve: (source, _, context) => { const docs = source === null || source === void 0 ? void 0 : source.records; if (opts === null || opts === void 0 ? void 0 : opts.fn) { return opts.fn(docs, context); } return docs ? docs.map((doc) => doc === null || doc === void 0 ? void 0 : doc._id) : []; }, }, }; } //# sourceMappingURL=payloadRecordId.js.map