UNPKG

@graphql-tools/optimize

Version:

A set of utils for faster development of GraphQL tools

36 lines (35 loc) 1.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.removeDescriptions = void 0; const graphql_1 = require("graphql"); /** * This optimizer removes "description" fields from schema and executable AST nodes. * @param input */ const removeDescriptions = input => { function transformNode(node) { if (!node.description) { return node; } const { description, ...rest } = node; return rest; } return (0, graphql_1.visit)(input, { ScalarTypeDefinition: transformNode, ObjectTypeDefinition: transformNode, InterfaceTypeDefinition: transformNode, UnionTypeDefinition: transformNode, EnumTypeDefinition: transformNode, EnumValueDefinition: transformNode, InputObjectTypeDefinition: transformNode, InputValueDefinition: transformNode, FieldDefinition: transformNode, DirectiveDefinition: transformNode, OperationDefinition: transformNode, VariableDefinition: transformNode, FragmentDefinition: transformNode, SchemaDefinition: transformNode, SchemaExtension: transformNode, }); }; exports.removeDescriptions = removeDescriptions;