UNPKG

@graphql-mesh/cli

Version:
27 lines (26 loc) 1.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.generateOperations = generateOperations; const graphql_1 = require("graphql"); const utils_1 = require("@graphql-tools/utils"); function generateOperations(schema, options) { const sources = []; const rootTypeMap = (0, utils_1.getRootTypeMap)(schema); for (const [operationType, rootType] of rootTypeMap) { const fieldMap = rootType.getFields(); for (const fieldName in fieldMap) { const operationNode = (0, utils_1.buildOperationNodeForField)({ schema, kind: operationType, field: fieldName, depthLimit: options.selectionSetDepth, }); const defaultName = `operation_${sources.length}`; const virtualFileName = operationNode.name?.value || defaultName; const rawSDL = (0, graphql_1.print)(operationNode); const source = (0, utils_1.parseGraphQLSDL)(`${virtualFileName}.graphql`, rawSDL); sources.push(source); } } return sources; }